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.
18 ifneq ($(strip $(depth)),.)
25 $(MAKE) local-distclean
29 $(MAKE) local-maintainerclean
30 $(MAKE) local-distclean
44 Makefile for $(PACKAGE_NAME) $(TOPLEVEL_VERSION)\n\
45 Usage: $(MAKE) ["VARIABLE=value"]... [TARGET]\n\
49 help: generic-help local-help
51 all update everything\n\
52 clean remove all genated stuff in $(oudir)\n\
53 config rerun configure\n\
54 deb build Debian package\n\
55 default same as the empty target\n\
56 diff generate patch: $(depth)/$(outdir)/$(distname).diff.gz\n\
62 dist roll tarball: $(depth)/$(outdir)/$(distname).tar.gz\n\
63 distclean cleaner than clean (duh)\n\
64 doc update all documentation\n\
65 doc++ make doc++ documentation\n\
66 exe update all executables\n\
68 install install programs and data (prefix=$(prefix))\n\
69 lib update all libraries\n\
70 release roll tarball and generate patch\n\
71 rpm build RedHat package\n\
72 po make new po database\n\
73 po-update update po database\n\
75 TAGS genarate tagfiles\n\
76 zip build binary doze distribution\n\
78 Make may be invoked from any subdirectory\n\
79 Note that all commands recurse into SUBSDIRS\n\
87 true # $(MAKE) -C $(depth)/Documentation all
92 (cd $(outdir); sh ../$(step-bindir)/tar-docxx.sh $(package)-$(TOPLEVEL_VERSION).tar.gz)
95 local-dist: $(DIST_FILES) $(OUT_DIST_FILES) $(NON_ESSENTIAL_DIST_FILES)
96 mkdir -p $(distdir)/$(localdir)
97 $(LN) $(DIST_FILES) $(distdir)/$(localdir)
99 case "$(NON_ESSENTIAL_DIST_FILES)x" in x) ;; *) \
100 $(LN) $(NON_ESSENTIAL_DIST_FILES) $(distdir)/$(localdir);; \
103 case "$(OUT_DIST_FILES)x" in x) ;; *) \
104 mkdir $(distdir)/$(localdir)/out; \
105 $(LN) $(OUT_DIST_FILES) $(distdir)/$(localdir)/out;; \
107 # $(foreach i, $(SUBDIRS), $(MAKE) distdir=../$(distdir) localdir=$(localdir)/$(i) -C $(i) local-dist &&) true
108 # absolute for installed stepmake
109 $(foreach i, $(SUBDIRS), $(MAKE) topdir=$(topdir) distdir=$(distdir) localdir=$(localdir)/$(notdir $(i)) -C $(i) local-dist &&) true
116 -if [ "$(TAGS_FILES)" != "" ]; then \
117 etags -CT $(TAGS_FILES) || \
118 ctags -h ".h.hh.tcc.icc" $(TAGS_FILES) $(ERROR_LOG); \
124 $(outdir)/VERSION: $(depth)/VERSION
127 $(outdir)/version.hh: $(outdir)/VERSION
128 $(PYTHON) $(step-bindir)/make-version.py $< > $@
130 # should this be in Rules?
131 configure: configure.in aclocal.m4
139 local-maintainerclean:
142 $(MAKE) INSTALL="$(INSTALL) -s" install
144 install: localinstall
149 uninstall: localuninstall
155 -$(INSTALL) -d $(prefix)/doc/$(package)
156 $(foreach i, $(EXTRA_DOC_FILES),\
157 cp -r $(i) $(prefix)/doc/$(package) &&) true
164 include $(stepdir)/package.make
166 include $(outdir)/dummy.dep $(DEP_FILES)
170 touch $(outdir)/dummy.dep
179 $(depth)/$(configuration).make: $(depth)/configure
180 @echo "**************************************"
181 @echo "configure changed! You should probably reconfigure manually."
182 @echo "**************************************"
183 (cd $(depth); ./config.status)
184 touch $@ # do something for multiple simultaneous configs.