# completely and totally crappy makefile... better one to come.
#
# Well.. it's somewhat better now, you can make these targets now:
#
# modules         -- Build bttv.o & videodev.o in here
# modules_install -- install them in $(MODULEPATH)/misc
# kinstall        -- install the *.[ch] files into $(KSRC)

INCLUDES= -I/usr/src/linux/include
CFLAGS=-I. -I/usr/src/linux/include -O3 -Wall -pipe -I/home/nlaredo/include
#LDFLAGS=-L/usr/X11R6/lib -lm /usr/X11R6/lib/libXxf86dga.a -lgnomeui -lgnome -lglib -lgdk -lgtk -lX11 -lXext -lSM
LDFLAGS=-L/usr/X11R6/lib -lm -lX11 -lXext -lXxf86dga -lXxf86vm -lXv -L/home/nlaredo/lib
INSTALL=install

KSRC=/usr/src/linux
KINCLUDES=-I. -I$(KSRC)/include
KFLAGS=-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe \
	-fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2 \
	-malign-functions=2
KCFLAGS=-D__KERNEL__ $(KINCLUDES) $(KFLAGS) -DCPU=586 -DMODULE
MODULEPATH=/lib/modules/`uname -r`

PROGS=tvset #static-tvset

all: 	$(PROGS) xaudio xwm xvbidebug

xwm: xwm.c
	gcc -O2 -g -o xwm xwm.c -L/usr/X11R6/lib -lX11

modules: videodev.o bttv.o

videodev.o: videodev.c linux/videodev.h
	gcc -c $(KCFLAGS) -DEXPORT_SYMTAB -o videodev.o videodev.c

bttv.o: bttv.c bttv.h bt848.h linux/videodev.h
	gcc -c $(KCFLAGS) -o bttv.o bttv.c

kinstall:
	$(INSTALL) -m 644 bttv.c bttv.h bt848.h videodev.c $(KSRC)/drivers/char
	$(INSTALL) -m 644 linux/videodev.h $(KSRC)/include/linux

modules_install:
	$(INSTALL) -m 644 -o root -g root bttv.o videodev.o $(MODULEPATH)/misc
	/sbin/depmod -ae

iotest: iotest.o
	gcc -o iotest iotest.o $(LDFLAGS)

tvset: tvset.o
	gcc -o tvset tvset.o $(LDFLAGS)

tvset1: tvset1.o
	gcc -o tvset1 tvset1.o $(LDFLAGS)

xaudio: xaudio.o
	gcc -o xaudio xaudio.o $(LDFLAGS) -lrfftw -lfftw -lm

vbidebug: vbidebug.o
	gcc -o vbidebug vbidebug.o

static-tvset: tvset.o
	 gcc -static -o tvset-static tvset.o $(LDFLAGS)

install:	$(PROGS)
	$(INSTALL) -m 755 -o root -g root $< /usr/local/bin

clean:	
	rm -f *~ *.o $(PROGS)
