X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/911398a97f4cdd8f40ff090e40fe2015dd1e0ead..a03f91ada2cec963ec3e73e81dbc8fbd4e8e0cc9:/src/Makefile.in diff --git a/src/Makefile.in b/src/Makefile.in index 0f820dd6f3..a097849e69 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,5 +1,5 @@ # Makefile for GNU Emacs. -# Copyright (C) 1985, 1987, 1988, 1993, 1994 Free Software Foundation, Inc. +# Copyright (C) 1985, 87, 88, 93, 94, 95 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -30,7 +30,8 @@ LN_S=@LN_S@ # On Xenix and the IBM RS6000, double-dot gets screwed up. dot = . -lispdir = ${srcdir}/$(dot)$(dot)/lisp/ +dotdot = ${dot}${dot} +lispsource = ${srcdir}/$(dot)$(dot)/lisp/ libsrc = $(dot)$(dot)/lib-src/ etc = $(dot)$(dot)/etc/ shortnamesdir = $(dot)$(dot)/shortnames/ @@ -53,8 +54,8 @@ C_SWITCH_SYSTEM= /* just to be sure the sh is used */ SHELL=/bin/sh +#define THIS_IS_MAKEFILE #define NO_SHORTNAMES -#define THIS_IS_YMAKEFILE #define NOT_C_CODE #include "config.h" @@ -197,7 +198,7 @@ CC = C_COMPILER #define START_FILES pre-crt0.o /lib/crt0.o #endif /* ! defined (COFF_ENCAPSULATE) */ #else /* ! defined (NO_REMAP) */ -#define START_FILES crt0.o +#define START_FILES ecrt0.o #endif /* ! defined (NO_REMAP) */ #endif /* START_FILES */ STARTFILES = START_FILES @@ -239,6 +240,13 @@ LOCALCPP= localcpp SHORT= shortnames #endif +#ifdef USE_X_TOOLKIT +#define USE_@X_TOOLKIT_TYPE@ +TOOLKIT_DEFINES = -DUSE_@X_TOOLKIT_TYPE@ +#else +TOOLKIT_DEFINES = +#endif + /* DO NOT use -R. There is a special hack described in lastfile.c which is used instead. Some initialized data areas are modified at initial startup, then labeled as part of the text area when @@ -252,7 +260,7 @@ SHORT= shortnames /* C_SWITCH_X_SITE must come before C_SWITCH_X_MACHINE and C_SWITCH_X_SYSTEM since it may have -I options that should override those two. */ -ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAG) -I. -I${srcdir} C_SWITCH_MACHINE C_SWITCH_SYSTEM C_SWITCH_SITE C_SWITCH_X_SITE C_SWITCH_X_MACHINE C_SWITCH_X_SYSTEM ${CFLAGS} +ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(TOOLKIT_DEFINES) $(MYCPPFLAG) -I. -I${srcdir} C_SWITCH_MACHINE C_SWITCH_SYSTEM C_SWITCH_SITE C_SWITCH_X_SITE C_SWITCH_X_MACHINE C_SWITCH_X_SYSTEM ${CFLAGS} .c.o: $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $< @@ -287,10 +295,10 @@ XOBJ= xterm.o xfns.o xfaces.o xmenu.o xselect.o xrdb.o otherwise, use our own copy. */ #ifdef HAVE_X11 #ifdef USE_X_TOOLKIT -OLDXMENU=liblw.a +OLDXMENU=${lwlibdir}liblw.a LIBXMENU= $(OLDXMENU) #else /* not USE_X_TOOLKIT */ -OLDXMENU= libXMenu11.a +OLDXMENU= ${oldXMenudir}libXMenu11.a LIBXMENU= $(OLDXMENU) #endif /* not USE_X_TOOLKIT */ #else /* not HAVE_X11 */ @@ -322,18 +330,35 @@ LIBW= -lXol #endif #ifdef HAVE_X11XTR6 +#ifdef NEED_LIBW +LIBXTR6 = -lSM -lICE -lw +#else LIBXTR6 = -lSM -lICE #endif +#endif -LIBXT= $(LIBW) -lXmu -lXt $(LIBXTR6) -lXext -#else -LIBXT= +#ifndef LIBXMU +#define LIBXMU -lXmu #endif +#ifdef LIBXT_STATIC +/* We assume the config files have defined STATIC_OPTION + since that might depend on the operating system. + (Don't forget you need different definitions with and without __GNUC__.) */ +LIBXT= STATIC_OPTION $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext STATIC_OPTION +#else /* not LIBXT_STATIC */ +LIBXT= $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext +#endif /* not LIBXT_STATIC */ + +#else /* not USE_X_TOOLKIT */ +LIBXT= +#endif /* not USE_X_TOOLKIT */ + #ifdef HAVE_X11 /* LD_SWITCH_X_DEFAULT comes after everything else that specifies options for where to find X libraries, but before those libraries. */ -LIBX= $(LIBXMENU) LD_SWITCH_X_SITE LD_SWITCH_X_DEFAULT $(LIBXT) LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM +X11_LDFLAGS = LD_SWITCH_X_SITE LD_SWITCH_X_DEFAULT +LIBX= $(LIBXMENU) $(X11_LDFLAGS) $(LIBXT) LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM #else /* not HAVE_X11 */ LIBX= $(LIBXMENU) LD_SWITCH_X_SITE -lX10 LIBX10_MACHINE LIBX10_SYSTEM #endif /* not HAVE_X11 */ @@ -415,9 +440,11 @@ LD=ld ALL_LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE LD_SWITCH_SITE $(LDFLAGS) -/* A macro which other sections of ymakefile can redefine to munge the +/* A macro which other sections of Makefile can redefine to munge the flags before they're passed to LD. This is helpful if you have - redefined LD to something odd, like "gcc". */ + redefined LD to something odd, like "gcc". + (The YMF prefix is a holdover from the old name "ymakefile".) + */ #ifndef YMF_PASS_LDFLAGS #define YMF_PASS_LDFLAGS(flags) flags #endif @@ -444,6 +471,23 @@ ALL_LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE LD_SWITCH_SITE $(LDFLAGS) #define GETLOADAVG_OBJ getloadavg.o #endif +#ifdef HAVE_MKTIME +#define MKTIME_OBJ +#else +#define MKTIME_OBJ mktime.o +#endif + +#ifdef MSDOS +#ifdef HAVE_X_WINDOWS +#define MSDOS_OBJ dosfns.o msdos.o +#else +#define MSDOS_OBJ dosfns.o msdos.o xfaces.o xmenu.o +#endif +#else +#define MSDOS_OBJ +#endif + + /* lastfile must follow all files whose initialized data areas should be dumped as pure by dump-emacs. */ obj= dispnew.o frame.o scroll.o xdisp.o window.o \ @@ -456,12 +500,15 @@ obj= dispnew.o frame.o scroll.o xdisp.o window.o \ eval.o floatfns.o fns.o print.o lread.o \ abbrev.o syntax.o UNEXEC mocklisp.o bytecode.o \ process.o callproc.o \ - doprnt.o GETLOADAVG_OBJ + region-cache.o \ + doprnt.o strftime.o MKTIME_OBJ GETLOADAVG_OBJ MSDOS_OBJ /* Object files used on some machine or other. These go in the DOC file on all machines in case they are needed there. */ -SOME_MACHINE_OBJECTS = sunfns.o +SOME_MACHINE_OBJECTS = sunfns.o dosfns.o msdos.o intervals.o textprop.o \ + xterm.o xfns.o xfaces.o xmenu.o xselect.o xrdb.o + #ifdef TERMINFO /* Used to be -ltermcap here. If your machine needs that, @@ -512,20 +559,31 @@ widgetobj= should not be told about. */ otherobj= $(termcapobj) lastfile.o $(mallocobj) $(allocaobj) $(widgetobj) +#ifdef HAVE_FACES +#define FACE_SUPPORT ${lispsource}faces.elc ${lispsource}facemenu.elc +#else +#define FACE_SUPPORT +#endif + #ifdef LISP_FLOAT_TYPE -#define FLOAT_SUPPORT ${lispdir}float-sup.elc +#define FLOAT_SUPPORT ${lispsource}float-sup.elc #else #define FLOAT_SUPPORT #endif #ifdef MULTI_FRAME -#define FRAME_SUPPORT ${lispdir}frame.elc ${lispdir}menu-bar.elc \ - ${lispdir}mouse.elc ${lispdir}select.elc ${lispdir}scroll-bar.elc \ - ${lispdir}faces.elc +#define FRAME_SUPPORT ${lispsource}frame.elc #else #define FRAME_SUPPORT #endif +#ifdef HAVE_MOUSE +#define MOUSE_SUPPORT ${lispsource}menu-bar.elc ${lispsource}mouse.elc \ + ${lispsource}select.elc ${lispsource}scroll-bar.elc +#else +#define MOUSE_SUPPORT +#endif + #ifdef HAVE_X_WINDOWS #define X_WINDOWS_SUPPORT #else @@ -533,55 +591,115 @@ otherobj= $(termcapobj) lastfile.o $(mallocobj) $(allocaobj) $(widgetobj) #endif #ifdef VMS -#define VMS_SUPPORT ${lispdir}vmsproc.elc ${lispdir}vms-patch +#define VMS_SUPPORT ${lispsource}vmsproc.elc ${lispsource}vms-patch.elc #else #define VMS_SUPPORT #endif #ifdef MSDOS -#define MSDOS_SUPPORT ${lispdir}ls-lisp.elc ${lispdir}disp-tab.elc ${lispdir}dos-fns.elc ${lispdir}mouse.elc +#define MSDOS_SUPPORT ${lispsource}ls-lisp.elc ${lispsource}disp-tab.elc ${lispsource}dos-fns.elc #else #define MSDOS_SUPPORT #endif +#ifdef WINDOWSNT +#define WINNT_SUPPORT ${lispsource}ls-lisp.elc ${lispsource}winnt.elc +#else +#define WINNT_SUPPORT +#endif + /* List of Lisp files loaded into the dumped Emacs. It's arranged like this because it's easier to generate it semi-mechanically from loadup.el this way. Note that this list should not include lisp files which might not be present, like site-load.el and site-init.el; this makefile - expects them all to be either present or buildable. */ + expects them all to be either present or buildable. + + Always update shortlisp as well as this variable. */ + lisp= \ - ${lispdir}abbrev.elc \ - ${lispdir}buff-menu.elc \ - ${lispdir}byte-run.elc \ - ${lispdir}c-mode.elc \ - ${lispdir}files.elc \ - ${lispdir}fill.elc \ + ${lispsource}abbrev.elc \ + ${lispsource}buff-menu.elc \ + ${lispsource}byte-run.elc \ + ${lispsource}files.elc \ + ${lispsource}fill.elc \ + ${lispsource}format.elc \ + FACE_SUPPORT \ + MOUSE_SUPPORT \ FLOAT_SUPPORT \ FRAME_SUPPORT \ X_WINDOWS_SUPPORT \ - ${lispdir}help.elc \ - ${lispdir}indent.elc \ - ${lispdir}isearch.elc \ - ${lispdir}lisp-mode.elc \ - ${lispdir}lisp.elc \ - ${lispdir}loaddefs.el \ - ${lispdir}map-ynp.elc \ - ${lispdir}page.elc \ - ${lispdir}paragraphs.elc \ - ${lispdir}paths.el \ - ${lispdir}register.elc \ - ${lispdir}replace.elc \ - ${lispdir}simple.elc \ - ${lispdir}startup.elc \ - ${lispdir}subr.elc \ - ${lispdir}text-mode.elc \ - ${lispdir}vc-hooks.elc \ + ${lispsource}help.elc \ + ${lispsource}indent.elc \ + ${lispsource}isearch.elc \ + ${lispsource}lisp-mode.elc \ + ${lispsource}lisp.elc \ + ${lispsource}loadup.el \ + ${lispsource}loaddefs.el \ + ${lispsource}map-ynp.elc \ + ${lispsource}page.elc \ + ${lispsource}paragraphs.elc \ + ${lispsource}paths.el \ + ${lispsource}register.elc \ + ${lispsource}replace.elc \ + ${lispsource}simple.elc \ + ${lispsource}startup.elc \ + ${lispsource}subr.elc \ + ${lispsource}text-mode.elc \ + ${lispsource}vc-hooks.elc \ + ${lispsource}ediff-hook.elc \ VMS_SUPPORT \ MSDOS_SUPPORT \ - ${lispdir}window.elc \ - ${lispdir}version.el + WINNT_SUPPORT \ + ${lispsource}window.elc \ + ${lispsource}version.el + +/* These are relative file names for the Lisp files + that are loaded unconditionally. This is used in make-docfile. + It need not contain the files that are loaded conditionally + because SOME_MACHINE_LISP has those. */ +shortlisp= \ + ../lisp/abbrev.elc \ + ../lisp/buff-menu.elc \ + ../lisp/byte-run.elc \ + ../lisp/files.elc \ + ../lisp/fill.elc \ + ../lisp/format.elc \ + ../lisp/help.elc \ + ../lisp/indent.elc \ + ../lisp/isearch.elc \ + ../lisp/lisp-mode.elc \ + ../lisp/lisp.elc \ + ../lisp/loadup.el \ + ../lisp/loaddefs.el \ + ../lisp/map-ynp.elc \ + ../lisp/page.elc \ + ../lisp/paragraphs.elc \ + ../lisp/paths.el \ + ../lisp/register.elc \ + ../lisp/replace.elc \ + ../lisp/simple.elc \ + ../lisp/startup.elc \ + ../lisp/subr.elc \ + ../lisp/text-mode.elc \ + ../lisp/vc-hooks.elc \ + ../lisp/ediff-hook.elc \ + ../lisp/window.elc \ + ../lisp/version.el + +/* Lisp files that may or may not be used. + We must unconditionally put them in the DOC file. + We use ../lisp/ to start the file names + to reduce the size of the argument list for make-docfile + for the sake of systems which can't handle large ones. */ +SOME_MACHINE_LISP = ${dotdot}/lisp/faces.elc ${dotdot}/lisp/facemenu.elc \ + ${dotdot}/lisp/float-sup.elc ${dotdot}/lisp/frame.elc \ + ${dotdot}/lisp/menu-bar.elc ${dotdot}/lisp/mouse.elc \ + ${dotdot}/lisp/select.elc ${dotdot}/lisp/scroll-bar.elc \ + ${dotdot}/lisp/vmsproc.elc ${dotdot}/lisp/vms-patch.elc \ + ${dotdot}/lisp/ls-lisp.elc ${dotdot}/lisp/dos-fns.elc \ + ${dotdot}/lisp/winnt.elc /* Construct full set of libraries to be linked. Note that SunOS needs -lm to come before -lc; otherwise, you get @@ -619,10 +737,19 @@ emacs: temacs ${etc}DOC ${lisp} #endif /* ! defined (HAVE_SHM) */ #endif /* ! defined (CANNOT_DUMP) */ +/* We run make-docfile twice because the command line may get too long + on some systems. */ +/* ${SOME_MACHINE_OBJECTS} comes before ${obj} because some files may + or may not be included in ${obj}, but they are always included in + ${SOME_MACHINE_OBJECTS}. Since a file is processed when it is mentioned + for the first time, this prevents any variation between configurations + in the contents of the DOC file. + Likewise for ${SOME_MACHINE_LISP}. */ ${etc}DOC: ${libsrc}make-docfile ${obj} ${lisp} -rm -f ${etc}DOC - ${libsrc}make-docfile -d ${srcdir} ${obj} ${SOME_MACHINE_OBJECTS} \ - ${lisp} > ${etc}DOC + ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC + cd + ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp} ${libsrc}make-docfile: cd ${libsrc}; ${MAKE} ${MFLAGS} make-docfile @@ -637,8 +764,11 @@ temacs: MAKE_PARALLEL $(LOCALCPP) $(SHORT) $(STARTFILES) $(OLDXMENU) ${obj} ${ot -o temacs ${STARTFILES} ${obj} ${otherobj} \ OBJECTS_SYSTEM OBJECTS_MACHINE ${LIBES} +/* We don't use ALL_LDFLAGS because LD_SWITCH_SYSTEM and LD_SWITCH_MACHINE + often contain options that have to do with using Emacs's crt0, + which are only good with temacs. */ prefix-args: prefix-args.c $(config_h) - $(CC) $(ALL_CFLAGS) ${srcdir}/prefix-args.c -o prefix-args + $(CC) $(ALL_CFLAGS) $(LDFLAGS) ${srcdir}/prefix-args.c -o prefix-args /* These are needed for C compilation, on the systems that need them */ #ifdef NEED_CPP @@ -678,8 +808,6 @@ shortnames: #ifdef HAVE_X11 #ifdef USE_X_TOOLKIT $(OLDXMENU): really-lwlib - -rm -f $(OLDXMENU) /* We might have a link to an old version. */ - ${LN_S} ${lwlibdir}liblw.a $(OLDXMENU) /* Encode the values of these two macros in Make variables, so we can use $(...) to substitute their values within "...". */ @@ -699,11 +827,10 @@ really-lwlib: "C_SWITCH_MACHINE=$(C_SWITCH_MACHINE_1)" \ "C_SWITCH_SYSTEM=$(C_SWITCH_SYSTEM_1)" @true /* make -t should not create really-lwlib. */ +.PHONY: really-lwlib #else /* not USE_X_TOOLKIT */ #ifdef HAVE_X_MENU $(OLDXMENU): really-oldXMenu - -rm -f $(OLDXMENU) /* We might have a link to an old version. */ - ${LN_S} ${oldXMenudir}libXMenu11.a $(OLDXMENU) /* Encode the values of these two macros in Make variables, so we can use $(...) to substitute their values within "...". */ @@ -723,18 +850,19 @@ really-oldXMenu: "C_SWITCH_MACHINE=$(C_SWITCH_MACHINE_1)" \ "C_SWITCH_SYSTEM=$(C_SWITCH_SYSTEM_1)" @true /* make -t should not create really-oldXMenu. */ +.PHONY: really-oldXMenu #endif /* HAVE_X_MENU */ #endif /* not USE_X_TOOLKIT */ #endif /* HAVE_X11 */ #endif /* HAVE_X_WINDOWS */ -paths.h: paths.h.in - @echo "The file paths.h needs to be set up from paths.h.in." +paths.h: paths.in + @echo "The file paths.h needs to be set up from paths.in." @echo "Consult the file \`INSTALL' for instructions for building Emacs." exit 1 -config.h: config.h.in - @echo "The file config.h needs to be set up from config.h.in." +config.h: config.in + @echo "The file config.h needs to be set up from config.in." @echo "Consult the file \`INSTALL' for instructions for building Emacs." exit 1 @@ -780,7 +908,7 @@ alloca.o : alloca.s $(config_h) and so rarely changed in ways that do require any. */ abbrev.o: abbrev.c buffer.h commands.h $(config_h) -buffer.o: buffer.c buffer.h commands.h window.h \ +buffer.o: buffer.c buffer.h region-cache.h commands.h window.h \ INTERVAL_SRC blockinput.h $(config_h) callint.o: callint.c window.h commands.h buffer.h mocklisp.h \ keyboard.h $(config_h) @@ -789,15 +917,17 @@ callproc.o: callproc.c paths.h buffer.h commands.h $(config_h) \ casefiddle.o: casefiddle.c syntax.h commands.h buffer.h $(config_h) casetab.o: casetab.c buffer.h $(config_h) cm.o: cm.c cm.h termhooks.h $(config_h) -cmds.o: cmds.c syntax.h buffer.h commands.h $(config_h) +cmds.o: cmds.c syntax.h buffer.h commands.h window.h $(config_h) pre-crt0.o: pre-crt0.c -crt0.o: crt0.c $(config_h) - CRT0_COMPILE ${srcdir}/crt0.c +ecrt0.o: ecrt0.c $(config_h) + CRT0_COMPILE ${srcdir}/ecrt0.c dired.o: dired.c commands.h buffer.h $(config_h) regex.h dispnew.o: dispnew.c commands.h frame.h window.h buffer.h dispextern.h \ - termchar.h termopts.h termhooks.h cm.h disptab.h systty.h systime.h $(config_h) + termchar.h termopts.h termhooks.h cm.h disptab.h systty.h systime.h \ + xterm.h $(config_h) doc.o: doc.c $(config_h) paths.h buffer.h keyboard.h doprnt.o: doprnt.c $(config_h) +dosfns.o: buffer.h termchar.h termhooks.h frame.h msdos.h dosfns.h $(config_h) editfns.o: editfns.c window.h buffer.h systime.h INTERVAL_SRC $(config_h) emacs.o: emacs.c commands.h systty.h syssignal.h process.h INTERVAL_SRC $(config_h) fileio.o: fileio.c window.h buffer.h systime.h INTERVAL_SRC $(config_h) @@ -805,16 +935,19 @@ filelock.o: filelock.c buffer.h paths.h $(config_h) filemode.o: filemode.c $(config_h) getloadavg.o: getloadavg.c $(config_h) indent.o: indent.c frame.h window.h indent.h buffer.h $(config_h) termchar.h \ - termopts.h disptab.h + termopts.h disptab.h region-cache.h insdel.o: insdel.c window.h buffer.h INTERVAL_SRC blockinput.h $(config_h) keyboard.o: keyboard.c termchar.h termhooks.h termopts.h buffer.h \ commands.h frame.h window.h macros.h disptab.h keyboard.h syssignal.h \ - systty.h systime.h dispextern.h intervals.h blockinput.h $(config_h) + systty.h systime.h dispextern.h intervals.h blockinput.h xterm.h $(config_h) keymap.o: keymap.c buffer.h commands.h keyboard.h termhooks.h blockinput.h \ - $(config_h) + puresize.h $(config_h) lastfile.o: lastfile.c $(config_h) -macros.o: macros.c window.h buffer.h commands.h macros.h $(config_h) +macros.o: macros.c window.h buffer.h commands.h macros.h keyboard.h $(config_h) malloc.o: malloc.c $(config_h) +msdos.o: msdos.c msdos.h dosfns.h systime.h termhooks.h dispextern.h \ + termopts.h frame.h window.h $(config_h) +mktime.o: mktime.c $(config_h) gmalloc.o: gmalloc.c $(config_h) ralloc.o: ralloc.c $(config_h) vm-limit.o: vm-limit.c mem-limits.h $(config_h) @@ -825,15 +958,19 @@ mocklisp.o: mocklisp.c buffer.h $(config_h) process.o: process.c process.h buffer.h window.h termhooks.h termopts.h \ commands.h syssignal.h systime.h systty.h syswait.h frame.h $(config_h) regex.o: regex.c syntax.h buffer.h $(config_h) regex.h +region-cache.o: region-cache.c buffer.h region-cache.h frame.o: frame.c xterm.h window.h frame.h termhooks.h commands.h keyboard.h \ buffer.h $(config_h) -scroll.o: scroll.c termchar.h $(config_h) dispextern.h frame.h -search.o: search.c regex.h commands.h buffer.h syntax.h blockinput.h $(config_h) +scroll.o: scroll.c termchar.h dispextern.h frame.h $(config_h) +search.o: search.c regex.h commands.h buffer.h region-cache.h syntax.h \ + blockinput.h $(config_h) +strftime.o: strftime.c $(config_h) + $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -Dstrftime=emacs_strftime $< syntax.o: syntax.c syntax.h buffer.h commands.h $(config_h) sysdep.o: sysdep.c $(config_h) dispextern.h termhooks.h termchar.h termopts.h \ frame.h syssignal.h systty.h systime.h syswait.h blockinput.h window.h term.o: term.c termchar.h termhooks.h termopts.h $(config_h) cm.h frame.h \ - disptab.h + disptab.h keyboard.h termcap.o: termcap.c $(config_h) terminfo.o: terminfo.c $(config_h) tparam.o: tparam.c $(config_h) @@ -850,32 +987,32 @@ xdisp.o: xdisp.c macros.h commands.h indent.h buffer.h dispextern.h \ xfaces.o: xfaces.c dispextern.h frame.h xterm.h buffer.h blockinput.h \ window.h $(config_h) xfns.o: xfns.c buffer.h frame.h window.h keyboard.h xterm.h \ - blockinput.h $(config_h) + blockinput.h paths.h $(config_h) xmenu.o: xmenu.c xterm.h window.h dispextern.h frame.h keyboard.h \ - blockinput.h $(config_h) + blockinput.h puresize.h msdos.h $(config_h) xterm.o: xterm.c xterm.h termhooks.h termopts.h termchar.h window.h \ dispextern.h frame.h disptab.h blockinput.h systime.h syssignal.h \ - gnu.h sink.h sinkmask.h $(config_h) + keyboard.h gnu.h sink.h sinkmask.h $(config_h) xselect.o: xselect.c dispextern.h frame.h xterm.h blockinput.h $(config_h) xrdb.o: xrdb.c $(config_h) hftctl.o: hftctl.c $(config_h) /* The files of Lisp proper */ -alloc.o: alloc.c frame.h window.h buffer.h puresize.h syssignal.h -alloc.o: blockinput.h $(config_h) INTERVAL_SRC -bytecode.o: bytecode.c buffer.h $(config_h) -data.o: data.c buffer.h puresize.h syssignal.h $(config_h) +alloc.o: alloc.c frame.h window.h buffer.h puresize.h syssignal.h keyboard.h \ + blockinput.h $(config_h) INTERVAL_SRC +bytecode.o: bytecode.c buffer.h syntax.h $(config_h) +data.o: data.c buffer.h puresize.h syssignal.h keyboard.h $(config_h) eval.o: eval.c commands.h keyboard.h blockinput.h $(config_h) floatfns.o: floatfns.c $(config_h) fns.o: fns.c commands.h $(config_h) frame.h buffer.h keyboard.h INTERVAL_SRC -print.o: print.c process.h frame.h window.h buffer.h $(config_h) +print.o: print.c process.h frame.h window.h buffer.h keyboard.h $(config_h) lread.o: lread.c commands.h keyboard.h buffer.h paths.h $(config_h) \ termhooks.h /* Text properties support */ textprop.o: textprop.c buffer.h intervals.h $(config_h) -intervals.o: intervals.c buffer.h intervals.h puresize.h $(config_h) +intervals.o: intervals.c buffer.h intervals.h keyboard.h puresize.h $(config_h) /* System-specific programs to be made. OTHER_FILES, OBJECTS_SYSTEM and OBJECTS_MACHINE @@ -893,8 +1030,10 @@ clean: mostlyclean /**/# This is used in making a distribution. /**/# Do not use it on development directories! distclean: clean - rm -f paths.h config.h Makefile Makefile.in ../etc/DOC-* -realclean: distclean + rm -f paths.h config.h Makefile Makefile.c ../etc/DOC-* +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." rm -f TAGS versionclean: -rm -f emacs emacs-* ../etc/DOC* @@ -903,8 +1042,8 @@ extraclean: distclean /* The rule for the [sm] files has to be written a little funny to avoid looking like a C comment to CPP. */ -SOURCES = *.[ch] [sm]/?* COPYING ymakefile \ - config.h.in README COPYING ChangeLog vms.pp-trans +SOURCES = *.[ch] [sm]/?* COPYING Makefile.in \ + config.in paths.in README COPYING ChangeLog vms.pp-trans unlock: chmod u+w $(SOURCES) @@ -915,10 +1054,12 @@ relock: /* Arrange to make a tags table in ../lisp, and another in this dir which includes ../lisp/TAGS by reference. */ ctagsfiles = [a-zA-Z]*.[hc] -lisptagsfiles = ../lisp/[a-zA-Z]*.el ../lisp/term/[a-zA-Z]*.el +lisptagsfiles = ../lisp/[a-zA-Z]*.el TAGS: $(ctagsfiles) - ../lib-src/etags --include=../lisp/TAGS $(ctagsfiles) -../lisp/TAGS: $(lisptagsfiles) - cd ../lisp; $(MAKE) TAGS -tags: TAGS ../lisp/TAGS + export DIR; DIR=`pwd`; cd ${srcdir}; \ + $$DIR/../lib-src/etags --include=../lisp/TAGS \ + --regex='/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' $(ctagsfiles) +${lispsource}TAGS: ${lispsource}$(lisptagsfiles) + cd ${lispsource}; $(MAKE) TAGS +tags: TAGS ${lispsource}TAGS .PHONY: tags