
all: 
	make -C lib
	make -C tpctl
	make -C ntpctl

VER_RELEASE=3.4
VER_SMAPIDEV=1.0

DIR_SBIN=/usr/sbin
DIR_BIN=/usr/bin
DIR_LIB=/usr/lib
DIR_MAN=/usr/share/man
DIR_TMP=/tmp
DIR_SRC=tpctl-$(VER_RELEASE)
FILE_TARBALL=tpctl_$(VER_RELEASE).tar.gz

install: uninstall install_libraries install_binaries install_man

install_libraries:
	if [ ! -d $(DIR_LIB) ]; then mkdir -p -m 755 $(DIR_LIB) ; fi
	install -m 755 -o 0 -g 0 lib/libsmapidev.so.$(VER_SMAPIDEV) $(DIR_LIB)
	ln -sf libsmapidev.so.$(VER_SMAPIDEV) $(DIR_LIB)/libsmapidev.so.1

install_binaries:
	if [ ! -d $(DIR_BIN) ]; then mkdir -p -m 755 $(DIR_BIN) ; fi
	install -m 755 -o 0 -g 0 tpctl/tpctl $(DIR_BIN)/tpctl
	install -m 755 -o 0 -g 0 ntpctl/ntpctl $(DIR_BIN)/ntpctl
	if [ -e tpctlir/tpctlir ]; then install -m 755 -o 0 -g 0 tpctlir/tpctlir $(DIR_SBIN)/tpctlir ; fi
	install -m 755 -o 0 -g 0 apmiser/apmiser $(DIR_SBIN)/apmiser

install_man:
	install -m 644 -o 0 -g 0 man/tpctl.1 $(DIR_MAN)/man1/tpctl.1
	install -m 644 -o 0 -g 0 man/ntpctl.1 $(DIR_MAN)/man1/ntpctl.1

uninstall: uninstall_legacy uninstall_libraries uninstall_binaries uninstall_man

uninstall_libraries:
	rm -vf $(DIR_LIB)/libsmapidev.so*

uninstall_binaries:
	rm -vf $(DIR_BIN)/tpctl
	rm -vf $(DIR_BIN)/ntpctl
	rm -vf $(DIR_SBIN)/tpctlir
	rm -vf $(DIR_SBIN)/apmiser

uninstall_man:
	rm -vf $(DIR_MAN)/man1/tpctl.1
	rm -vf $(DIR_MAN)/man1/ntpctl.1

uninstall_legacy:
	@echo Please make sure that the following have been removed:
	@echo '   /usr/local/bin/tpctl'
	@echo '   /usr/local/bin/ntpctl'
	@echo '   /usr/local/sbin/tpctlir'
	@echo '   /usr/local/lib/libsmapidev.so*'
	@echo As of tpctl release 2.x, these programs are installed under /usr instead of /usr/local .

depend:

kdist_clean: clean

clean:
	@for dir in lib tpctl ntpctl ; do make -C $$dir clean ; done
	@echo Cleaning complete.

tarball: clean
	debian/rules clean
	rm -vrf $(DIR_TMP)/$(DIR_SRC)
	mkdir $(DIR_TMP)/$(DIR_SRC)
	cp -vLprf AUTHORS COPYING README TROUBLESHOOTING VGA-MODES SUPPORTED-MODELS ChangeLog Makefile lib tpctl ntpctl include tpctlir apmiser man debian $(DIR_TMP)/$(DIR_SRC)
	chown -R root.root $(DIR_TMP)/$(DIR_SRC)
	rm -vf $(DIR_TMP)/$(FILE_TARBALL)
	sh -c "cd $(DIR_TMP) ; /bin/tar -zcvf $(FILE_TARBALL) $(DIR_SRC)"
	@echo Tarball $(DIR_TMP)/$(FILE_TARBALL) has been created.
	rm -rf $(DIR_TMP)/$(DIR_SRC)

deb:
	debian/rules clean
	debian/rules binary
