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 GOSRC
=$(addprefix .
/go-src
/,test.go test1.go
)
15 HTMLSRC
=$(addprefix .
/html-src
/,softwarelibero.html index.shtml algrthms.html software.html
)
16 #JAVASRC=$(addprefix ./java-src/, )
17 LUASRC
=$(addprefix .
/lua-src
/,allegro.lua
test.lua
)
18 MAKESRC
=$(addprefix .
/make-src
/,Makefile
)
19 OBJCSRC
=$(addprefix .
/objc-src
/,Subprocess.h Subprocess.m PackInsp.h PackInsp.m
)
20 OBJCPPSRC
=$(addprefix .
/objcpp-src
/,SimpleCalc.H SimpleCalc.M
)
21 PASSRC
=$(addprefix .
/pas-src
/,common.pas
)
22 PERLSRC
=$(addprefix .
/perl-src
/,htlmify-cystic yagrip.pl kai-test.pl
)
23 PHPSRC
=$(addprefix .
/php-src
/,lce_functions.php ptest.php sendmail.php
)
24 PSSRC
=$(addprefix .
/ps-src
/,rfc1245.ps
)
25 PROLSRC
=$(addprefix .
/prol-src
/,ordsets.prolog natded.prolog
)
26 PYTSRC
=$(addprefix .
/pyt-src
/,server.py
)
27 RBSRC
=$(addprefix .
/ruby-src
/,test.rb test1.ru
)
28 TEXSRC
=$(addprefix .
/tex-src
/,testenv.
tex gzip.texi texinfo.
tex nonewline.
tex)
29 YSRC
=$(addprefix .
/y-src
/,parse.y parse.c atest.y cccp.c cccp.y
)
30 SRCS
=${ADASRC} ${ASRC} ${CSRC} ${CPSRC} ${ELSRC} ${ERLSRC} ${FSRC}\
31 ${FORTHSRC} ${GOSRC} ${HTMLSRC} ${JAVASRC} ${LUASRC} ${MAKESRC}\
32 ${OBJCSRC} ${OBJCPPSRC} ${PASSRC} ${PHPSRC} ${PERLSRC} ${PSSRC}\
33 ${PROLSRC} ${PYTSRC} ${RBSRC} ${TEXSRC} ${YSRC}
34 NONSRCS
=.
/f-src
/entry.strange .
/erl-src
/lists.erl .
/cp-src
/clheir.hpp.gz
36 ETAGS_PROG
=..
/..
/lib-src
/etags
37 CTAGS_PROG
=..
/..
/lib-src
/ctags
39 REGEX
=/[ \t]*DEFVAR_
[A-Z_
\t\n(]+"\([^"]+\
)"/
40 xx="this line is here because of a fontlock bug
44 OPTIONS
=--members
--declarations
--regex
=@regexfile
47 infiles
= $(filter-out ${NONSRCS},${SRCS}) srclist regexfile
49 .PHONY
: check cdiff ETAGS CTAGS
50 # Can't make ediff_1 through ediff_5 .PHONY, as they're implicit.
53 @
$(MAKE
) OPTIONS
='--no-members' ediff_1
54 @
$(MAKE
) OPTIONS
='--declarations --no-members' ediff_2
55 @
$(MAKE
) OPTIONS
='--members' ediff_3
56 @
$(MAKE
) OPTIONS
='--regex=@regexfile --no-members' ediff_4
57 @
$(MAKE
) OPTIONS
='nonexistent --members --declarations --regex=@regexfile' ediff_5
58 @
$(MAKE
) OPTIONS
='--class-qualify --members --declarations --regex=@regexfile' ediff_6
61 ediff
%: ETAGS.good
% ETAGS
${infiles}
62 diff
-u
--suppress-common-lines
--width
=80 ETAGS.good
$* ETAGS
64 cdiff
: CTAGS.good CTAGS
${infiles}
65 diff
-u
--suppress-common-lines
--width
=80 CTAGS.good CTAGS
68 ${RUN} ${ETAGS_PROG} ${OPTIONS} -o
$@
${ARGS}
71 ${RUN} ${CTAGS_PROG} -o
$@
--regex
=@regexfile
${ARGS}
74 @for i in
$(SRCS
); do echo
$$i; done
> srclist
75 @echo
"srclist remade"
78 @echo
' -- This is for GNU Emacs source files' > regexfile
79 @printf
'%s\n' '${REGEX}' >> regexfile
80 @printf
'%s\n' '{c}${REGEX}\\1/m' >> regexfile
81 @echo
"regexfile remade"