unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
blob c1df703905e91bde06c791c1963c6873fdc9a64b 3558 bytes (raw)
name: test/manual/etags/Makefile 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
 
ADASRC=$(addprefix ./ada-src/,etags-test-for.ada 2ataspri.adb 2ataspri.ads waroquiers.ada)
ASRC=$(addprefix ./a-src/,empty.zz empty.zz.gz)
CSRC=$(addprefix ./c-src/,abbrev.c .//c.c torture.c getopt.h etags.c\
 exit.c exit.strange_suffix sysdep.h tab.c dostorture.c\
 emacs/src/gmalloc.c emacs/src/regex.h emacs/src/keyboard.c emacs/src/lisp.h\
 machsyscalls.c machsyscalls.h fail.c a/b/b.c) ../etags/c-src/h.h
CPSRC=$(addprefix ./cp-src/,c.C x.cc burton.cpp burton.cpp\
 functions.cpp MDiagArray2.h Range.h\
 screen.cpp screen.hpp conway.cpp conway.hpp clheir.cpp.gz clheir.hpp.gz fail.C)
ELSRC=$(addprefix ./el-src/,TAGTEST.EL emacs/lisp/progmodes/etags.el)
ERLSRC=$(addprefix ./erl-src/,gs_dialog.erl)
FORTHSRC=$(addprefix ./forth-src/,test-forth.fth)
FSRC=$(addprefix ./f-src/,entry.for entry.strange_suffix entry.strange)
GOSRC=$(addprefix ./go-src/,test.go test1.go)
HTMLSRC=$(addprefix ./html-src/,softwarelibero.html index.shtml algrthms.html software.html)
#JAVASRC=$(addprefix ./java-src/, )
LUASRC=$(addprefix ./lua-src/,allegro.lua test.lua)
MAKESRC=$(addprefix ./make-src/,Makefile)
OBJCSRC=$(addprefix ./objc-src/,Subprocess.h Subprocess.m PackInsp.h PackInsp.m)
OBJCPPSRC=$(addprefix ./objcpp-src/,SimpleCalc.H SimpleCalc.M)
PASSRC=$(addprefix ./pas-src/,common.pas)
PERLSRC=$(addprefix ./perl-src/,htlmify-cystic yagrip.pl kai-test.pl)
PHPSRC=$(addprefix ./php-src/,lce_functions.php ptest.php sendmail.php)
PSSRC=$(addprefix ./ps-src/,rfc1245.ps)
PROLSRC=$(addprefix ./prol-src/,ordsets.prolog natded.prolog)
PYTSRC=$(addprefix ./pyt-src/,server.py)
RBSRC=$(addprefix ./ruby-src/,test.rb test1.ru)
SCMSRC=$(addprefix ./scm-src/,test.scm)
TEXSRC=$(addprefix ./tex-src/,testenv.tex gzip.texi texinfo.tex nonewline.tex)
YSRC=$(addprefix ./y-src/,parse.y parse.c atest.y cccp.c cccp.y)
SRCS=${ADASRC} ${ASRC} ${CSRC} ${CPSRC} ${ELSRC} ${ERLSRC} ${FSRC}\
     ${FORTHSRC} ${GOSRC} ${HTMLSRC} ${JAVASRC} ${LUASRC} ${MAKESRC}\
     ${OBJCSRC} ${OBJCPPSRC} ${PASSRC} ${PHPSRC} ${PERLSRC} ${PSSRC}\
     ${PROLSRC} ${PYTSRC} ${RBSRC} ${SCMSRC} ${TEXSRC} ${YSRC}
NONSRCS=./f-src/entry.strange ./erl-src/lists.erl ./cp-src/clheir.hpp.gz

ETAGS_PROG=../../../lib-src/etags
CTAGS_PROG=../../../lib-src/ctags

REGEX=/[ \t]*DEFVAR_[A-Z_ \t\n(]+"\([^"]+\)"/
xx="this line is here because of a fontlock bug

RUN=

OPTIONS=--members --declarations --regex=@regexfile
ARGS=- < srclist

infiles = $(filter-out ${NONSRCS},${SRCS}) srclist regexfile

.PHONY: check cdiff ETAGS CTAGS
# Can't make ediff_1 through ediff_5 .PHONY, as they're implicit.

check:
	@$(MAKE) OPTIONS='--no-members' ediff_1
	@$(MAKE) OPTIONS='--declarations --no-members' ediff_2
	@$(MAKE) OPTIONS='--members' ediff_3
	@$(MAKE) OPTIONS='--regex=@regexfile --no-members' ediff_4
	@$(MAKE) OPTIONS='nonexistent --members --declarations --regex=@regexfile' ediff_5
	@$(MAKE) OPTIONS='--class-qualify --members --declarations --regex=@regexfile' ediff_6
	@$(MAKE) cdiff

ediff%: ETAGS.good% ETAGS ${infiles}
	diff -u --suppress-common-lines --width=80 ETAGS.good$* ETAGS

cdiff: CTAGS.good CTAGS ${infiles}
	diff -u --suppress-common-lines --width=80 CTAGS.good CTAGS

ETAGS: ${infiles}
	${RUN} ${ETAGS_PROG} ${OPTIONS} -o $@ ${ARGS}

CTAGS: ${infiles}
	${RUN} ${CTAGS_PROG} -o $@ --regex=@regexfile ${ARGS}

srclist: Makefile
	@for i in $(SRCS); do echo $$i; done > srclist
	@echo "srclist remade"

regexfile: Makefile
	@echo '	-- This is for GNU Emacs source files' > regexfile
	@printf '%s\n' '${REGEX}' >> regexfile
	@printf '%s\n' '{c}${REGEX}\\1/m' >> regexfile
	@echo "regexfile remade"

debug log:

solving c1df703905 ...
found c1df703905 in https://git.savannah.gnu.org/cgit/emacs.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).