Mercurial > emacs
view src/=Makefile.in @ 10404:631f1dac6f7a
Global polishing, some bugs corrected, dynamic allocation used instead
of fixed length static buffers in many places.
* etags.c (FILEPOS, GET_CHARNO, GET_FILEPOS, max, LINENO): Deleted.
(append_to_tagfile, typedefs, typedefs_and_cplusplus,
constantypedefs, update, vgrind_style, no_warnings,
cxref_style, cplusplus, noindentypedefs): Were int, now logical.
(permit_duplicates): Was a var, now a #define.
(filename_lb): Was global, now local to main.
(main): Open the tag file when in cxref mode.
Use a BUFSIZ size buffer for making the shell commands.
Look at the return value from the system routine.
Exit when cannot open the tag file.
(process_file): Open the file and pass the FILE* to find_entries.
(find_entries): Now void, because does not open the file itself.
(pfnote): Recovering from lack of memory does not work. Removed.
Use savenstr and simplify the code.
(free_tree): Only free the name space if node is named.
(structtag): Now a pointer, not a fixed length array of chars.
(consider_token): Don't take a token as argument. Use savenstr
when saving a tag in structtag. Callers changed.
(TOKEN): Structure changed. Now used only in C_entries.
(TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Deleted.
(C_entries): nameb and savenameb deleted. Use dinamic allocation.
(pfcnt): Deleted. Users updated.
(getit, Asm_labels, Pascal_functions, L_getit, get_scheme,
TEX_getit, prolog_getit): Use dinamic allocation for storing
the tag instead of a fixed size buffer.
author | Francesco Potortì <pot@gnu.org> |
---|---|
date | Thu, 12 Jan 1995 17:05:37 +0000 |
parents | e58fefa3c3ab |
children |
line wrap: on
line source
# DIST: This is the distribution Makefile for Emacs. configure can # DIST: make most of the changes to this file you might want, so try # DIST: that first. MAKE = make # BSD doesn't have it as a default. # ==================== Things `configure' might edit ==================== CC=cc CPP=cc -E CFLAGS=-g C_SWITCH_SYSTEM= srcdir=@srcdir@/src VPATH=@srcdir@/src LN_S=ln -s # ============================= Targets ============================== CPP = $(CC) -E -Is -Im #Note: an alternative is CPP = /lib/cpp # Just to avoid uncertainty. SHELL = /bin/sh SUBMAKEFLAGS = CC='${CC}' LN_S='${LN_S}' CFLAGS='${CFLAGS}' MAKE='${MAKE}' all: doall doall: xmakefile $(MAKE) ${SUBMAKEFLAGS} -f xmakefile ${MFLAGS} all mostlyclean: rm -f temacs prefix-args xmakefile* core \#* *.o libXMenu11.a rm -f ../etc/DOC clean: mostlyclean rm -f emacs-* emacs #This is used in making a distribution. #Do not use it on development directories! distclean: clean rm -f paths.h config.h ../etc/DOC-* realclean: distclean rm -f TAGS versionclean: -rm -f emacs emacs-* ../etc/DOC* extraclean: distclean -rm -f *~ \#* m/*~ s/*~ emacs: doemacs @true doemacs: xmakefile $(MAKE) ${SUBMAKEFLAGS} -f xmakefile ${MFLAGS} emacs temacs: dotemacs @true dotemacs: xmakefile $(MAKE) ${SUBMAKEFLAGS} -f xmakefile ${MFLAGS} temacs SOURCES = *.[ch] [sm]/* COPYING Makefile.in ymakefile \ config.h.in README COPYING ChangeLog vms.pp-trans unlock: chmod u+w $(SOURCES) relock: chmod -w $(SOURCES) chmod +w paths.h ### Some makes, like Ultrix's make, complain if you put a comment in ### the middle of a rule's command list! Dummies. ### The flags for optimization and debugging depend on the ### system, so take an ordinary CFLAGS value and choose the ### appropriate CPP symbols to use in ymakefile. ### If you have a problem with cc -E here, changing ### the definition of CPP above may fix it. # Remake xmakefile whenever we reconfigure even if config.h didn't change. xmakefile: ymakefile config.h ../config.status -rm -f xmakefile xmakefile.new junk.c junk.cpp cp ${srcdir}/ymakefile junk.c ${CPP} -I. -I${srcdir} ${C_SWITCH_SYSTEM} ${CFLAGS} junk.c > junk.cpp < junk.cpp \ sed -e 's/^#.*//' \ -e 's/^[ \f\t][ \f\t]*$$//' \ -e 's/^ / /' \ -e 's|^\(srcdir *=\).*$$|\1'"${srcdir}"'|' \ -e 's|^\(VPATH *=\).*$$|\1'"${srcdir}"'|' \ | sed -n -e '/^..*$$/p' \ > xmakefile.new mv -f xmakefile.new xmakefile chmod 444 xmakefile rm -f junk.c junk.cpp tagsfiles = [a-z]*.h [a-z]*.c ../lisp/[a-z]*.el ../lisp/term/[a-z]*.el TAGS: $(tagsfiles) etags $(tagsfiles) tags: TAGS .PHONY: tags