Annotation of mandoc/Makefile, Revision 1.111
1.79 kristaps 1: .SUFFIXES: .html .sgml
2:
1.111 ! kristaps 3: VERSION = 1.4.2
1.109 kristaps 4: VDATE = 8 March 2009
1.31 kristaps 5:
1.99 kristaps 6: BINDIR = $(PREFIX)/bin
7: INCLUDEDIR = $(PREFIX)/include
8: LIBDIR = $(PREFIX)/lib
9: MANDIR = $(PREFIX)/man
10:
11: INSTALL_PROGRAM = install -m 0755
12: INSTALL_DATA = install -m 0444
13: INSTALL_LIB = install -m 0644
14: INSTALL_MAN = $(INSTALL_DATA)
15:
1.110 kristaps 16: CPPFLAGS = -DVERSION=\"$(VERSION)\"
1.73 kristaps 17: CFLAGS += -W -Wall -Wstrict-prototypes -Wno-unused-parameter -g
1.7 kristaps 18:
1.60 kristaps 19: LIBLNS = macro.ln mdoc.ln hash.ln strings.ln xstd.ln argv.ln \
1.108 kristaps 20: validate.ln action.ln lib.ln att.ln arch.ln vol.ln \
21: msec.ln st.ln
1.60 kristaps 22:
1.77 kristaps 23: TREELNS = mdoctree.ln mmain.ln
1.60 kristaps 24:
1.77 kristaps 25: TERMLNS = mdoctree.ln mmain.ln term.ln
1.4 kristaps 26:
1.78 kristaps 27: LINTLNS = mdoclint.ln mmain.ln
28:
1.75 kristaps 29: LNS = $(LIBLNS) $(TREELNS) $(TERMLNS)
30:
31: LLNS = llib-llibmdoc.ln llib-lmdoctree.ln llib-lmdocterm.ln
1.4 kristaps 32:
1.50 kristaps 33: LIBS = libmdoc.a
1.4 kristaps 34:
1.60 kristaps 35: LIBOBJS = macro.o mdoc.o hash.o strings.o xstd.o argv.o \
1.108 kristaps 36: validate.o action.o lib.o att.o arch.o vol.o msec.o \
37: st.o
1.75 kristaps 38:
1.77 kristaps 39: TERMOBJS= mdocterm.o mmain.o term.o
1.60 kristaps 40:
1.77 kristaps 41: TREEOBJS= mdoctree.o mmain.o
1.60 kristaps 42:
1.78 kristaps 43: LINTOBJS= mdoclint.o mmain.o
44:
1.108 kristaps 45: OBJS = $(LIBOBJS) $(TERMOBJS) $(TREEOBJS) $(LINTOBJS)
1.4 kristaps 46:
1.75 kristaps 47: SRCS = macro.c mdoc.c hash.c strings.c xstd.c argv.c validate.c \
1.78 kristaps 48: action.c term.c mdoctree.c mdocterm.c mmain.c mdoclint.c
1.4 kristaps 49:
1.108 kristaps 50: SCRIPTS = strings.sh
51:
1.111 ! kristaps 52: DATAS = arch.in att.in lib.in msec.in st.in vol.in
! 53:
1.108 kristaps 54: GEN = lib.c att.c arch.c vol.c msec.c st.c
55:
1.76 kristaps 56: HEADS = mdoc.h private.h term.h mmain.h
1.1 kristaps 57:
1.79 kristaps 58: SGMLS = index.sgml
59:
60: HTMLS = index.html
61:
62: STATICS = style.css external.png
63:
1.91 kristaps 64: TARGZS = mdocml-$(VERSION).tar.gz mdocml-oport-$(VERSION).tar.gz \
65: mdocml-nport-$(VERSION).tar.gz
1.81 kristaps 66:
67: MANS = mdoctree.1 mdocterm.1 mdoclint.1 mdoc.3
1.63 kristaps 68:
1.78 kristaps 69: BINS = mdocterm mdoctree mdoclint
1.4 kristaps 70:
1.81 kristaps 71: CLEAN = $(BINS) $(LNS) $(LLNS) $(LIBS) $(OBJS) $(HTMLS) \
1.108 kristaps 72: $(TARGZS) $(GEN)
1.29 kristaps 73:
1.90 kristaps 74: INSTALL = $(SRCS) $(HEADS) Makefile DESCR $(MANS) $(SGMLS) \
1.111 ! kristaps 75: $(STATICS) $(SCRIPTS) Makefile.netbsd Makefile.openbsd \
! 76: $(DATAS)
1.59 kristaps 77:
1.64 kristaps 78: FAIL = regress/test.empty \
79: regress/test.prologue.00 \
80: regress/test.prologue.01 \
81: regress/test.prologue.02 \
82: regress/test.prologue.03 \
83: regress/test.prologue.04 \
84: regress/test.prologue.06 \
85: regress/test.prologue.19 \
86: regress/test.prologue.23 \
1.65 kristaps 87: regress/test.prologue.24 \
88: regress/test.prologue.27 \
89: regress/test.prologue.28 \
90: regress/test.prologue.30 \
91: regress/test.prologue.31 \
92: regress/test.prologue.32 \
1.83 kristaps 93: regress/test.sh.03 \
94: regress/test.escape.01 \
95: regress/test.escape.02 \
96: regress/test.escape.03 \
1.84 kristaps 97: regress/test.escape.04 \
98: regress/test.escape.06 \
99: regress/test.escape.07 \
100: regress/test.escape.08 \
1.87 kristaps 101: regress/test.escape.09 \
102: regress/test.escape.11 \
1.103 kristaps 103: regress/test.escape.12 \
1.106 kristaps 104: regress/test.escape.14 \
1.107 kristaps 105: regress/test.argv.01 \
106: regress/test.argv.02
1.64 kristaps 107:
108: SUCCEED = regress/test.prologue.05 \
109: regress/test.prologue.07 \
110: regress/test.prologue.08 \
111: regress/test.prologue.09 \
112: regress/test.prologue.10 \
113: regress/test.prologue.11 \
114: regress/test.prologue.12 \
1.108 kristaps 115: regress/test.prologue.13 \
1.64 kristaps 116: regress/test.prologue.14 \
1.108 kristaps 117: regress/test.prologue.15 \
118: regress/test.prologue.16 \
1.64 kristaps 119: regress/test.prologue.17 \
1.108 kristaps 120: regress/test.prologue.18 \
1.65 kristaps 121: regress/test.prologue.20 \
1.108 kristaps 122: regress/test.prologue.21 \
123: regress/test.prologue.22 \
124: regress/test.prologue.25 \
125: regress/test.prologue.26 \
126: regress/test.prologue.29 \
127: regress/test.prologue.33 \
1.65 kristaps 128: regress/test.sh.00 \
1.66 kristaps 129: regress/test.name.00 \
1.78 kristaps 130: regress/test.name.01 \
131: regress/test.name.02 \
132: regress/test.name.03 \
1.66 kristaps 133: regress/test.list.00 \
134: regress/test.list.01 \
135: regress/test.list.02 \
136: regress/test.list.03 \
1.67 kristaps 137: regress/test.list.04 \
138: regress/test.list.05 \
1.83 kristaps 139: regress/test.list.06 \
1.94 kristaps 140: regress/test.list.07 \
1.83 kristaps 141: regress/test.sh.01 \
142: regress/test.sh.02 \
1.84 kristaps 143: regress/test.escape.00 \
1.87 kristaps 144: regress/test.escape.05 \
1.103 kristaps 145: regress/test.escape.10 \
1.106 kristaps 146: regress/test.escape.13 \
147: regress/test.argv.00
1.64 kristaps 148:
1.81 kristaps 149: REGRESS = $(FAIL) $(SUCCEED)
150:
1.50 kristaps 151: all: $(BINS)
1.32 kristaps 152:
1.50 kristaps 153: lint: $(LLNS)
1.42 kristaps 154:
1.1 kristaps 155: clean:
156: rm -f $(CLEAN)
157:
1.89 kristaps 158: cleanlint:
159: rm -f $(LNS) $(LLNS)
160:
1.60 kristaps 161: dist: mdocml-$(VERSION).tar.gz
1.59 kristaps 162:
1.90 kristaps 163: port: mdocml-oport-$(VERSION).tar.gz mdocml-nport-$(VERSION).tar.gz
1.20 kristaps 164:
1.81 kristaps 165: www: $(HTMLS) $(TARGZS)
1.79 kristaps 166:
1.80 kristaps 167: installwww: www
168: install -m 0444 $(HTMLS) $(STATICS) $(PREFIX)/
1.81 kristaps 169: install -m 0444 mdocml-$(VERSION).tar.gz $(PREFIX)/snapshots/
1.91 kristaps 170: install -m 0444 mdocml-$(VERSION).tar.gz $(PREFIX)/snapshots/mdocml.tar.gz
1.81 kristaps 171: install -m 0444 mdocml-oport-$(VERSION).tar.gz $(PREFIX)/ports-openbsd/
172: install -m 0444 mdocml-oport-$(VERSION).tar.gz $(PREFIX)/ports-openbsd/mdocml.tar.gz
1.91 kristaps 173: install -m 0444 mdocml-nport-$(VERSION).tar.gz $(PREFIX)/ports-netbsd/
174: install -m 0444 mdocml-nport-$(VERSION).tar.gz $(PREFIX)/ports-netbsd/mdocml.tar.gz
1.80 kristaps 175:
1.107 kristaps 176: regress: mdoclint $(FAIL) $(SUCCEED)
1.64 kristaps 177: @for f in $(FAIL); do \
1.78 kristaps 178: echo "./mdoclint $$f" ; \
179: ./mdoclint $$f 2>/dev/null || continue ; exit 1 ; done
1.64 kristaps 180: @for f in $(SUCCEED); do \
1.78 kristaps 181: echo "./mdoclint $$f" ; \
182: ./mdoclint $$f 2>/dev/null || exit 1 ; done
1.64 kristaps 183:
1.60 kristaps 184: install:
1.101 kristaps 185: mkdir -p $(BINDIR)
186: mkdir -p $(INCLUDEDIR)
187: mkdir -p $(LIBDIR)/lib
188: mkdir -p $(MANDIR)/man1
189: mkdir -p $(MANDIR)/man3
190: $(INSTALL_PROGRAM) mdocterm $(BINDIR)
191: $(INSTALL_PROGRAM) mdoctree $(BINDIR)
192: $(INSTALL_PROGRAM) mdoclint $(BINDIR)
193: $(INSTALL_MAN) mdocterm.1 $(MANDIR)/man1
194: $(INSTALL_MAN) mdoctree.1 $(MANDIR)/man1
195: $(INSTALL_MAN) mdoclint.1 $(MANDIR)/man1
196: $(INSTALL_MAN) mdoc.3 $(MANDIR)/man3
197: $(INSTALL_LIB) libmdoc.a $(LIBDIR)
198: $(INSTALL_DATA) mdoc.h $(INCLUDEDIR)
1.60 kristaps 199:
200: uninstall:
1.101 kristaps 201: rm -f $(BINDIR)/mdocterm
202: rm -f $(BINDIR)/mdoctree
203: rm -f $(BINDIR)/mdoclint
204: rm -f $(MANDIR)/man1/mdocterm.1
205: rm -f $(MANDIR)/man1/mdoctree.1
206: rm -f $(MANDIR)/man1/mdoclint.1
207: rm -f $(MANDIR)/man3/mdoc.3
208: rm -f $(LIBDIR)/libmdoc.a
209: rm -f $(INCLUDEDIR)/mdoc.h
1.20 kristaps 210:
1.108 kristaps 211: lib.ln: lib.c private.h
212: lib.o: lib.c private.h
213:
214: att.ln: att.c private.h
215: att.o: att.c private.h
216:
217: arch.ln: arch.c private.h
218: arch.o: arch.c private.h
219:
220: vol.ln: vol.c private.h
221: vol.o: vol.c private.h
222:
223: msec.ln: msec.c private.h
224: msec.o: msec.c private.h
225:
226: st.ln: st.c private.h
227: st.o: st.c private.h
228:
229: lib.c: lib.in strings.sh
230: sh strings.sh -o $@ lib lib.in
231:
232: st.c: st.in strings.sh
233: sh strings.sh -o $@ st st.in
234:
235: msec.c: msec.in strings.sh
236: sh strings.sh -o $@ msec msec.in
237:
238: att.c: att.in strings.sh
239: sh strings.sh -o $@ att att.in
240:
241: arch.c: arch.in strings.sh
242: sh strings.sh -o $@ arch arch.in
243:
244: vol.c: vol.in strings.sh
245: sh strings.sh -o $@ vol vol.in
246:
1.50 kristaps 247: macro.ln: macro.c private.h
248: macro.o: macro.c private.h
1.21 kristaps 249:
1.74 kristaps 250: term.ln: term.c term.h
251: term.o: term.c term.h
252:
1.52 kristaps 253: strings.ln: strings.c private.h
254: strings.o: strings.c private.h
255:
1.50 kristaps 256: hash.ln: hash.c private.h
257: hash.o: hash.c private.h
1.21 kristaps 258:
1.50 kristaps 259: mdoc.ln: mdoc.c private.h
260: mdoc.o: mdoc.c private.h
1.47 kristaps 261:
1.76 kristaps 262: mdocterm.ln: mdocterm.c mmain.h
263: mdocterm.o: mdocterm.c mmain.h
1.47 kristaps 264:
1.78 kristaps 265: mdoclint.ln: mdoclint.c mmain.h
266: mdoclint.o: mdoclint.c mmain.h
267:
1.76 kristaps 268: mdoctree.ln: mdoctree.c mmain.h
269: mdoctree.o: mdoctree.c mmain.h
1.39 kristaps 270:
1.53 kristaps 271: xstd.ln: xstd.c private.h
272: xstd.o: xstd.c private.h
273:
274: argv.ln: argv.c private.h
275: argv.o: argv.c private.h
276:
1.54 kristaps 277: validate.ln: validate.c private.h
278: validate.o: validate.c private.h
279:
1.56 kristaps 280: action.ln: action.c private.h
1.76 kristaps 281: action.o: action.c private.h
1.56 kristaps 282:
1.76 kristaps 283: mmain.ln: mmain.c mmain.h
284: mmain.o: mmain.c mmain.h
1.56 kristaps 285:
1.50 kristaps 286: private.h: mdoc.h
1.39 kristaps 287:
1.76 kristaps 288: mmain.h: mdoc.h
289:
290: term.h: mdoc.h
291:
1.90 kristaps 292: mdocml-nport-$(VERSION).tar.gz: mdocml-$(VERSION).tar.gz Makefile.netbsd DESCR
293: mkdir -p .dist/mdocml/
294: sed -e "s!@VERSION@!$(VERSION)!" Makefile.netbsd > \
295: .dist/mdocml/Makefile
296: md5 mdocml-$(VERSION).tar.gz > .dist/mdocml/distinfo
297: rmd160 mdocml-$(VERSION).tar.gz >> .dist/mdocml/distinfo
298: sha1 mdocml-$(VERSION).tar.gz >> .dist/mdocml/distinfo
299: install -m 0644 DESCR .dist/mdocml/
300: echo @comment $$NetBSD$$ > .dist/mdocml/PLIST
301: echo bin/mdocterm >> .dist/mdocml/PLIST
302: echo bin/mdoctree >> .dist/mdocml/PLIST
303: echo bin/mdoclint >> .dist/mdocml/PLIST
304: echo lib/libmdoc.a >> .dist/mdocml/PLIST
305: echo include/mdoc.h >> .dist/mdocml/PLIST
306: echo man/man1/mdoctree.1 >> .dist/mdocml/PLIST
307: echo man/man1/mdocterm.1 >> .dist/mdocml/PLIST
308: echo man/man1/mdoclint.1 >> .dist/mdocml/PLIST
309: echo man/man3/mdoc.3 >> .dist/mdocml/PLIST
310: ( cd .dist/ && tar zcf ../$@ mdocml/ )
311: rm -rf .dist/
312:
313: mdocml-oport-$(VERSION).tar.gz: mdocml-$(VERSION).tar.gz Makefile.openbsd DESCR
1.60 kristaps 314: mkdir -p .dist/mdocml/pkg
1.90 kristaps 315: sed -e "s!@VERSION@!$(VERSION)!" Makefile.openbsd > \
1.81 kristaps 316: .dist/mdocml/Makefile
1.60 kristaps 317: md5 mdocml-$(VERSION).tar.gz > .dist/mdocml/distinfo
318: rmd160 mdocml-$(VERSION).tar.gz >> .dist/mdocml/distinfo
319: sha1 mdocml-$(VERSION).tar.gz >> .dist/mdocml/distinfo
320: install -m 0644 DESCR .dist/mdocml/pkg/DESCR
321: echo @comment $$OpenBSD$$ > .dist/mdocml/pkg/PLIST
1.75 kristaps 322: echo bin/mdocterm >> .dist/mdocml/pkg/PLIST
323: echo bin/mdoctree >> .dist/mdocml/pkg/PLIST
1.78 kristaps 324: echo bin/mdoclint >> .dist/mdocml/pkg/PLIST
1.60 kristaps 325: echo lib/libmdoc.a >> .dist/mdocml/pkg/PLIST
326: echo include/mdoc.h >> .dist/mdocml/pkg/PLIST
1.75 kristaps 327: echo @man man/man1/mdoctree.1 >> .dist/mdocml/pkg/PLIST
328: echo @man man/man1/mdocterm.1 >> .dist/mdocml/pkg/PLIST
1.78 kristaps 329: echo @man man/man1/mdoclint.1 >> .dist/mdocml/pkg/PLIST
1.60 kristaps 330: echo @man man/man3/mdoc.3 >> .dist/mdocml/pkg/PLIST
331: ( cd .dist/ && tar zcf ../$@ mdocml/ )
332: rm -rf .dist/
333:
334: mdocml-$(VERSION).tar.gz: $(INSTALL)
335: mkdir -p .dist/mdocml/mdocml-$(VERSION)/
1.81 kristaps 336: mkdir -p .dist/mdocml/mdocml-$(VERSION)/regress/
1.60 kristaps 337: install -m 0644 $(INSTALL) .dist/mdocml/mdocml-$(VERSION)/
1.81 kristaps 338: install -m 0644 $(REGRESS) .dist/mdocml/mdocml-$(VERSION)/regress/
1.60 kristaps 339: ( cd .dist/mdocml/ && tar zcf ../../$@ mdocml-$(VERSION)/ )
340: rm -rf .dist/
341:
342: llib-llibmdoc.ln: $(LIBLNS)
343: $(LINT) $(LINTFLAGS) -Clibmdoc $(LIBLNS)
344:
1.75 kristaps 345: llib-lmdoctree.ln: $(TREELNS) llib-llibmdoc.ln
346: $(LINT) $(LINTFLAGS) -Cmdoctree $(TREELNS) llib-llibmdoc.ln
347:
348: llib-lmdocterm.ln: $(TERMLNS) llib-llibmdoc.ln
349: $(LINT) $(LINTFLAGS) -Cmdocterm $(TERMLNS) llib-llibmdoc.ln
1.60 kristaps 350:
351: libmdoc.a: $(LIBOBJS)
352: $(AR) rs $@ $(LIBOBJS)
353:
1.75 kristaps 354: mdocterm: $(TERMOBJS) libmdoc.a
355: $(CC) $(CFLAGS) -o $@ $(TERMOBJS) libmdoc.a
356:
357: mdoctree: $(TREEOBJS) libmdoc.a
358: $(CC) $(CFLAGS) -o $@ $(TREEOBJS) libmdoc.a
1.39 kristaps 359:
1.78 kristaps 360: mdoclint: $(LINTOBJS) libmdoc.a
361: $(CC) $(CFLAGS) -o $@ $(LINTOBJS) libmdoc.a
1.79 kristaps 362:
363: .sgml.html:
364: validate $<
1.85 kristaps 365: sed -e "s!@VERSION@!$(VERSION)!" -e "s!@VDATE@!$(VDATE)!" $< > $@
366:
CVSweb