# Mark's MUd Client
############################################################

# Mmucl installs itself under BASE_DIR

BASE_DIR = /usr/local

# The startup script, mmucl, is put in BIN_DIR
# Everything else is put in LIB_DIR

LIB_DIR = $(BASE_DIR)/lib/mmucl
BIN_DIR = $(BASE_DIR)/bin

# Which tclsh to use.

TCLSH = $(BASE_DIR)/bin/tclsh8.2

# Where info files are stored.

INFO_DIR = $(BASE_DIR)/info

# Location of install-info

INSTALL_INFO = /sbin/install-info

# Location of install

INSTALL = install

###########################################################
# Don't edit anything beyond this point.

VERSION = 1.3.0

.PHONY: install clean gzip zip dist rpm test

install: mmucl mmucl.info

	$(INSTALL) -d $(LIB_DIR)/lib $(LIB_DIR)/interface $(LIB_DIR)/images
	$(INSTALL) -d $(BIN_DIR) $(INFO_DIR) 
	$(INSTALL) -m 0664 lib/* $(LIB_DIR)/lib	
	$(INSTALL) -m 0664 images/* $(LIB_DIR)/images
	$(INSTALL) -m 0664 interface/* $(LIB_DIR)/interface
	$(INSTALL) -m 0664 .tkconf $(LIB_DIR)
	$(INSTALL) -m 0664 mmucl.info $(INFO_DIR)
	$(INSTALL) -m 0775 mmucl $(BIN_DIR)
	$(INSTALL_INFO) mmucl.info --info-dir=$(INFO_DIR)

mmucl: Makefile mmucl.tcl
	echo "#! $(TCLSH)" > mmucl
	echo "" >> mmucl
	echo "array set config {" >> mmucl
	echo "lib_dir {$(LIB_DIR)}" >> mmucl
	echo "version {$(VERSION)}" >> mmucl
	echo "}" >> mmucl

	cat mmucl.tcl >> mmucl

	chmod +x mmucl

mmucl.info: mmucl.texinfo
	makeinfo $^

mmucl.html: mmucl.texinfo
	texi2html -expandinfo -monolithic -menu $^

clean:
	find . -name '*~' -exec rm {} \;
	rm -f mmucl mmucl.info mmucl.html

gzip:
	cd ..; tar cfvz mmucl-$(VERSION).tar.gz mmucl-$(VERSION)

zip:
	cd ..; zip -r mmucl-$(VERSION).zip mmucl-$(VERSION)

rpm: gzip
	cp ../mmucl-$(VERSION).tar.gz /usr/src/redhat/SOURCES
	rpm -bb mmucl.spec 

test:
	mmucl --exec "cd test; source test.tcl"

distrib: clean mmucl.info mmucl.html zip rpm
