COMPILER=gcc
LIBS = -lm -L./  -lforms -L/usr/X11R6/lib -lX11 -lnsl 
INCLUDE=-I/usr/X11R6/include/X11 -I/usr/include -I/usr/X11R6/include -I/usr/local/X11/include/ -I/usr/X/include/
FLAGS = -g -O2
DESTDIR =


default:
	@clear
	@echo ""
	@echo "  choose your language, type"
	@echo "    make english"
	@echo "  or"
	@echo "    make deutsch"
	@echo "  or"
	@echo "    make all"
	@echo "  for both."
	@echo ""
	@echo "Installation:"
	@echo "  make install installs both versions"
	@echo "  to /usr/local/bin and a script called"
	@echo "  elem which automagically decides which"
	@echo "  language to use."
	@echo ""
	@echo "  make install-de and install-en do what you expect them to do."
	@echo ""
	@echo "  make deb creates a debian package in the"
	@echo "  parent directory of elem if all necessary"
	@echo "  tools are installed"

all: elem-de elem-en
	@echo "creating german and english Versions of elem"

deutsch : elem-de
	@echo "erzeuge deutsche Version von elem"

elem-de: elem_main_de.o elem_cb_de.o elem_de.o deutsch.h
	${COMPILER} ${FLAGS} -o elem-de elem_main_de.o elem_cb_de.o elem_de.o ${LIBS} -DDEUTSCH



english : elem-en
	@echo "creating english version of elem"

elem-en: elem_main_en.o elem_cb_en.o elem_en.o english.h
	${COMPILER} ${FLAGS} -o elem-en elem_main_en.o elem_cb_en.o elem_en.o ${LIBS} -DENGLISH

static-de : elem_main_de.o elem_cb_de.o elem_de.o
	${COMPILER} ${FLAGS} -static -o elem-static-de elem_main_de.o elem_cb_de.o elem_de.o  ${LIBS} -DDEUTSCH

static-en : elem_main_en.o elem_cb_en.o elem_en.o
	${COMPILER} ${FLAGS} -static -o elem-static-en elem_main_en.o elem_cb_en.o elem_en.o  ${LIBS} -DENGLISH




elem_main_de.o : elem_main.c elem.h deutsch.h
	${COMPILER} ${FLAGS} -DDEUTSCH -o elem_main_de.o -c elem_main.c ${INCLUDE}

elem_main_en.o : elem_main.c elem.h english.h
	${COMPILER} ${FLAGS} -DENGLISH -o elem_main_en.o -c elem_main.c ${INCLUDE}


elem_cb_de.o : elem_cb.c elem.h deutsch.h
	${COMPILER} ${FLAGS} -DDEUTSCH -o elem_cb_de.o -c elem_cb.c ${INCLUDE}
elem_cb_en.o : elem_cb.c elem.h english.h
	${COMPILER} ${FLAGS} -DENGLISH -o elem_cb_en.o -c elem_cb.c ${INCLUDE}


elem_de.o : elem.c elem.h
	${COMPILER} ${FLAGS} -DDEUTSCH  -o elem_de.o -c elem.c ${INCLUDE}
elem_en.o : elem.c elem.h
	${COMPILER} ${FLAGS} -DENGLISH  -o elem_en.o -c elem.c ${INCLUDE}


install-de: deutsch
	cp -f ./elem-de /usr/local/bin/
	ln -s -f /usr/local/bin/elem-de /usr/local/bin/elem

install-en: english
	cp -f ./elem-en /usr/local/bin/
	ln -s -f /usr/local/bin/elem-en /usr/local/bin/elem

install:
	cp -f ./elem-en $(DESTDIR)/usr/local/bin/
	cp -f ./elem-de $(DESTDIR)/usr/local/bin/
	cp -f ./elem    $(DESTDIR)/usr/local/bin/

uninstall:
	rm -f /usr/local/bin/elem-de
	rm -f /usr/local/bin/elem-en
	rm -f /usr/local/bin/elem



tar: static-en static-de elem-en elem-de
	./buildpackages.sh

deb: all
	make -f debian/rules binary

clean:
	rm -f elem-de elem-en *.o core *~ *.bak *static* *.tgz
	rm -rf debian/tmp/*


