# On Xenix and the IBM RS6000, double-dot gets screwed up.
dot = .
+dotdot = ${dot}${dot}
lispsource = ${srcdir}/$(dot)$(dot)/lisp/
libsrc = $(dot)$(dot)/lib-src/
etc = $(dot)$(dot)/etc/
/* just to be sure the sh is used */
SHELL=/bin/sh
+#define THIS_IS_MAKEFILE
#define NO_SHORTNAMES
#define NOT_C_CODE
#include "config.h"
#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
-#else
+#endif /* not LIBXT_STATIC */
+
+#else /* not USE_X_TOOLKIT */
LIBXT=
-#endif
+#endif /* not USE_X_TOOLKIT */
#ifdef HAVE_X11
/* LD_SWITCH_X_DEFAULT comes after everything else that specifies
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= \
${lispsource}abbrev.elc \
${lispsource}buff-menu.elc \
${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. */
-SOME_MACHINE_LISP = ${lispsource}faces.elc ${lispsource}facemenu.elc \
- ${lispsource}float-sup.elc ${lispsource}frame.elc \
- ${lispsource}menu-bar.elc ${lispsource}mouse.elc \
- ${lispsource}select.elc ${lispsource}scroll-bar.elc \
- ${lispsource}vmsproc.elc ${lispsource}vms-patch.elc \
- ${lispsource}ls-lisp.elc ${lispsource}dos-fns.elc \
- ${lispsource}winnt.elc
+ 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
${etc}DOC: ${libsrc}make-docfile ${obj} ${lisp}
-rm -f ${etc}DOC
${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
- ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${lisp}
+ cd
+ ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
${libsrc}make-docfile:
cd ${libsrc}; ${MAKE} ${MFLAGS} make-docfile
commands.h frame.h window.h macros.h disptab.h keyboard.h syssignal.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 keyboard.h $(config_h)
malloc.o: malloc.c $(config_h)