# $Id: dev.mk,v 2.7 2003/05/19 09:37:12 ehood Exp $ ##-----------------------------------------------------------------------## ## Development makefile. ##-----------------------------------------------------------------------## .PHONY: release code-check version-check \ release-prep installation-doc pod2man relnotes autodoc \ bugs clean clean_local distclean TOP = . SUBDIRS = \ lib \ # End SUBDIRS include $(TOP)/etc/variables.mk ##-----------------------------------------------------------------------## TAR_EXCLUDE = ./etc/tar-exclude DIST_DIR = ./dist INSTALL_ME = $(PROJECTS_RELEASES)/install.me/latest/install.me VERSION_NAME = MHonArc$(_RELEASE_VERSION) PRGS = mhonarc mha-dbrecover mha-dbedit mha-decode PERL_FILES = \ Makefile.PL \ $(PRGS) \ # End PERL_FILES ##-----------------------------------------------------------------------## default: code-check release: version-check code-check @$(RM) -rf $(DIST_DIR) -@$(MKDIR) -p $(DIST_DIR)/$(VERSION_NAME) @echo "Copying files to $(DIST_DIR)..." $(TAR) -c -X $(TAR_EXCLUDE) -f - . | \ (cd $(DIST_DIR)/$(VERSION_NAME) && $(TAR) xfp -) $(CP) $(INSTALL_ME) $(DIST_DIR)/$(VERSION_NAME) (cd $(DIST_DIR)/$(VERSION_NAME) && $(MAKE) -f dev.mk release-prep) @$(RM) -rf $(DIST_DIR)/$(VERSION_NAME)/dev.mk \ $(DIST_DIR)/$(VERSION_NAME)/etc \ $(DIST_DIR)/$(VERSION_NAME)/doc/*.gml \ `$(FIND) $(DIST_DIR)/$(VERSION_NAME) -name 'CVS'` \ `$(FIND) $(DIST_DIR)/$(VERSION_NAME) -name '_helper'` \ `$(FIND) $(DIST_DIR)/$(VERSION_NAME) -name 'Makefile'` @(echo "Creating tar bundles..." && \ cd $(DIST_DIR) && \ $(TAR) -cf $(VERSION_NAME).tar $(VERSION_NAME) && \ echo " ...bz2..." && \ $(BZIP2) -k $(VERSION_NAME).tar && \ echo " ...gz..." && \ $(GZIP) $(VERSION_NAME).tar) @(echo "Creating zip bundle..." && \ cd $(DIST_DIR) && \ $(ZIP) -r $(VERSION_NAME).zip $(VERSION_NAME)) $(MV) $(DIST_DIR)/$(VERSION_NAME) $(DIST_DIR)/$(VERSION_NAME)-nodoc @$(RM) -rf $(DIST_DIR)/$(VERSION_NAME)-nodoc/doc @$(PERL) -i -n -e 'print unless /^doc:/;' \ $(DIST_DIR)/$(VERSION_NAME)-nodoc/FILELIST @(echo "Creating no-doc tar bundles..." && \ cd $(DIST_DIR) && \ $(TAR) -cf $(VERSION_NAME)-nodoc.tar $(VERSION_NAME)-nodoc && \ echo " ...bz2..." && \ $(BZIP2) -k $(VERSION_NAME)-nodoc.tar && \ echo " ...gz..." && \ $(GZIP) $(VERSION_NAME)-nodoc.tar) @(echo "Creating no-doc zip bundle..." && \ cd $(DIST_DIR) && \ $(ZIP) -r $(VERSION_NAME)-nodoc.zip $(VERSION_NAME)-nodoc) version-check: @if [ "$(_SNAP_MODE)" != "1" ]; then \ $(PERL) etc/version-check.pl "$(_RELEASE_VERSION)" lib/mhamain.pl; \ fi code-check: make_subdirs perl_syntax release-prep: autodoc relnotes bugs installation-doc installation-doc: $(W3M) doc/install.html -cols 76 > INSTALL pod2man: -@$(MKDIR) man @for i in $(PRGS) ; \ do( \ echo "Manifying $$i ..."; \ pod2man --center="MHonArc Documentation" \ --release="MHonArc v2.6" $$i > man/$$i.1; \ ); \ done relnotes: $(W3M) doc/relnotes.html -cols 76 > RELNOTES autodoc: pod2man $(MAKE) -C doc $(MAKE) -C doc/faq bugs: $(W3M) doc/app-bugs.html -cols 76 > BUGS clean: clean_subdirs clean_local clean_local: $(RM) -rf $(DIST_DIR) Makefile distclean: distclean_subdirs clean_local ##-----------------------------------------------------------------------## include $(TOP)/etc/rules.mk