DESTDIR=
VERSION=2.1.0
CFLAGS=-O
INSTALL=install -o root -g root

SERVER-SCRIPTS=repli-miniroot repli-bootdisk
SERVER-SCRIPTS-DEST=$(DESTDIR)/usr/sbin

MINIROOT-SCRIPTS=repli-common repli-dialog repli-diskless repli-install\
repli-update repli-sync
#repli-xconfig mouseconf 
MINIROOT-SCRIPTS-DEST=$(DESTDIR)/usr/share/replicator

MINIROOT-FILES=update_rules.default
#pci.lst
MINIROOT-FILES-DEST=$(DESTDIR)/usr/share/replicator

DOC=replicator.conf.example repli-postinst.example\
repli-postinst.diskless.example Replicator-UserGuide.ps\
Replicator-UserGuide.tex copyright TODO 
DOC-DEST=$(DESTDIR)/usr/share/doc/replicator

MAN=replicator.8
MAN-DEST=$(DESTDIR)/usr/share/man/man8/

HTML-DOC-DEST=$(DOC-DEST)/html

CONF-DEST=$(DESTDIR)/etc/replicator

install-server-scripts: $(SERVER-SCRIPTS)
	mkdir -p $(SERVER-SCRIPTS-DEST)
	$(INSTALL) -m 755 $(SERVER-SCRIPTS) $(SERVER-SCRIPTS-DEST)

install-miniroot-scripts:
	mkdir -p $(MINIROOT-SCRIPTS-DEST)
	$(INSTALL) -m 644 $(MINIROOT-SCRIPTS) $(MINIROOT-SCRIPTS-DEST)

install-miniroot-files:
	mkdir -p $(MINIROOT-FILES-DEST)
	$(INSTALL) -m 644 $(MINIROOT-FILES) $(MINIROOT-FILES-DEST)

install-doc: doc
	mkdir -p  $(DOC-DEST)
	$(INSTALL) -m 644 $(DOC) $(DOC-DEST)
	mkdir $(HTML-DOC-DEST)
	$(INSTALL) -m644 Replicator-UserGuide/* $(HTML-DOC-DEST) 

install-conf:
	mkdir -p $(CONF-DEST)
	$(INSTALL) -m644 replicator.conf.example $(CONF-DEST)/replicator.conf
#      	$(INSTALL) -m644 update_rules.example $(CONF-DEST)/update_rules
	$(INSTALL) -m644 rsyncd.conf $(CONF-DEST)

install-man:
	mkdir -p $(MAN-DEST)
	$(INSTALL) -m644 $(MAN) $(MAN-DEST)
	gzip $(MAN-DEST)/$(MAN)
	cd $(MAN-DEST) && ln -s replicator.8.gz repli-miniroot.8.gz
	cd $(MAN-DEST) && ln -s replicator.8.gz repli-bootdisk.8.gz

install: all install-server-scripts install-miniroot-scripts\
install-miniroot-files install-doc install-conf install-man

all : binaries doc 

binaries :
#mouseconf uname.so

mouseconf : boml.o mtest.o
	$(CC) -o $@ $(LDFLAGS) $(CFLAGS) $^
	strip mouseconf

uname.so : uname.c
	$(CC) -shared -o $@ -fpic uname.c -ldl

%.o : %.c
	$(CC) -c $(CPPFLAGS) $(CFLAGS) $^

clean : doc-clean
	rm -f *.o mouseconf 
	rm -f replicator-*.tgz
	rm -f uname.so

src-clean : 
	rm *~

docdiff:
	egrep  "^#" replicator.conf.example > /tmp/com.conf.example
	egrep  "^#" replicator.conf > /tmp/com.conf
	diff -u /tmp/com.conf /tmp/com.conf.example

doc-clean: latex-clean
	rm -f Replicator-UserGuide.ps.gz Replicator-UserGuide.pdf
	rm -rf Replicator-UserGuide

latex-clean: 
	rm -f Replicator-UserGuide.aux Replicator-UserGuide.dvi Replicator-UserGuide.log Replicator-UserGuide.toc

doc: latex-clean
	latex Replicator-UserGuide.tex
	latex Replicator-UserGuide.tex
	dvips -o Replicator-UserGuide.ps Replicator-UserGuide.dvi
#	gzip Replicator-UserGuide.ps
	pdflatex Replicator-UserGuide.tex
	latex2html -split +1 -local_icons Replicator-UserGuide.tex

#web-doc: doc
#	pdflatex Replicator-UserGuide.tex
#	latex2html -split +1 -local_icons Replicator-UserGuide.tex



