# # Makefile for top level of zsh distribution # # Copyright (c) 1995-1997 Richard Coleman # All rights reserved. # # Permission is hereby granted, without written agreement and without # license or royalty fees, to use, copy, modify, and distribute this # software and to distribute modified versions of this software for any # purpose, provided that the above copyright notice and the following # two paragraphs appear in all copies of this software. # # In no event shall Richard Coleman or the Zsh Development Group be liable # to any party for direct, indirect, special, incidental, or consequential # damages arising out of the use of this software and its documentation, # even if Richard Coleman and the Zsh Development Group have been advised of # the possibility of such damage. # # Richard Coleman and the Zsh Development Group specifically disclaim any # warranties, including, but not limited to, the implied warranties of # merchantability and fitness for a particular purpose. The software # provided hereunder is on an "as is" basis, and Richard Coleman and the # Zsh Development Group have no obligation to provide maintenance, # support, updates, enhancements, or modifications. # subdir = . dir_top = . SUBDIRS = Doc Etc Src Test @VERSION_MK@ # source/build directories VPATH = @srcdir@ sdir = @srcdir@ sdir_top = @top_srcdir@ INSTALL = @INSTALL@ @DEFS_MK@ # ========== DEPENDENCIES FOR BUILDING ========== # default target all: config.h config.modules @for subdir in Src Doc; do \ (cd $$subdir && $(MAKE) $(MAKEDEFS) $@) || exit 1; \ done # prepare module configuration prep: @cd Src && $(MAKE) $(MAKEDEFS) $@ META-FAQ: FORCE @cd Doc && $(MAKE) $(MAKEDEFS) ../META-FAQ dvi ps html info pdf: @cd Doc && $(MAKE) $(MAKEDEFS) $@ # ========== DEPENDENCIES FOR INSTALLING ========== # install stripped install-strip: $(MAKE) install STRIPFLAGS="-s" # install/uninstall most things install: install.bin install.modules install.fns install.man install.runhelp uninstall: uninstall.bin uninstall.modules uninstall.fns uninstall.man uninstall.runhelp # install/uninstall just the binary install.bin uninstall.bin: @cd Src && $(MAKE) $(MAKEDEFS) $@ # install/uninstall just the modules install.modules uninstall.modules: @cd Src && $(MAKE) $(MAKEDEFS) $@ # install/uninstall just the man pages install.man uninstall.man: @cd Doc && $(MAKE) $(MAKEDEFS) $@ # install/uninstall just the runhelp files install.runhelp uninstall.runhelp: @cd Doc && $(MAKE) $(MAKEDEFS) $@ # install/uninstall just the shell functions install.fns: if test x$(fndir) != x && test x$(fndir) != xno; then \ test x$(sitefndir) != xno && \ $(SHELL) $(sdir_top)/mkinstalldirs $(DESTDIR)$(sitefndir); \ sdir_top="$(sdir_top)" fndir="$(fndir)" dir_top="$(dir_top)" \ scriptdir="$(scriptdir)" runhelpdir="$(runhelpdir)" \ FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \ INSTALL_DATA="$(INSTALL_DATA)" \ INSTALL_PROGRAM="$(INSTALL_PROGRAM)" \ DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \ $(SHELL) $(sdir_top)/Config/installfns.sh || exit 1; \ fi; \ exit 0 uninstall.fns: if test x$(fndir) != x && test x$(fndir) != xno; then \ fndir="$(fndir)" dir_top="$(dir_top)" \ scriptdir="$(scriptdir)" \ FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \ DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \ $(SHELL) $(sdir_top)/Config/uninstallfns.sh || exit 1; \ fi; \ exit 0 # install/uninstall just the info pages install.info uninstall.info: @cd Doc && $(MAKE) $(MAKEDEFS) $@ # install/uninstall just the HTML manual install.html uninstall.html: @cd Doc && $(MAKE) $(MAKEDEFS) $@ # ========== DEPENDENCIES FOR TESTING ========== check test: cd Test ; $(MAKE) check # ========== DEPENDENCIES FOR CLEANUP ========== @CLEAN_MK@ distclean-here: rm -f Makefile config.h config.status config.log config.cache config.modules config.modules.sh stamp-h Config/defs.mk rm -rf autom4te.cache realclean-here: cd $(sdir) && rm -f config.h.in stamp-h.in configure # ========== DEPENDENCIES FOR MAINTENANCE ========== @CONFIG_MK@ config: config.h config.status: $(sdir)/configure $(SHELL) ./config.status --recheck $(sdir)/configure: $(sdir)/aclocal.m4 $(sdir)/aczsh.m4 $(sdir)/configure.ac cd $(sdir) && autoconf config.h: stamp-h stamp-h: $(sdir)/config.h.in config.status cd $(dir_top) && $(SHELL) ./config.status config.h $@ config.modules: $(sdir)/config.h.in config.status config.modules.sh cd $(dir_top) && $(SHELL) ./config.status $@ && \ $(SHELL) ./config.modules.sh $(sdir)/config.h.in: $(sdir)/stamp-h.in $(sdir)/stamp-h.in: $(sdir)/configure.ac \ $(sdir)/aclocal.m4 $(sdir)/aczsh.m4 cd $(sdir) && autoheader echo > $(sdir)/stamp-h.in # ========== DEPENDENCIES FOR DISTRIBUTION ========== DISTNAME = zsh-$(VERSION) targz-src: $(DISTNAME).tar.gz $(DISTNAME).tar.gz: FORCE @$(sdir_top)/Util/mkdisttree.sh $(DISTNAME) $(sdir_top) $(dir_top) SRC \ $(MAKE) $(MAKEDEFS) echo '#define ZSH_PATCHLEVEL "'`cd $(sdir_top) && git describe --tags --long`'"' >$(DISTNAME)/Src/patchlevel.h.release tar cf - $(DISTNAME) | gzip -9 > $@ rm -rf $(DISTNAME) targz-doc: $(DISTNAME)-doc.tar.gz $(DISTNAME)-doc.tar.gz: FORCE @$(sdir_top)/Util/mkdisttree.sh $(DISTNAME) $(sdir_top) $(dir_top) DOC \ $(MAKE) $(MAKEDEFS) tar cf - $(DISTNAME) | gzip -9 > $@ rm -rf $(DISTNAME) FORCE: