]> CyberLeo.Net >> Repos - FreeBSD/releng/8.1.git/blob - contrib/less/Makefile.aut
Copy stable/8 to releng/8.1 in preparation for 8.1-RC1.
[FreeBSD/releng/8.1.git] / contrib / less / Makefile.aut
1 # Makefile for authoring less.
2
3 EMAIL = markn@greenwoodsoftware.com
4 HOMEPAGE = http://www.greenwoodsoftware.com/less
5 SHELL = /bin/sh
6 RCS = rcs
7 NROFF = nroff -man
8
9 srcdir = .
10
11 SRC = \
12         main.c screen.c brac.c ch.c charset.c cmdbuf.c \
13         command.c cvt.c decode.c edit.c filename.c forwback.c \
14         help.c ifile.c input.c jump.c line.c linenum.c \
15         lsystem.c mark.c optfunc.c option.c opttbl.c os.c \
16         output.c pattern.c position.c prompt.c search.c signal.c \
17         tags.c ttyin.c version.c  
18 DISTFILES_W = \
19         defines.ds  Makefile.dsb Makefile.dsg Makefile.dsu \
20         defines.o2  Makefile.o2e \
21         defines.o9  Makefile.o9c Makefile.o9u \
22         defines.wn  Makefile.wnm Makefile.wnb
23 DISTFILES = \
24         ${SRC} regexp.c regexp.h \
25         COPYING INSTALL LICENSE Makefile.in Makefile.aut NEWS README \
26         configure configure.ac lesskey.c lessecho.c scrsize.c \
27         charset.h cmd.h funcs.h lglob.h less.h lesskey.h option.h \
28         pckeys.h pattern.h position.h \
29         install.sh defines.h.in mkinstalldirs \
30         less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man \
31         less.hlp \
32         mkfuncs.awk mkhelp.c \
33         ${DISTFILES_W}
34
35 all: help.c funcs.h ${srcdir}/configure 
36
37 help.c: less.hlp mkhelp
38         -mv -f ${srcdir}/help.c ${srcdir}/help.c.old
39         rm -rf help.c
40         ./mkhelp < less.hlp > help.c
41         if cmp -s help.c help.c.old; then mv help.c.old help.c; fi
42
43 mkhelp: mkhelp.c
44         ${CC} -o mkhelp mkhelp.c
45
46 ${srcdir}/configure: ${srcdir}/configure.ac \
47                 ${srcdir}/Makefile.in
48         cd ${srcdir}; autoheader; autoconf
49
50 funcs.h: ${SRC:%=${srcdir}/%}
51         -mv -f ${srcdir}/funcs.h ${srcdir}/funcs.h.old
52         awk -f ${srcdir}/mkfuncs.awk ${SRC:%=${srcdir}/%} >${srcdir}/funcs.h
53         if cmp -s funcs.h funcs.h.old; then mv funcs.h.old funcs.h; fi
54
55 lint:
56         lint -I. ${CPPFLAGS} ${SRC}
57
58 clean: 
59         rm -f Makefile config.status config.log config.cache defines.h stamp-h \
60                 README NEWS \
61                 less.nro less.man lesskey.nro lesskey.man lessecho.nro lessecho.man 
62
63 distclean: clean
64 realclean: clean
65
66 REPLACE_VERSION = \
67         @REL=`sed -e '/char version/!d' -e 's/[^0-9.]*\([0-9.]*\).*/\1/' -e q ${srcdir}/version.c`; \
68         DT=`date '+%d %h %Y'`; \
69         echo "Stuffing version number $$REL into $@"; \
70         sed \
71                 -e "s;@@VERSION@@;$$REL;" \
72                 -e "s;@@DATE@@;$$DT;" \
73                 -e "s;@@EMAIL@@;${EMAIL};" \
74                 -e "s;@@HOMEPAGE@@;${HOMEPAGE};" >$@
75
76 ${srcdir}/README: ${srcdir}/README.VER ${srcdir}/version.c
77         ${REPLACE_VERSION} ${srcdir}/README.VER
78 ${srcdir}/NEWS: ${srcdir}/NEWS.VER ${srcdir}/version.c
79         ${REPLACE_VERSION} ${srcdir}/NEWS.VER
80 ${srcdir}/less.nro: ${srcdir}/less.nro.VER ${srcdir}/version.c
81         ${REPLACE_VERSION} ${srcdir}/less.nro.VER
82 ${srcdir}/lesskey.nro: ${srcdir}/lesskey.nro.VER ${srcdir}/version.c
83         ${REPLACE_VERSION} ${srcdir}/lesskey.nro.VER
84 ${srcdir}/lessecho.nro: ${srcdir}/lessecho.nro.VER ${srcdir}/version.c
85         ${REPLACE_VERSION} ${srcdir}/lessecho.nro.VER
86 ${srcdir}/less.hlp: ${srcdir}/less.hlp.VER ${srcdir}/version.c
87         ${REPLACE_VERSION} ${srcdir}/less.hlp.VER
88
89 ${srcdir}/less.man: ${srcdir}/less.nro
90         ${NROFF} ${srcdir}/less.nro >${srcdir}/less.man
91 ${srcdir}/lesskey.man: ${srcdir}/lesskey.nro
92         ${NROFF} ${srcdir}/lesskey.nro >${srcdir}/lesskey.man
93 ${srcdir}/lessecho.man: ${srcdir}/lessecho.nro
94         ${NROFF} ${srcdir}/lessecho.nro >${srcdir}/lessecho.man
95
96
97 distfiles: ${DISTFILES}
98
99 dist: ${DISTFILES}
100         if [ ! -d ${srcdir}/release ]; then mkdir ${srcdir}/release; fi
101         @cd ${srcdir}; \
102         REL=`sed -e '/char version/!d' -e 's/[^0-9.]*\([0-9.]*\).*/less-\1/' -e q version.c`; \
103         rm -rf release/$$REL; mkdir release/$$REL; \
104         echo "Preparing $$REL"; \
105         rm -rf $$REL; mkdir $$REL; \
106         for file in ${DISTFILES}; do \
107           cp -p $$file $$REL; \
108           chmod -w $$REL/$$file; \
109         done; \
110         cd $$REL; chmod +w ${DISTFILES_W}; cd ..; \
111         echo "Creating release/$$REL/$$REL.tar.gz"; \
112         tar -cf - $$REL | gzip -c >release/$$REL/$$REL.tar.gz; \
113         echo "Signing release/$$REL/$$REL.tar.gz"; \
114         gpg --detach-sign release/$$REL/$$REL.tar.gz; \
115         echo "Creating release/$$REL/$$REL.zip"; \
116         zip -rq release/$$REL/$$REL.zip $$REL; \
117         rm -rf $$REL
118
119 tagall:
120         @REL=`sed -e '/char version/!d' -e 's/[^0-9.]*\([0-9.]*\).*/v\1/' -e q ${srcdir}/version.c`; \
121         echo "tagging $$REL"; \
122         for f in ${srcdir}/RCS/*,v; do \
123           REV=`co -p $$f 2>&1 | sed -e '1d' -e '3,$$d' -e 's/revision //'`; \
124           ${RCS} -N$$REL:$$REV $$f; \
125         done