VERSION=0.9
TARGET=arm-linux
CC=/opt/Embedix/tools/bin/${TARGET}-gcc -O6 -Wall
LD=/opt/Embedix/tools/bin/${TARGET}-ld
STRIP=/opt/Embedix/tools/bin/${TARGET}-strip
RM=rm
ZAURUS_ZLIB_INC=/home/aric/libs/zlib/include
ZAURUS_ZLIB_LIBS=/home/aric/libs/zlib/lib
ZAURUS_JPEG_INC=/home/aric/libs/jpeg/include
ZAURUS_JPEG_LIBS=/home/aric/libs/jpeg/lib
VNCSERVER_DIR=../libvncserver-0.4

INCLUDES=-I${ZAURUS_ZLIB_INC} -I${ZAURUS_JPEG_INC} -I${VNCSERVER_DIR}
LIBS=-L${ZAURUS_ZLIB_LIBS} -L${ZAURUS_JPEG_LIBS}

all:		zaurus_fbvncserver zaurus_tssimd zaurus_kbdsim.o	\
		ipaq_fbvncserver ipaq_tssimd ipaq_kbdsim.o

version.h:
	@if (echo $$PWD | grep ${VERSION}$ >& /dev/null) ; then \
	    echo \"${VERSION}\" > version.h; 			\
	else							\
	    echo "VERSION does not match directory name!";	\
	    exit 1;						\
	fi;

zaurus_fbvncserver:		zaurus_fbvncserver.o			\
				zaurus_keysym2scancode.o		\
				zaurus_leds.o				\
				loadjpeg.o				\
				${VNCSERVER_DIR}/libvncserver.a
		${CC} ${LIBS} -lz -ljpeg -o $@ $^
		${STRIP} $@

ipaq_fbvncserver:		ipaq_fbvncserver.o			\
				ipaq_keysym2scancode.o			\
				ipaq_leds.o				\
				loadjpeg.o				\
				${VNCSERVER_DIR}/libvncserver.a
		${CC} ${LIBS} -lz -ljpeg -o $@ $^
		${STRIP} $@

zaurus_fbvncserver.o:		fbvncserver.c				\
				keysym2scancode.h			\
				loadjpeg.h				\
				panelzones.h				\
				version.h				\
				leds.h
		${CC} -c ${INCLUDES} -o $@ $<

ipaq_fbvncserver.o:		fbvncserver.c				\
				keysym2scancode.h			\
				loadjpeg.h				\
				panelzones.h				\
				version.h				\
				leds.h
		${CC} -DIPAQ -c ${INCLUDES} -o $@ $<

zaurus_keysym2scancode.o:		keysym2scancode.c		\
				keysym2scancode.h
		${CC} -c ${INCLUDES} -o $@ $<

ipaq_keysym2scancode.o:		keysym2scancode.c			\
				keysym2scancode.h
		${CC} -DIPAQ -c ${INCLUDES} -o $@ $<

zaurus_leds.o:			leds.c					\
				leds.h
		${CC} -c ${INCLUDES} -o $@ $<

ipaq_leds.o:			leds.c					\
				leds.h
		${CC} -DIPAQ -c ${INCLUDES} -o $@ $<

zaurus_tssimd:			tssimd.c
		${CC} -Wall -o $@ $<
		${STRIP} $@

ipaq_tssimd:			tssimd.c
		${CC} -DIPAQ -Wall -o $@ $<
		${STRIP} $@

zaurus_kbdsim.o:		kbdsim.c
		${CC}  -Wall -D__KERNEL__ -c -o $@ $<

ipaq_kbdsim.o:			kbdsim.c
		${CC} -DIPAQ -Wall -D__KERNEL__ -c -o $@ $<

loadjpeg.o:	loadjpeg.c						\
		loadjpeg.h
		${CC} -c ${CCOPT} ${INCLUDES} -o $@ $<

clean:
		${RM} -f *.o *_fbvncserver *_tssimd *_kbdsim.o version.h
