


# installation flags
# requires GNU make


INSTALLDIR=/usr/local
#INSTALLDIR=/nb/rupert

JAFMDIR=$(INSTALLDIR)/lib/jafm
ZICDIR=$(JAFMDIR)/zic
APPLDIR=$(JAFMDIR)/appl


.SUFFIXES: .cc .o .cc.o


.cc.o:
	$(Cxx) -c $(CxxFLAGS) $(OPT) $(DEFINES) $(INCFLAGS) $<

.c.o:
	$(CC) -c $(CFLAGS) $(OPT) $(INCFLAGS) $<

# requires GNU make
M%.cc:	%.hh
	$(MOC) $< -o $@

CC  = gcc
MOC = ${QTDIR}/bin/moc
Cxx =g++ 

INCFLAGS=-I${QTDIR}/include
CxxFLAGS= -Wall #-pipe
CFLAGS= -Wall #-pipe
OPT=-g
DEFINES=
# FILES

HEADERS= iconview.hh menus.hh icon.hh dirbar.hh icondesk.hh deskicon.hh

MSOURCES=  Miconview.cc Mmenus.cc Micon.cc Mdirbar.cc Micondesk.cc Msfm.cc \
		Mdeskicon.cc

SOURCES= main.cc iconview.cc menus.cc icon.cc dirbar.cc \
	zicon.tab.cc lex.yy.c icondesk.cc deskicon.cc

OBJS= main.o iconview.o menus.o icon.o dirbar.o \
	zicon.tab.o lex.yy.o icondesk.o deskicon.o

MOBJS=  Miconview.o Mmenus.o Micon.o Mdirbar.o Micondesk.o Msfm.o Mdeskicon.o

LIBDIR=-L${QTDIR}/lib -L/usr/X11/lib

jafm	: $(OBJS) $(MOBJS)
	$(Cxx) $(CxxLFAGS) -o jafm $(OBJS) $(MOBJS) $(LIBDIR) -lqt -lX11 -lXext

# must do this properly next time...
install: jafm
	mkdir -p -m 755 $(JAFMDIR)
	mkdir -p -m 755 $(INSTALLDIR)/bin
	mkdir -p -m 755 $(APPLDIR)
	mkdir -p -m 755 $(ZICDIR) 
	cp system.jafmrules $(JAFMDIR)/system.jafmrules
	chmod 755 $(JAFMDIR)/system.jafmrules
	cp jafm $(INSTALLDIR)/bin/jafm
	chmod 755 $(INSTALLDIR)/bin/jafm
	cp zic/*.zic $(ZICDIR)
	chmod 644 $(ZICDIR)/*
	cp  appl/* $(APPLDIR)
	chmod 644 $(APPLDIR)/*
	mkdir -p -m 755 $(INSTALLDIR)/man/man8
	cp jafm.8 $(INSTALLDIR)/man/man8
	chmod 644 $(INSTALLDIR)/man/man8/jafm.8

dep: $(MSOURCES)
	makedepend -I. -I$(QTDIR)/include $(SOURCES) $(MSOURCES) >/dev/null 2>&1

clean:	
	rm -f *.o *~ jafm core  a.out M*.cc zicon.tab.* lex*

icon.o: icon.cc
	$(Cxx) -c $(CxxFLAGS) $(OPT) $(DEFINES)  -DJAFMDIR=\"$(JAFMDIR)\" -DZICDIR=\"$(ZICDIR)\" $(INCFLAGS) icon.cc

icondesk.o: icondesk.cc
	$(Cxx) -c $(CxxFLAGS) $(OPT) $(DEFINES)  -DAPPLDIR=\"$(APPLDIR)\" $(INCFLAGS) icondesk.cc

zicon.tab.cc:	zicon.y 
	bison -d zicon.y -o zicon.tab.cc


lex.yy.c: zicon.lex zicon.tab.cc
	flex -s zicon.lex

# DO NOT DELETE
