# dkopp makefile 

PROGRAM = dkopp
VERSION = 5.9.1
SOURCE = $(PROGRAM)-$(VERSION).cc

# defaults for parameters that may be pre-defined
CXXFLAGS ?= -O3 -g -Wall
LDFLAGS ?= -O3 -g -Wall -rdynamic
PREFIX ?= /usr

# target install directories
BINDIR = $(PREFIX)/bin
SHAREDIR = $(PREFIX)/share/$(PROGRAM)
DATADIR = $(SHAREDIR)/data
ICONDIR = $(SHAREDIR)/icons
DOCDIR = $(PREFIX)/share/doc/$(PROGRAM)
MANDIR = $(PREFIX)/share/man/man1
MENUFILE = $(PREFIX)/share/applications/kornelix-$(PROGRAM).desktop

CFLAGS = $(CXXFLAGS) -c `pkg-config --cflags gtk+-2.0`
LIBS = `pkg-config --libs gtk+-2.0 gthread-2.0`

$(PROGRAM): $(PROGRAM).o zfuncs.o
	$(CXX) $(LDFLAGS) $(PROGRAM).o zfuncs.o $(LIBS) -o $(PROGRAM)

$(PROGRAM).o: $(SOURCE)
	$(CXX) $(CFLAGS) -o $(PROGRAM).o $(SOURCE)

zfuncs.o: zfuncs.cc
	$(CXX) $(CFLAGS) zfuncs.cc -D PREFIX=\"$(PREFIX)\"

install: $(PROGRAM)
	mkdir -p  $(DESTDIR)$(BINDIR)
	mkdir -p  $(DESTDIR)$(DATADIR)
	mkdir -p  $(DESTDIR)$(ICONDIR)
	mkdir -p  $(DESTDIR)$(DOCDIR)
	mkdir -p  $(DESTDIR)$(MANDIR)
	mkdir -p  $(DESTDIR)$(PREFIX)/share/applications
	cp -f  $(PROGRAM) $(DESTDIR)$(BINDIR)
	cp -f  data/* $(DESTDIR)$(DATADIR)
	cp -f  icons/* $(DESTDIR)$(ICONDIR)
	cp -f -R  doc/* $(DESTDIR)$(DOCDIR)
	# man page
	cp -f doc/$(PROGRAM).man $(PROGRAM).1
	gzip -f -9 $(PROGRAM).1
	cp $(PROGRAM).1.gz $(DESTDIR)$(MANDIR)
	rm -f $(PROGRAM).1.gz
	# menu (desktop) file (absolute paths to get around rpmbuild problem)
	cp -f data/desktop $(DESTDIR)$(MENUFILE)
	echo Exec=/usr/bin/$(PROGRAM) >> $(DESTDIR)$(MENUFILE)
	echo Icon=/usr/share/$(PROGRAM)/icons/$(PROGRAM).png >> $(DESTDIR)$(MENUFILE)
	xdg-desktop-menu install $(DESTDIR)$(MENUFILE)

uninstall:
	rm -f  $(DESTDIR)$(BINDIR)/$(PROGRAM)
	rm -R -f  $(DESTDIR)$(SHAREDIR)
	rm -R -f  $(DESTDIR)$(DOCDIR)
	rm -f  $(DESTDIR)$(MANDIR)/$(PROGRAM).1.gz
	xdg-desktop-menu uninstall $(DESTDIR)$(MENUFILE)
	rm -f  $(DESTDIR)$(MENUFILE)

clean: 
	rm -f  $(PROGRAM)
	rm -f  *.o


