CFLAGS = -c -g -W -Wall -pedantic `gtk-config --cflags` 
LIBS = -lpanel -lncurses `gtk-config --libs`
TIMESTAMP = `/bin/date +'%y-%b-%d-%H-%M'`
BACKUPDIR = "/usr/local/backup/linux-crypt"
OBJS = obj/main.o obj/initialize.o obj/routines.o obj/MyParse.o obj/UIcurses.o obj/Parse.tab.o obj/lex.yy.o

all: ${OBJS} Lexer.l
	${CC} -o linux-crypt ${LIBS} ${OBJS}

obj/%.o : %.c Parse.tab.h
	$(CC) $(CFLAGS) $< -o $@

Parse.tab.c Parse.tab.h: Parse.y
	bison -d Parse.y

lex.yy.c: Lexer.l
	flex Lexer.l

clean:
	rm -rf core linux-crypt obj/*.o Parse.tab.c Parse.tab.h lex.yy.c

backup:
	rm -rf *.o core a.out linux-crypt
	cd ..;tar zcv ./linux-crypt >"/usr/local/backup/linux-crypt/$(TIMESTAMP).tgz"
	echo "Saved to ${BACKUPDIR}/${TIMESTAMP}."
