1 ADASRC
=$(addprefix .
/ada-src
/,etags-test-for.ada
2ataspri.adb
2ataspri.ads waroquiers.ada
)
2 ASRC
=$(addprefix .
/a-src
/,empty.zz empty.zz.gz
)
3 CSRC
=$(addprefix .
/c-src
/,abbrev.c .
//c.c torture.c getopt.h etags.c\
4 exit.c exit.strange_suffix sysdep.h tab.c dostorture.c\
5 emacs
/src
/gmalloc.c emacs
/src
/regex.h emacs
/src
/keyboard.c emacs
/src
/lisp.h\
6 machsyscalls.c machsyscalls.h fail.c a
/b
/b.c
) ..
/etags
/c-src
/h.h
7 CPSRC
=$(addprefix .
/cp-src
/,c.C x.
cc burton.
cpp burton.
cpp\
8 functions.
cpp MDiagArray2.h Range.h\
9 screen.
cpp screen.hpp conway.
cpp conway.hpp clheir.
cpp.gz clheir.hpp.gz fail.C
)
10 ELSRC
=$(addprefix .
/el-src
/,TAGTEST.EL emacs
/lisp
/progmodes
/etags.el
)
11 ERLSRC
=$(addprefix .
/erl-src
/,gs_dialog.erl
)
12 FORTHSRC
=$(addprefix .
/forth-src
/,test-forth.fth
)
13 FSRC
=$(addprefix .
/f-src
/,entry.for entry.strange_suffix entry.strange
)
14 HTMLSRC
=$(addprefix .
/html-src
/,softwarelibero.html index.shtml algrthms.html software.html
)
15 #JAVASRC=$(addprefix ./java-src/, )
16 LUASRC
=$(addprefix .
/lua-src
/,allegro.lua
)
17 MAKESRC
=$(addprefix .
/make-src
/,Makefile
)
18 OBJCSRC
=$(addprefix .
/objc-src
/,Subprocess.h Subprocess.m PackInsp.h PackInsp.m
)
19 OBJCPPSRC
=$(addprefix .
/objcpp-src
/,SimpleCalc.H SimpleCalc.M
)
20 PASSRC
=$(addprefix .
/pas-src
/,common.pas
)
21 PERLSRC
=$(addprefix .
/perl-src
/,htlmify-cystic yagrip.pl kai-test.pl
)
22 PHPSRC
=$(addprefix .
/php-src
/,lce_functions.php ptest.php sendmail.php
)
23 PSSRC
=$(addprefix .
/ps-src
/,rfc1245.ps
)
24 PROLSRC
=$(addprefix .
/prol-src
/,ordsets.prolog natded.prolog
)
25 PYTSRC
=$(addprefix .
/pyt-src
/,server.py
)
26 TEXSRC
=$(addprefix .
/tex-src
/,testenv.
tex gzip.texi texinfo.
tex nonewline.
tex)
27 YSRC
=$(addprefix .
/y-src
/,parse.y parse.c atest.y cccp.c cccp.y
)
28 SRCS
=${ADASRC} ${ASRC} ${CSRC} ${CPSRC} ${ELSRC} ${ERLSRC} ${FSRC}\
29 ${FORTHSRC} ${HTMLSRC} ${JAVASRC} ${LUASRC} ${MAKESRC} ${OBJCSRC}\
30 ${OBJCPPSRC} ${PASSRC} ${PHPSRC} ${PERLSRC} ${PSSRC} ${PROLSRC} ${PYTSRC}\
32 NONSRCS
=.
/f-src
/entry.strange .
/erl-src
/lists.erl .
/cp-src
/clheir.hpp.gz
34 ETAGS_PROG
=..
/..
/lib-src
/etags
35 CTAGS_PROG
=..
/..
/lib-src
/ctags
37 REGEX
=/[ \t]*DEFVAR_
[A-Z_
\t\n(]+"\([^"]+\
)"/
38 xx="this line is here because of a fontlock bug
42 OPTIONS
=--members
--declarations
--regex
=@regexfile
45 infiles
= $(filter-out ${NONSRCS},${SRCS}) srclist regexfile
47 .PHONY
: check cdiff ETAGS CTAGS
48 # Can't make ediff_1 through ediff_5 .PHONY, as they're implicit.
51 @
$(MAKE
) OPTIONS
='--no-members' ediff_1
52 @
$(MAKE
) OPTIONS
='--declarations --no-members' ediff_2
53 @
$(MAKE
) OPTIONS
='--members' ediff_3
54 @
$(MAKE
) OPTIONS
='--regex=@regexfile --no-members' ediff_4
55 @
$(MAKE
) OPTIONS
='nonexistent --members --declarations --regex=@regexfile' ediff_5
56 @
$(MAKE
) OPTIONS
='--class-qualify --members --declarations --regex=@regexfile' ediff_6
59 ediff
%: ETAGS.good
% ETAGS
${infiles}
60 diff
-u
--suppress-common-lines
--width
=80 ETAGS.good
$* ETAGS
62 cdiff
: CTAGS.good CTAGS
${infiles}
63 diff
-u
--suppress-common-lines
--width
=80 CTAGS.good CTAGS
66 ${RUN} ${ETAGS_PROG} ${OPTIONS} -o
$@
${ARGS}
69 ${RUN} ${CTAGS_PROG} -o
$@
--regex
=@regexfile
${ARGS}
72 @for i in
$(SRCS
); do echo
$$i; done
> srclist
73 @echo
"srclist remade"
76 @echo
' -- This is for GNU Emacs source files' > regexfile
77 @printf
'%s\n' '${REGEX}' >> regexfile
78 @printf
'%s\n' '{c}${REGEX}\\1/m' >> regexfile
79 @echo
"regexfile remade"