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 local-dist: $(DIST_FILES) $(OUT_DIST_FILES) $(NON_ESSENTIAL_DIST_FILES)
89 # echo topdir=$(topdir)
90 # echo distdir=$(distdir)
91 # echo locladir=$(localdir)
92 mkdir -p $(distdir)/$(localdir)
93 $(LN) $(DIST_FILES) $(distdir)/$(localdir)
95 #UGH UGH . make ifdef doesn't mix with string substitution semantics (late expansion vs. early expansion)
97 case "$(NON_ESSENTIAL_DIST_FILES)x" in x) ;; *) \
98 $(LN) $(NON_ESSENTIAL_DIST_FILES) $(distdir)/$(localdir);; \
101 case "$(OUT_DIST_FILES)x" in x) ;; *) \
102 mkdir $(distdir)/$(localdir)/out; \
103 $(LN) $(OUT_DIST_FILES) $(distdir)/$(localdir)/out;; \
105 # $(foreach i, $(SUBDIRS), $(MAKE) distdir=../$(distdir) localdir=$(localdir)/$(i) -C $(i) local-dist &&) true
106 # absolute for installed stepmake
107 $(foreach i, $(SUBDIRS), $(MAKE) topdir=$(topdir) distdir=$(distdir) localdir=$(localdir)/$(notdir $(i)) -C $(i) local-dist &&) true
114 -if [ "$(TAGS_FILES)" != "" ]; then \
115 etags -CT $(TAGS_FILES) || \
116 ctags -h ".h.hh.tcc.icc" $(TAGS_FILES) $(ERROR_LOG); \
122 $(outdir)/VERSION: $(depth)/VERSION
125 $(outdir)/version.hh: $(outdir)/VERSION
126 sh $(step-bindir)/make-version.sh $< > $@
128 # should this be in Rules?
129 configure: configure.in aclocal.m4
137 local-maintainerclean:
140 $(MAKE) INSTALL="$(INSTALL) -s" install
142 install: localinstall
147 uninstall: localuninstall
153 -$(INSTALL) -d $(prefix)/doc/$(package)
154 $(foreach i, $(EXTRA_DOC_FILES),\
155 cp -r $(i) $(prefix)/doc/$(package) &&) true
162 include $(stepdir)/package.make
164 include $(outdir)/dummy.dep $(DEP_FILES)
168 touch $(outdir)/dummy.dep
177 $(depth)/$(configuration).make: $(depth)/configure
178 @echo "**************************************"
179 @echo "configure changed! You should probably reconfigure manually."
180 @echo "**************************************"
181 (cd $(depth); ./config.status)
182 touch $@ # do something for multiple simultaneous configs.