# Makefile for tkscanfax

# Change the following to the destination directories for
# binaries and libralies. Probably /usr/bin and /usr/lib on Linux,
# /usr/local/{bin,lib} on other systems.

SHELL = /bin/sh
INSTALL = /usr/bin/install

srcdir = .
prefix = /usr/local
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
datadir = $(prefix)/share
libdir = $(exec_prefix)/lib
docdir = $(datadir)/doc
DESTDIR =
#OUTDIR = $(HOME)/rpm/SOURCES
OUTDIR = .
[ "$(OUTDIR)" = "" ] && OUTDIR=.
[ -d $(OUTDIR) ] || OUTDIR = $(HOME)
icondir = $(datadir)/pixmaps
applnkdir = /etc/X11/applnk
kdelnkdir =$(datadir)/applnk
APPDIR = $(applnkdir)/Applications

name = tkscanfax
subname = 1
pkgdir = $(libdir)/$(name)$(subname)
#distversion = 1.1.6a_$$(date -I | tr -d '-')
distversion = 1.1.8
distdate = $$(LANG=C LC_ALL=C date '+%d %b %Y')

all:	
	cat tkfax | sed -e 's,^set fax(libdir).*$$,set fax(libdir) $(pkgdir),' > tkfax~
	[ -s tkfax~ ] && mv -f tkfax~ tkfax
	cat tkscan | sed -e 's,^set c(libdir).*$$,set c(libdir) $(pkgdir),' > tkscan~
	[ -s tkscan~ ] && mv -f tkscan~ tkscan
	chmod +x tkfax tkscan

	cat doc/ja/Users_Guide.html | sed -e 's,^TkFax .* - A Tcl/Tk GUI,TkFax $(distversion) - A Tcl/Tk GUI,' \
			    -e 's,/[^ ]*/$(name)$(subname)/,$(pkgdir)/,g' \
			    > doc/ja/tmp~
	 [ -s doc/ja/tmp~ ] && mv -f doc/ja/tmp~ doc/ja/Users_Guide.html
	cat doc/C/Users_Guide.html | sed -e 's,^TkFax .* - A Tcl/Tk GUI,TkFax $(distversion) - A Tcl/Tk GUI,' \
			    -e 's,/[^ ]*/$(name)$(subname)/,$(pkgdir)/,g' \
			    > doc/C/tmp~
	 [ -s doc/C/tmp~ ] && mv -f doc/C/tmp~ doc/C/Users_Guide.html

clean:
	cat tkfax | sed -e 's,^set fax(libdir).*$$,set fax(libdir) /usr/local/lib/$(name)$(subname),' > tkfax~
	[ -s tkfax~ ] && mv -f tkfax~ tkfax
	cat tkscan | sed -e 's,^set c(libdir).*$$,set c(libdir) /usr/local/lib/$(name)$(subname),' > tkscan~
	[ -s tkscan~ ] && mv -f tkscan~ tkscan
	chmod +x tkfax tkscan	
	$(RM) $(srcdir)/*~ $(srcdir)/*.sw?
	$(RM) $(srcdir)/*/*~ $(srcdir)/*/*.sw?
	$(RM) $(srcdir)/*/*/*~ $(srcdir)/*/*/*.sw?

install: install-prog install-icon install-doc

uninstall: uninstall-prog uninstall-icon uninstall-doc

install-prog:
	$(INSTALL) -d  $(DESTDIR)$(pkgdir)
	$(INSTALL) -d  $(DESTDIR)$(pkgdir)/doc
	$(INSTALL) -d  $(DESTDIR)$(bindir)
	$(INSTALL) -m 755 $(srcdir)/tkfax $(srcdir)/tkscan $(DESTDIR)$(pkgdir)
	$(INSTALL) $(srcdir)/*.tcl $(DESTDIR)$(pkgdir)
	cp -rf $(srcdir)/scan-drivers $(srcdir)/tex $(srcdir)/images $(DESTDIR)$(pkgdir)
	cp -rf $(srcdir)/doc/{images,C,??,??_*} $(DESTDIR)$(pkgdir)/doc
	ln -sf $(pkgdir)/tkfax $(DESTDIR)$(bindir)/tkfax$(subname)
	ln -sf $(pkgdir)/tkscan $(DESTDIR)$(bindir)/tkscan$(subname)
uninstall-prog:
	$(RM) $(DESTDIR)$(bindir)/tkfax$(subname)
	$(RM) $(DESTDIR)$(bindir)/tkscan$(subname)
	$(RM) -R $(DESTDIR)$(pkgdir)

install-icon:
	$(INSTALL) -d  $(DESTDIR)$(icondir)
	$(INSTALL) -d  $(DESTDIR)$(APPDIR)
	$(INSTALL) $(srcdir)/doc/images/tkfax-s.xpm  $(DESTDIR)$(icondir)
	$(INSTALL) tkfax.desktop  $(DESTDIR)$(APPDIR)/tkfax$(subname).desktop
	$(INSTALL) tkscan.desktop  $(DESTDIR)$(APPDIR)/tkscan$(subname).desktop
	if [ -d $(kdelnkdir) ] ; then \
	  $(INSTALL) -D tkfax.desktop  $(DESTDIR)$(kdelnkdir)/Utilities/tkfax$(subname).desktop ; \
	  $(INSTALL) -D tkscan.desktop  $(DESTDIR)$(kdelnkdir)/Graphics/tkscan$(subname).desktop ;\
	fi

uninstall-icon:
	$(RM) $(DESTDIR)$(APPDIR)/tkfax$(subname).destop
	$(RM) $(DESTDIR)$(APPDIR)/tkscan$(subname).destop

install-doc:
	$(INSTALL) -d $(DESTDIR)$(docdir)/$(name)$(subname)
	$(INSTALL)  $(srcdir)/doc/* $(DESTDIR)$(docdir)/$(name)$(subname); true
uninstall-doc:
	$(RM) -R $(DESTDIR)$(docdir)/$(name)$(subname)

dist: about spec clean zip
about:
	cat fax-about.tcl | sed -e "s/^set fax(ex_version).*$$/set fax(ex_version) $(distversion)/" -e "s/^set fax(ex_date).*$$/set fax(ex_date) { $(distdate) }/" > fax-about.tcl~
	[ -s fax-about.tcl~ ] && mv -f fax-about.tcl~ fax-about.tcl
spec:
	cat $(name).spec | sed -e "s/^[V:v]ersion: .*$$/Version: $(distversion)/" > $(name).spec~
	[ -s $(name).spec~ ] && mv -f $(name).spec~ $(name).spec

zip:
	cd ..;tar czf $(OUTDIR)/$(name)-$(distversion).tar.gz $(name)$(subname)
rpm: dist
	cd ..;rpmbuild -tb $(OUTDIR)/$(name)-$(distversion).tar.gz
