source: auto/output/Makefile @ 2f8d6d8

Last change on this file since 2f8d6d8 was c7ecbc2, checked in by Mateusz Hromada <ruanda@…>, 15 years ago

Stadard targets added to Makefile. New targets:

  • install
  • install-*
  • uninstall
  • Property mode set to 100755
File size: 6.0 KB
RevLine 
[c08f3b1]1#!/bin/sh
2
3cat << EOF > Makefile
4# Default target
[12743b9]5.DEFAULT_GOAL = all
[c08f3b1]6
[c7ecbc2]7PROJECT_NAME = $PROJECT_NAME
8PROJECT_FULLNAME = $PROJECT_FULLNAME
9PROJECT_COPYRIGHT = $PROJECT_COPYRIGHT
10PROJECT_VERSION = $PROJECT_VERSION
11PROEJCT_PAGE = $PROJECT_PAGE
12PROJECT_MAIL = $PROJECT_MAIL
13
14INSTALL = $INSTALL
15INSTALL_PROGRAM = \$(INSTALL)
16INSTALL_PROGRAM_STRIP = \$(INSTALL) -s
17INSTALL_DATA = \$(INSTALL) -m 644
18INSTALL_DIR = \$(INSTALL) -d
[c08f3b1]19SHELL = $SHELL
20CC = $CC
21BISON = $BISON
[44f59b8]22FLEX = $FLEX
[c08f3b1]23RM = $RM
24RMDIR = $RMDIR
25TEST = $TEST
26MAKE = $MAKE
27GREP = $GREP
28CUT = $CUT
29SORT = $SORT
30PR = $PR
[e4cec26]31CP = $CP
32CHMOD = $CHMOD
[9a36761]33MAKEINFO = $MAKEINFO
34TEXI2DVI = $TEXI2DVI
35TEXI2PDF = $TEXI2PDF
36DVIPS = $DVIPS
[c08f3b1]37
38CFLAGS = $CFLAGS
39LDFLAGS = $LDFLAGS
40LDLIBS = $LDLIBS
41BFLAGS = $BFLAGS
[e4cec26]42FFLAGS = $FFLAGS
[c08f3b1]43
44DESTDIR = $DESTDIR
45
46prefix = $prefix
47exec_prefix = $exec_prefix
48bindir = $bindir
49sbindir = $sbindir
[c7ecbc2]50libexecdir = $libexecdir
[c08f3b1]51datarootdir = $datarootdir
52datadir = $datadir
53sysconfdir = $sysconfdir
[c7ecbc2]54sharedstatedir = $sharedstatedir
[c08f3b1]55localstatedir = $localstatedir
[c7ecbc2]56docdir = $docdir
57infodir = $infodir
58htmldir = $htmldir
59dvidir = $dvidir
60pdfdir = $pdfdir
61psdir = $psdir
62libdir = $libdir
63localedir = $localedir
64mandir = $mandir
65man1dir = $man1dir
66man2dir = $man2dir
67man3dir = $man3dir
68man4dir = $man4dir
69man5dir = $man5dir
70man6dir = $man6dir
71man7dir = $man7dir
72man8dir = $man8dir
73man9dir = $man9dir
74manext = $manext
75man1ext = $man1ext
76man2ext = $man2ext
77man3ext = $man3ext
78man4ext = $man4ext
79man5ext = $man5ext
80man6ext = $man6ext
81man7ext = $man7ext
82man8ext = $man8ext
83man9ext = $man9ext
[c08f3b1]84
85ALL_CFLAGS = \$(CFLAGS)
86ALL_LDFLAGS = \$(LDFLAGS)
87ALL_LDLIBS = \$(LDLIBS)
88ALL_BFLAGS = \$(BFLAGS)
[44f59b8]89ALL_FFLAGS = -t \$(FFLAGS)
[c08f3b1]90
[9a36761]91vpath %.c       ./src
92vpath %.l       ./src
[c7ecbc2]93vpath %.ggo     ./src
[9a36761]94vpath %.pl      ./src
95vpath %.sed     ./src
96vpath %.sh      ./src
97vpath %.texinfo ./doc
[c08f3b1]98
[c7ecbc2]99PROGRAMS_SCRIPT = gph kot unfla grp mar ser kon rm12
100PROGRAMS_EXEC = tok sen fla rs12
101PROGRAMS = \$(PROGRAMS_SCRIPT) \$(PROGRAMS_EXEC)
[9a36761]102DOC_FILES = utt.info utt.dvi utt.html utt.pdf utt.ps
[12743b9]103
[44f59b8]104TOK_OBJ_FILES = tok.o tok_cmdline.o
105TOK_FLEX_FILES = tok.l
[12743b9]106TOK_GGO_FILES = tok_cmdline.ggo
[3a2ae91]107tok: \$(TOK_OBJ_FILES)
108tok.o: tok.c
[12743b9]109tok.o: tok_cmdline.h
[3a2ae91]110tok.c: tok.l
111tok_cmdline.o: tok_cmdline.c tok_cmdline.h
112tok_cmdline.c: tok_cmdline.ggo
113tok_cmdline.h: tok_cmdline.ggo
[12743b9]114
[1e551bd]115SEN_OBJ_FILES = sen.o
116SEN_FLEX_FILES = sen.l
[3a2ae91]117sen: \$(SEN_OBJ_FILES)
118sen.o: sen.c
119sen.c: sen.l
[1e551bd]120
[9e0afb5]121FLA_OBJ_FILES = fla.o
[3a2ae91]122fla: \$(FLA_OBJ_FILES)
123fla.o: fla.c
[9e0afb5]124
[e4cec26]125GPH_PERL_FILES = gph.pl
[3a2ae91]126gph: \$(GPH_PERL_FILES)
127
128KOT_PERL_FILES = kot.pl
129kot: \$(KOT_PERL_FILES)
[e4cec26]130
[1e572e1]131UNFLA_SH_FILES = unfla.sh
132unfla: \$(UNFLA_SH_FILES)
133
[ac9a049]134GRP_PERL_FILES = grp.pl
135grp: \$(GRP_PERL_FILES)
136
[dc21769]137MAR_PERL_FILES = mar.pl
138mar: \$(MAR_PERL_FILES)
139
[8c8a252]140SER_PERL_FILES = ser.pl
141ser: \$(SER_PERL_FILES)
142
[8e1730c]143KON_PERL_FILES = kon.pl
144kon: \$(KON_PERL_FILES)
145
[4518a0b]146RM12_SED_FILES = rm12.sed
147rm12: \$(RM12_SED_FILES)
148
[b5884b3]149RS12_OBJ_FILES = rs12.o
150rs12: \$(RS12_OBJ_FILES)
151rs12.o: rs12.c
152
[c08f3b1]153CONFIG_FILES = src/config.h Makefile
154
155.SUFFIXES:
[c7ecbc2]156.SUFFIXES: .l .y .h .c .pl .o .texinfo .info .dvi .html .pdf .ps
[c08f3b1]157
158.PHONY: help
159help:
[c7ecbc2]160        @\$(MAKE) --print-data-base --question |                        \\
[c08f3b1]161        \$(GREP) '^[^.%][-A-Za-z0-9_]*:' |                      \\
162        \$(CUT) -f 1 -d : |                                     \\
[c7ecbc2]163        \$(GREP) -v '^Makefile\$\$' |                           \\
[c08f3b1]164        \$(SORT) |                                              \\
165        \$(PR) --omit-pagination --width=80 --columns=4
166
[9a36761]167.PHONY: all
168all: \$(PROGRAMS)
169
[c7ecbc2]170.PHONY: doc
171doc: info dvi html pdf ps
[9a36761]172
173.PHONY: info
174info: utt.info
175
176.PHONY: dvi
177dvi: utt.dvi
178
179.PHONY: html
180html: utt.html
181
182.PHONY: pdf
183pdf: utt.pdf
184
185.PHONY: ps
186ps: utt.ps
187
[c7ecbc2]188.PHONY: install-all
189install-all: install install-doc
[9a36761]190       
[c7ecbc2]191.PHONY: installdirs
192installdirs:
193        \$(INSTALL_DIR) \$(DESTDIR)\$(prefix) \\
194                        \$(DESTDIR)\$(exec_prefix) \\
195                        \$(DESTDIR)\$(bindir) \\
196                        \$(DESTDIR)\$(datarootdir) \\
197                        \$(DESTDIR)\$(datadir) \\
198                        \$(DESTDIR)\$(docdir) \\
199                        \$(DESTDIR)\$(infodir) \\
200                        \$(DESTDIR)\$(htmldir) \\
201                        \$(DESTDIR)\$(dvidir) \\
202                        \$(DESTDIR)\$(pdfdir) \\
203                        \$(DESTDIR)\$(psdir) \\
204
205.PHONY: install
206install: installdirs
207        \$(INSTALL_PROGRAM) \$(PROGRAMS) \$(DESTDIR)\$(bindir)
208
209.PHONY: install-strip
210install-strip: installdirs
211        \$(INSTALL_PROGRAM) \$(PROGRAMS_SCRIPT) \$(DESTDIR)\$(bindir)
212        \$(INSTALL_PROGRAM_STRIP) \$(PROGRAMS_EXEC) \$(DESTDIR)\$(bindir)
213
214.PHONY: install-doc
215install-doc: install-info install-dvi install-html install-pdf install-ps
216
217.PHONY: install-info
218install-info: installdirs
219        \$(INSTALL_DATA) utt.info \$(DESTDIR)\$(infodir)
220
221.PHONY: install-dvi
222install-dvi: installdirs
223        \$(INSTALL_DATA) utt.dvi \$(DESTDIR)\$(dvidir)
224
225.PHONY: install-html
226install-html: installdirs
227        \$(INSTALL_DATA) utt.html \$(DESTDIR)\$(htmldir)
228
229.PHONY: install-pdf
230install-pdf: installdirs
231        \$(INSTALL_DATA) utt.pdf \$(DESTDIR)\$(pdfdir)
232
233.PHONY: install-ps
234install-ps: installdirs
235        \$(INSTALL_DATA) utt.ps \$(DESTDIR)\$(psdir)
236
[9a36761]237.PHONY: uninstall
238uninstall:
[c7ecbc2]239        \$(RM) \$(foreach file,\$(PROGRAMS),\$(DESTDIR)\$(bindir)/\$(file))
240        \$(RM) \$(DESTDIR)\$(infodir)/utt.info
241        \$(RM) \$(DESTDIR)\$(dvidir)/utt.dvi
242        \$(RM) \$(DESTDIR)\$(htmldir)/utt.html
243        \$(RM) \$(DESTDIR)\$(pdfdir)/utt.pdf
244        \$(RM) \$(DESTDIR)\$(psdir)/utt.ps
245        \$(RMDIR) \$(DESTDIR)\$(docdir)
[c08f3b1]246
247.PHONY: clean
248clean:
249        \$(RM) \$(PROGRAMS)
250        \$(RM) \$(TOK_OBJ_FILES)
[44f59b8]251        \$(RM) \$(patsubst %.l,%.c,\$(TOK_FLEX_FILES))
[12743b9]252        \$(RM) \$(patsubst %.ggo,%.c,\$(TOK_GGO_FILES))
253        \$(RM) \$(patsubst %.ggo,%.h,\$(TOK_GGO_FILES))
[3a2ae91]254        \$(RM) \$(SEN_OBJ_FILES)
[1e551bd]255        \$(RM) \$(patsubst %.l,%.c,\$(SEN_FLEX_FILES))
[3a2ae91]256        \$(RM) \$(FLA_OBJ_FILES)
[b5884b3]257        \$(RM) \$(RS12_OBJ_FILES)
[9a36761]258        \$(RM) \$(DOC_FILES)
[c08f3b1]259
260.PHONY: distclean
261distclean: clean
262        \$(RM) \$(CONFIG_FILES)
263
264%.o: %.c
265        \$(CC) -c \$< -o \$@ \$(ALL_CFLAGS)
266
[12743b9]267%.c: %.l
[44f59b8]268        \$(FLEX) -t \$< > \$@
269
[12743b9]270%.c: %.ggo
[e4cec26]271        gengetopt --input \$< --file-name \$(basename \$@) --conf-parser
[12743b9]272
273%.h: %.ggo
[e4cec26]274        gengetopt --input \$< --file-name \$(basename \$@) --conf-parser
[12743b9]275
[c08f3b1]276%: %.o
277        \$(CC) \$? -o \$@ \$(ALL_LDFLAGS) \$(ALL_CFLAGS) \$(ALL_LDLIBS)
278
[e4cec26]279%: %.pl
280        \$(CP) \$< \$@
281        \$(CHMOD) a+x \$@
282
[1e572e1]283%: %.sh
284        \$(CP) \$< \$@
285        \$(CHMOD) a+x \$@
286
[4518a0b]287%: %.sed
288        \$(CP) \$< \$@
289        \$(CHMOD) a+x \$@
290
[9a36761]291%.info: %.texinfo
292        \$(MAKEINFO) \$< -o \$@
293
294%.dvi: %.texinfo
295        \$(TEXI2DVI) --build=clean \$< -o \$@
296
297%.html: %.texinfo
298        \$(MAKEINFO) --html --no-split \$< -o \$@
299
300%.pdf: %.texinfo
301        \$(TEXI2PDF) --build=clean \$< -o \$@
302
303%.ps: %.dvi
304        \$(DVIPS) \$< -o \$@
305
[c08f3b1]306EOF
307
Note: See TracBrowser for help on using the repository browser.