]> git.donarmstrong.com Git - lilypond.git/blob - stepmake/stepmake/generic-targets.make
release: 1.3.72
[lilypond.git] / stepmake / stepmake / generic-targets.make
1 # title    generic make targets
2 # file     make/Targets.make
3
4 .PHONY : all clean config default dist doc exe help html lib TAGS\
5          po
6
7 all:     default
8         $(LOOP)
9
10 man:
11         $(LOOP)
12
13 # be careful about deletion.
14 clean: localclean
15         -rm -f $(outdir)/*
16         $(LOOP)
17
18 ifneq ($(strip $(depth)),.)
19 dist:
20         make -C $(depth) dist
21 endif
22
23 distclean: clean 
24         $(LOOP)
25         $(MAKE) local-distclean
26
27 maintainerclean: 
28         $(LOOP)
29         $(MAKE) local-maintainerclean
30         $(MAKE) local-distclean
31
32
33 # configure:
34 #
35 config:
36         ./$(depth)/configure
37 #
38
39
40 # target help:
41 #
42 generic-help:
43         @echo -e "\
44 Makefile for $(PACKAGE_NAME) $(TOPLEVEL_VERSION)\n\
45 Usage: $(MAKE) ["VARIABLE=value"]... [TARGET]\n\
46 \n\
47 Targets:\n"
48
49 help: generic-help local-help
50         @echo -e "\
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\
57   .           Options:\n\
58   .             from=0.1.74\n\
59   .             help==\n\
60   .             release==\n\
61   .             to=0.1.74.jcn2\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   exe         update all executables\n\
66   help        this help\n\
67   install     install programs and data (prefix=$(prefix))\n\
68   lib         update all libraries\n\
69   release     roll tarball and generate patch\n\
70   rpm         build RedHat package\n\
71   po          make new translation Portable Object database\n\
72   po-update   update translation Portable Object database\n\
73   tar         same as dist\n\
74   TAGS        genarate tagfiles\n\
75   zip         build binary doze distribution\n\
76 \n\
77 Make may be invoked from any subdirectory\n\
78 Note that all commands recurse into SUBSDIRS\n\
79 "\
80 #
81
82 local-help:
83
84 doc: local-doc
85         $(LOOP)
86
87 local-doc:
88
89 local-dist: $(DIST_FILES) $(OUT_DIST_FILES) $(NON_ESSENTIAL_DIST_FILES)
90         mkdir -p $(distdir)/$(localdir)
91         $(LN) $(DIST_FILES) $(distdir)/$(localdir)
92
93         case "$(NON_ESSENTIAL_DIST_FILES)x" in x) ;; *) \
94                 $(LN) $(NON_ESSENTIAL_DIST_FILES) $(distdir)/$(localdir);; \
95         esac
96
97         case "$(OUT_DIST_FILES)x" in x) ;; *) \
98                 mkdir -p $(distdir)/$(localdir)/out; \
99                 $(LN) $(OUT_DIST_FILES) $(distdir)/$(localdir)/out;; \
100         esac
101 #       $(foreach i, $(SUBDIRS), $(MAKE) distdir=../$(distdir) localdir=$(localdir)/$(i) -C $(i) local-dist &&) true
102 # absolute for installed stepmake
103         $(foreach i, $(SUBDIRS), $(MAKE) topdir=$(topdir) distdir=$(distdir) localdir=$(localdir)/$(notdir $(i)) -C $(i) local-dist &&) true
104
105
106
107 html: $(HTML_FILES)
108
109 TAGS:
110         -if [ "$(TAGS_FILES)" != "" ]; then \
111                 etags -CT $(TAGS_FILES) || \
112                 ctags -h ".h.hh.tcc.icc" $(TAGS_FILES) $(ERROR_LOG); \
113         fi
114
115         $(LOOP)
116
117 # ugh . -> $(outdir)
118 $(outdir)/VERSION: $(depth)/VERSION
119         cp -p $< $@
120
121 $(outdir)/version.hh: $(outdir)/VERSION
122         $(PYTHON) $(step-bindir)/make-version.py $< > $@
123
124 $(outdir)/config.h: $(config_h)
125         cp -p $< $@
126
127 # should this be in Rules?
128 configure: configure.in aclocal.m4
129         autoconf 
130         chmod +x configure
131
132 localclean:
133
134 local-distclean:
135
136 local-maintainerclean:
137
138 install-strip:
139         $(MAKE) INSTALL="$(INSTALL) -s" install
140
141 install: localinstall
142         $(LOOP)
143
144 localinstall:
145
146 uninstall: localuninstall
147         $(LOOP)
148
149 localuninstall:
150
151 installextradoc:
152         -$(INSTALL) -d $(prefix)/doc/$(package)
153         $(foreach i, $(EXTRA_DOC_FILES),\
154                 cp -r $(i) $(prefix)/doc/$(package) &&) true
155
156 WWW: local-WWW
157         $(LOOP)
158
159 local-WWW:
160
161 include $(stepdir)/package.make
162
163 include $(outdir)/dummy.dep $(DEP_FILES)
164
165 $(outdir)/dummy.dep:
166         -mkdir -p $(outdir)
167         touch $(outdir)/dummy.dep
168
169
170 check: local-check
171         $(LOOP)
172
173 local-check:
174
175 # ugh.  ugh ugh ugh
176 $(depth)/$(configuration).make: $(depth)/configure
177         @echo "**************************************"
178         @echo "configure changed! You should probably reconfigure manually."
179         @echo "**************************************"
180         (cd $(depth); ./config.status)
181         touch $@                # do something for multiple simultaneous configs.