1 # title generic make targets
2 # file make/Targets.make
4 .PHONY : all clean config default dist doc doc++ exe help html lib TAGS\
6 # VPATH=$(outdir)/ #ugh?
13 # be careful about deletion.
20 $(MAKE) local-distclean
24 $(MAKE) local-maintainerclean
25 $(MAKE) local-distclean
39 Makefile for $(PACKAGE_NAME) $(TOPLEVEL_VERSION)\n\
40 Usage: $(MAKE) ["VARIABLE=value"]... [TARGET]\n\
44 help: generic-help local-help
46 all update everything\n\
47 clean remove all genated stuff in $(oudir)\n\
48 config rerun configure\n\
49 deb build Debian package\n\
50 default same as the empty target\n\
51 diff generate patch: $(package)-$(TOPLEVEL_VERSION).diff.gz\n\
57 distclean cleaner than clean (duh)\n\
58 doc update all documentation\n\
59 doc++ make doc++ documentation\n\
60 exe update all executables\n\
62 install install programs and data (prefix=$(prefix))\n\
63 lib update all libraries\n\
64 release roll tarball and generate patch\n\
65 rpm build RedHat package\n\
67 TAGS genarate tagfiles\n\
68 zip build binary doze distribution\n\
70 Make may be invoked from any subdirectory\n\
71 Note that all commands recurse into SUBSDIRS\n\
79 true # $(MAKE) -C $(depth)/Documentation all
84 (cd $(outdir); sh ../$(step-bindir)/tar-docxx.sh $(package)-$(TOPLEVEL_VERSION).tar.gz)
88 ifneq ($(strip $(state-vector)),)
89 if [ "`tail -1 $(state-vector)`" != "$(TOPLEVEL_VERSION)" ]; then\
90 echo $(TOPLEVEL_VERSION) >> $(state-vector); \
94 local-dist: $(DIST_FILES) $(OUT_DIST_FILES) $(NON_ESSENTIAL_DIST_FILES)
95 mkdir -p $(distdir)/$(localdir)
96 $(LN) $(DIST_FILES) $(distdir)/$(localdir)
98 #UGH UGH . make ifdef doesn't mix with string substitution semantics (late expansion vs. early expansion)
100 case "$(NON_ESSENTIAL_DIST_FILES)x" in x) ;; *) \
101 $(LN) $(NON_ESSENTIAL_DIST_FILES) $(distdir)/$(localdir);; \
104 case "$(OUT_DIST_FILES)x" in x) ;; *) \
105 mkdir $(distdir)/$(localdir)/out; \
106 $(LN) $(OUT_DIST_FILES) $(distdir)/$(localdir)/out;; \
108 $(foreach i, $(SUBDIRS), $(MAKE) distdir=../$(distdir) localdir=$(localdir)/$(i) -C $(i) local-dist &&) true
115 -if [ "$(TAGS_FILES)" != "" ]; then \
116 etags -CT $(TAGS_FILES) || \
117 ctags -h ".h.hh.tcc.icc" $(TAGS_FILES) $(ERROR_LOG); \
123 $(outdir)/VERSION: $(depth)/VERSION
126 $(outdir)/version.hh: $(outdir)/VERSION
127 sh ./$(step-bindir)/make-version.sh $< > $@
129 # should this be in Rules?
130 configure: configure.in aclocal.m4
138 local-maintainerclean:
141 $(MAKE) INSTALL="$(INSTALL) -s" install
143 install: localinstall
148 uninstall: localuninstall
154 -$(INSTALL) -d $(prefix)/doc/$(package)
155 $(foreach i, $(EXTRA_DOC_FILES),\
156 cp -r $(i) $(prefix)/doc/$(package) &&) true
163 include $(stepdir)/package.make
165 include $(outdir)/dummy.dep $(DEP_FILES)
169 touch $(outdir)/dummy.dep
178 $(depth)/$(configuration).make: $(depth)/configure
179 @echo "**************************************"
180 @echo "configure changed! You should probably reconfigure manually."
181 @echo "**************************************"
182 (cd $(depth); ./config.status)
183 touch $@ # do something for multiple simultaneous configs.