(linenum→info "unix/slp.c:2238")

emacs/22.1/src/Makefile.in

    1: # Makefile for GNU Emacs.
    2: # Copyright (C) 1985, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001, 2002,
    3: #               2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
    4: 
    5: # This file is part of GNU Emacs.
    6: 
    7: # GNU Emacs is free software; you can redistribute it and/or modify
    8: # it under the terms of the GNU General Public License as published by
    9: # the Free Software Foundation; either version 2, or (at your option)
   10: # any later version.
   11: 
   12: # GNU Emacs is distributed in the hope that it will be useful,
   13: # but WITHOUT ANY WARRANTY; without even the implied warranty of
   14: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   15: # GNU General Public License for more details.
   16: 
   17: # You should have received a copy of the GNU General Public License
   18: # along with GNU Emacs; see the file COPYING.  If not, write to
   19: # the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
   20: # Boston, MA 02110-1301, USA.
   21: 
   22: 
   23: # Note that this file is edited by msdos/sed1v2.inp for MSDOS.  That
   24: # script may need modifying in sync with changes made here.  Try to
   25: # avoid shell-ism because the DOS build has to use the DOS shell.
   26: 
   27: # Don't try to replace the cpp processing using autoconf facilities,
   28: # says rms.
   29: 
   30: # Here are the things that we expect ../configure to edit.
   31: # We use $(srcdir) explicitly in dependencies so as not to depend on VPATH.
   32: srcdir=@srcdir@
   33: VPATH=@srcdir@
   34: CC=@CC@
   35: CPP=@CPP@
   36: CFLAGS=@CFLAGS@
   37: CPPFLAGS=@CPPFLAGS@
   38: LDFLAGS=@LDFLAGS@
   39: LN_S=@LN_S@
   40: EXEEXT=@EXEEXT@
   41: version=@version@
   42: # Substitute an assignment for the MAKE variable, because
   43: # BSD doesn't have it as a default.
   44: @SET_MAKE@
   45: # Don't use LIBS.  configure puts stuff in it that either shouldn't be
   46: # linked with Emacs or is duplicated by the cpp stuff below.
   47: # LIBS = @LIBS@
   48: LIBOBJS = @LIBOBJS@
   49: 
   50: # On Xenix and the IBM RS6000, double-dot gets screwed up.
   51: dot = .
   52: dotdot = ${dot}${dot}
   53: lispsource = ${srcdir}/$(dot)$(dot)/lisp/
   54: libsrc = $(dot)$(dot)/lib-src/
   55: etc = $(dot)$(dot)/etc/
   56: oldXMenudir = $(dot)$(dot)/oldXMenu/
   57: lwlibdir = $(dot)$(dot)/lwlib/
   58: lispdir = $(dot)$(dot)/lisp/
   59: 
   60: # Configuration files for .o files to depend on.
   61: M_FILE = ${srcdir}/@machfile@
   62: S_FILE = ${srcdir}/@opsysfile@
   63: config_h = config.h $(M_FILE) $(S_FILE)
   64: 
   65: # ========================== start of cpp stuff =======================
   66: /* From here on, comments must be done in C syntax.  */
   67: 
   68: C_SWITCH_SYSTEM=
   69: 
   70: /* just to be sure the sh is used */
   71: SHELL=/bin/sh
   72: 
   73: #define THIS_IS_MAKEFILE
   74: #define NO_SHORTNAMES
   75: #define NOT_C_CODE
   76: #include "config.h"
   77: 
   78: /* We will not really call alloca;
   79:    do not let the file name alloca.c get messed up.  */
   80: #ifdef alloca
   81: #undef alloca
   82: #endif
   83: 
   84: /* Do not let the file name mktime.c get messed up.  */
   85: #ifdef mktime
   86: #undef mktime
   87: #endif
   88: 
   89: /* Use HAVE_X11 as an alias for X11 in this file
   90:    to avoid problems with X11 as a subdirectory name
   91:    in -I and other such options which pass through this file. */
   92: 
   93: #ifdef X11
   94: #define HAVE_X11
   95: #undef X11
   96: #endif
   97: 
   98: /* On some machines #define register is done in config;
   99:    do not let it interfere with this file.  */
  100: #undef register
  101: 
  102: /* On some systems we may not be able to use the system make command. */
  103: #ifdef MAKE_COMMAND
  104: MAKE = MAKE_COMMAND
  105: #endif
  106: 
  107: #ifdef C_COMPILER
  108: CC = C_COMPILER
  109: #endif
  110: 
  111: /* GNU libc requires ORDINARY_LINK so that its own crt0 is used.
  112:    GNU/Linux is an exception because it uses a funny variant of GNU libc.  */
  113: #ifdef __GNU_LIBRARY__
  114: #ifndef GNU_LINUX
  115: #define ORDINARY_LINK
  116: #endif
  117: #endif
  118: 
  119: /* Some machines do not find the standard C libraries in the usual place.  */
  120: #ifndef ORDINARY_LINK
  121: #ifndef LIB_STANDARD
  122: #define LIB_STANDARD -lc
  123: #endif
  124: #else
  125: #ifndef LIB_STANDARD
  126: #define LIB_STANDARD
  127: #endif
  128: #endif
  129: 
  130: /* Unless inhibited or changed, use -lg to link for debugging.  */
  131: #ifndef LIBS_DEBUG
  132: #define LIBS_DEBUG -lg
  133: #endif
  134: 
  135: /* Some s/SYSTEM.h files define this to request special libraries.  */
  136: #ifndef LIBS_SYSTEM
  137: #define LIBS_SYSTEM
  138: #endif
  139: 
  140: /* Some m/MACHINE.h files define this to request special libraries.  */
  141: #ifndef LIBS_MACHINE
  142: #define LIBS_MACHINE
  143: #endif
  144: 
  145: #ifndef LIB_MATH
  146: #  define LIB_MATH -lm
  147: #endif /* LIB_MATH */
  148: 
  149: /* Some s/SYSTEM.h files define this to request special switches in ld.  */
  150: #ifndef LD_SWITCH_SYSTEM
  151: #if !defined (__GNUC__) && (defined(COFF_ENCAPSULATE) || (defined (BSD_SYSTEM) && !defined (COFF)))
  152: #define LD_SWITCH_SYSTEM -X
  153: #else /* ! defined(COFF_ENCAPSULATE) || (defined (BSD_SYSTEM) && !defined (COFF)) */
  154: #define LD_SWITCH_SYSTEM
  155: #endif /* ! defined(COFF_ENCAPSULATE) || (defined (BSD_SYSTEM) && !defined (COFF)) */
  156: #endif /* LD_SWITCH_SYSTEM */
  157: 
  158: /* This holds special options for linking temacs
  159:    that should be used for linking anything else.  */
  160: #ifndef LD_SWITCH_SYSTEM_TEMACS
  161: #define LD_SWITCH_SYSTEM_TEMACS
  162: #endif
  163: 
  164: /* Some s/SYSTEM.h files define this to request special switches
  165:    for compiling temacs.  */
  166: #ifndef C_SWITCH_SYSTEM_TEMACS
  167: #define C_SWITCH_SYSTEM_TEMACS
  168: #endif
  169: 
  170: /* Some m/MACHINE.h files define this to request special switches in ld.  */
  171: #ifndef LD_SWITCH_MACHINE
  172: #define LD_SWITCH_MACHINE
  173: #endif
  174: 
  175: /* This holds special options for linking temacs
  176:    that should be used for linking anything else.  */
  177: #ifndef LD_SWITCH_MACHINE_TEMACS
  178: #define LD_SWITCH_MACHINE_TEMACS
  179: #endif
  180: 
  181: /* Some m/MACHINE.h files define this to request special switches in cc.  */
  182: #ifndef C_SWITCH_MACHINE
  183: #define C_SWITCH_MACHINE
  184: #endif
  185: 
  186: /* Some s/SYSTEM.h files define this to request special switches in cc.  */
  187: #ifndef C_SWITCH_SYSTEM
  188: #define C_SWITCH_SYSTEM
  189: #endif
  190: 
  191: /* These macros are for switches specifically related to X Windows.  */
  192: #ifndef C_SWITCH_X_MACHINE
  193: #define C_SWITCH_X_MACHINE
  194: #endif
  195: 
  196: #ifndef C_SWITCH_X_SYSTEM
  197: #define C_SWITCH_X_SYSTEM
  198: #endif
  199: 
  200: #ifndef C_SWITCH_X_SITE
  201: #define C_SWITCH_X_SITE
  202: #endif
  203: 
  204: #ifndef LD_SWITCH_X_SITE
  205: #define LD_SWITCH_X_SITE
  206: #endif
  207: 
  208: #ifndef LD_SWITCH_X_DEFAULT
  209: #define LD_SWITCH_X_DEFAULT
  210: #endif
  211: 
  212: /* These can be passed in from config.h to define special load and
  213:    compile switches needed by individual sites */
  214: #ifndef LD_SWITCH_SITE
  215: #define LD_SWITCH_SITE
  216: #endif
  217: 
  218: #ifndef C_SWITCH_SITE
  219: #define C_SWITCH_SITE
  220: #endif
  221: 
  222: #ifndef ORDINARY_LINK
  223: 
  224: #ifndef CRT0_COMPILE
  225: #define CRT0_COMPILE $(CC) -c $(ALL_CFLAGS) C_SWITCH_ASM
  226: #endif
  227: 
  228: #ifndef START_FILES
  229: #ifdef NO_REMAP
  230: #ifdef COFF_ENCAPSULATE
  231: #define START_FILES pre-crt0.o /usr/local/lib/gcc-crt0.o
  232: #else /* ! defined (COFF_ENCAPSULATE) */
  233: #define START_FILES pre-crt0.o /lib/crt0.o
  234: #endif /* ! defined (COFF_ENCAPSULATE) */
  235: #else /* ! defined (NO_REMAP) */
  236: #define START_FILES ecrt0.o
  237: #endif /* ! defined (NO_REMAP) */
  238: #endif /* START_FILES */
  239: STARTFILES = START_FILES
  240: 
  241: #else /* ORDINARY_LINK */
  242: 
  243: /* config.h might want to force START_FILES anyway */
  244: #ifdef START_FILES
  245: STARTFILES = START_FILES
  246: #endif /* START_FILES */
  247: 
  248: #endif /* not ORDINARY_LINK */
  249: 
  250: 
  251: /* cc switches needed to make ``asm'' keyword work.
  252:    Nothing special needed on most machines.  */
  253: #ifndef C_SWITCH_ASM
  254: #define C_SWITCH_ASM
  255: #endif
  256: 
  257: #if HAVE_GTK
  258: #define USE_GTK
  259: TOOLKIT_DEFINES = -DUSE_GTK
  260: #endif
  261: 
  262: #ifdef USE_X_TOOLKIT
  263: #define USE_@X_TOOLKIT_TYPE@
  264: TOOLKIT_DEFINES = -DUSE_@X_TOOLKIT_TYPE@
  265: #else
  266: #ifndef USE_GTK
  267: TOOLKIT_DEFINES =
  268: #endif
  269: #endif
  270: 
  271: /* DO NOT use -R.  There is a special hack described in lastfile.c
  272:    which is used instead.  Some initialized data areas are modified
  273:    at initial startup, then labeled as part of the text area when
  274:    Emacs is dumped for the first time, and never changed again. */
  275: 
  276: /* -Demacs is needed to make some files produce the correct version
  277:    for use in Emacs.
  278: 
  279:    -DHAVE_CONFIG_H is needed for some other files to take advantage of
  280:    the information in ``config.h''.  */
  281: 
  282: /* C_SWITCH_X_SITE must come before C_SWITCH_X_MACHINE and C_SWITCH_X_SYSTEM
  283:    since it may have -I options that should override those two.  */
  284: ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(TOOLKIT_DEFINES) $(MYCPPFLAGS) -I. -I${srcdir} C_SWITCH_MACHINE C_SWITCH_SYSTEM C_SWITCH_SITE C_SWITCH_X_SITE C_SWITCH_X_MACHINE C_SWITCH_X_SYSTEM C_SWITCH_SYSTEM_TEMACS ${CFLAGS_SOUND} ${CFLAGS}
  285: .c.o:
  286:         $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $<
  287: 
  288: #ifndef LIBX10_MACHINE
  289: #define LIBX10_MACHINE
  290: #endif
  291: 
  292: #ifndef LIBX11_MACHINE
  293: #define LIBX11_MACHINE
  294: #endif
  295: 
  296: #ifndef LIBX10_SYSTEM
  297: #define LIBX10_SYSTEM
  298: #endif
  299: 
  300: #ifndef LIBX11_SYSTEM
  301: #define LIBX11_SYSTEM
  302: #endif
  303: 
  304: #ifndef LIB_X11_LIB
  305: #define LIB_X11_LIB -lX11
  306: #endif
  307: 
  308: /* xmenu.c should not be compiled on OSX.  */
  309: #ifndef HAVE_CARBON
  310: XMENU_OBJ = xmenu.o
  311: #endif
  312: 
  313: #ifdef HAVE_X_WINDOWS
  314: 
  315: XOBJ= xterm.o xfns.o xselect.o xrdb.o fontset.o xsmfns.o fringe.o image.o
  316: 
  317: #ifdef HAVE_MENUS
  318: 
  319: #ifdef USE_GTK
  320: GTK_OBJ= gtkutil.o
  321: #endif
  322: 
  323: /* The X Menu stuff is present in the X10 distribution, but missing
  324:    from X11.  If we have X10, just use the installed library;
  325:    otherwise, use our own copy.  */
  326: #ifdef HAVE_X11
  327: #ifdef USE_X_TOOLKIT
  328: OLDXMENU=${lwlibdir}liblw.a
  329: LIBXMENU= $(OLDXMENU)
  330: #else /* not USE_X_TOOLKIT */
  331: OLDXMENU= ${oldXMenudir}libXMenu11.a
  332: LIBXMENU= $(OLDXMENU)
  333: #endif /* not USE_X_TOOLKIT */
  334: #else /* not HAVE_X11 */
  335: LIBXMENU= -lXMenu
  336: #endif /* not HAVE_X11 */
  337: 
  338: #else /* not HAVE_MENUS */
  339: 
  340: /* Otherwise, do not worry about the menu library at all.  */
  341: LIBXMENU=
  342: #endif /* not HAVE_MENUS */
  343: 
  344: #ifdef USE_X_TOOLKIT
  345: #define @X_TOOLKIT_TYPE@
  346: #if defined (LUCID) || defined (ATHENA)
  347: #if HAVE_XAW3D
  348: LIBW= -lXaw3d
  349: #else
  350: LIBW= -lXaw
  351: #endif
  352: #endif
  353: #ifdef MOTIF
  354: #if defined (HAVE_MOTIF_2_1) && defined (HAVE_LIBXP)
  355: #define LIB_MOTIF_EXTRA -lXp
  356: #else
  357: #define LIB_MOTIF_EXTRA
  358: #endif
  359: #ifdef LIB_MOTIF
  360: LIBW= LIB_MOTIF LIB_MOTIF_EXTRA
  361: #else
  362: LIBW= -lXm LIB_MOTIF_EXTRA
  363: #endif
  364: #endif
  365: #ifdef OPEN_LOOK
  366: LIBW= -lXol
  367: #endif
  368: 
  369: #ifdef HAVE_X11XTR6
  370: #ifdef NEED_LIBW
  371: LIBXTR6 = -lSM -lICE -lw
  372: #else
  373: LIBXTR6 = -lSM -lICE
  374: #endif
  375: #endif
  376: 
  377: #ifndef LIBXMU
  378: #define LIBXMU -lXmu
  379: #endif
  380: 
  381: #ifdef LIBXT_STATIC
  382: /* We assume the config files have defined STATIC_OPTION
  383:    since that might depend on the operating system.
  384:    (Do not forget you need different definitions with and without __GNUC__.)  */
  385: LIBXT= STATIC_OPTION $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext DYNAMIC_OPTION
  386: #else /* not LIBXT_STATIC */
  387: LIBXT= $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext
  388: #endif /* not LIBXT_STATIC */
  389: 
  390: #else /* not USE_X_TOOLKIT */
  391: 
  392: #ifdef USE_GTK
  393: LIBW=@GTK_LIBS@
  394: OLDXMENU=
  395: LIBXMENU=
  396: #endif /* USE_GTK */
  397: 
  398: #ifdef HAVE_X_SM
  399: LIBXT=$(LIBW) -lSM -lICE
  400: #else
  401: LIBXT=$(LIBW)
  402: #endif
  403: #endif /* not USE_X_TOOLKIT */
  404: 
  405: #if HAVE_XFT
  406: XFT_LIBS=@XFT_LIBS@
  407: #endif /* HAVE_XFT */
  408: 
  409: #if HAVE_XPM
  410: #ifndef LIBXPM
  411: #define LIBXPM -lXpm
  412: #endif /* not defined LIBXPM */
  413: #else /* not HAVE_XPM */
  414: #define LIBXPM
  415: #endif /* not HAVE_XPM */
  416: 
  417: #if HAVE_JPEG
  418: #ifndef LIBJPEG
  419: #define LIBJPEG -ljpeg
  420: #endif /* not defined LIBJPEG */
  421: #else /* not HAVE_JPEG */
  422: #define LIBJPEG
  423: #endif /* not HAVE_JPEG */
  424: 
  425: #if HAVE_PNG
  426: #ifndef LIBPNG
  427: #define LIBPNG -lpng -lz -lm
  428: #endif /* not defined LIBPNG */
  429: #else /* not HAVE_PNG */
  430: #define LIBPNG
  431: #endif /* not HAVE_PNG */
  432: 
  433: #if HAVE_TIFF
  434: #ifndef LIBTIFF
  435: #define LIBTIFF -ltiff
  436: #endif /* not defined LIBTIFF */
  437: #else /* not HAVE_TIFF */
  438: #define LIBTIFF
  439: #endif /* not HAVE_TIFF */
  440: 
  441: #if HAVE_GIF
  442: #ifndef LIBGIF
  443: #define LIBGIF -lungif
  444: #endif /* not defined LIBGIF */
  445: #else /* not HAVE_GIF */
  446: #define LIBGIF
  447: #endif /* not HAVE_GIF */
  448: 
  449: #ifdef HAVE_X11
  450: /* LD_SWITCH_X_DEFAULT comes after everything else that specifies
  451:    options for where to find X libraries, but before those libraries.  */
  452: X11_LDFLAGS = LD_SWITCH_X_SITE LD_SWITCH_X_DEFAULT
  453: LIBX= $(LIBXMENU) $(X11_LDFLAGS) $(LIBXT) LIBTIFF LIBJPEG LIBPNG LIBGIF LIBXPM LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM $(XFT_LIBS)
  454: #else /* not HAVE_X11 */
  455: LIBX= $(LIBXMENU) LD_SWITCH_X_SITE -lX10 LIBX10_MACHINE LIBX10_SYSTEM
  456: #endif /* not HAVE_X11 */
  457: #else /* not HAVE_X_WINDOWS */
  458: #endif /* not HAVE_X_WINDOWS */
  459: 
  460: LIBSOUND= @LIBSOUND@
  461: CFLAGS_SOUND= @CFLAGS_SOUND@
  462: 
  463: #ifndef ORDINARY_LINK
  464: /* Fix linking if compiled with GCC.  */
  465: #ifdef __GNUC__
  466: 
  467: #if __GNUC__ > 1
  468: 
  469: #ifdef LINKER
  470: #define LINKER_WAS_SPECIFIED
  471: #endif
  472: 
  473: /* Versions of GCC >= 2.0 put their library, libgcc.a, in obscure
  474:    places that are difficult to figure out at make time.  Fortunately,
  475:    these same versions allow you to pass arbitrary flags on to the
  476:    linker, so there is no reason not to use it as a linker.
  477: 
  478:    Well, it is not quite perfect.  The "-nostdlib" keeps GCC from
  479:    searching for libraries in its internal directories, so we have to
  480:    ask GCC explicitly where to find libgcc.a.  */
  481: 
  482: #ifndef LINKER
  483: #define LINKER $(CC) -nostdlib
  484: #endif
  485: 
  486: #ifndef LIB_GCC
  487: /* Ask GCC where to find libgcc.a.  */
  488: #define LIB_GCC `$(CC) -print-libgcc-file-name`
  489: #endif /* not LIB_GCC */
  490: 
  491: GNULIB_VAR = LIB_GCC
  492: 
  493: #ifndef LINKER_WAS_SPECIFIED
  494: /* GCC passes any argument prefixed with -Xlinker directly to the
  495:    linker.  See prefix-args.c for an explanation of why we do not do
  496:    this with the shell''s ``for'' construct.
  497:    Note that some people do not have '.'  in their paths, so we must
  498:    use ./prefix-args.  */
  499: #define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
  500: #else
  501: #define YMF_PASS_LDFLAGS(flags) flags
  502: #endif
  503: 
  504: #else /* __GNUC__ < 2 */
  505: 
  506: #ifndef LIB_GCC
  507: #define LIB_GCC /usr/local/lib/gcc-gnulib
  508: #endif /* not LIB_GCC */
  509: GNULIB_VAR = `if [ -f LIB_GCC ] ; then echo LIB_GCC; else echo; fi`
  510: #endif /* __GNUC__ < 2 */
  511: #else /* not __GNUC__ */
  512: GNULIB_VAR =
  513: 
  514: #endif /* not __GNUC__ */
  515: #endif /* not ORDINARY_LINK */
  516: 
  517: /* Specify address for ld to start loading at,
  518:    if requested by configuration.  */
  519: #ifdef LD_TEXT_START_ADDR
  520: STARTFLAGS = -T LD_TEXT_START_ADDR -e __start
  521: #endif
  522: 
  523: #ifdef ORDINARY_LINK
  524: LD = $(CC)
  525: #else
  526: #ifdef COFF_ENCAPSULATE
  527: LD=$(CC) -nostdlib
  528: #else /* not ORDINARY_LINK */
  529: #ifdef LINKER
  530: LD=LINKER
  531: #else /* not LINKER */
  532: LD=ld
  533: #endif /* not LINKER */
  534: #endif /* not COFF_ENCAPSULATE */
  535: #endif /* not ORDINARY_LINK */
  536: 
  537: /* Flags to pass to LD only for temacs.  */
  538: /* Do not split this line with a backslash.  That can cause trouble with
  539:    some cpps.  */
  540: TEMACS_LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_SYSTEM_TEMACS LD_SWITCH_MACHINE LD_SWITCH_MACHINE_TEMACS LD_SWITCH_SITE
  541: 
  542: /* A macro which other sections of Makefile can redefine to munge the
  543:    flags before they are passed to LD.  This is helpful if you have
  544:    redefined LD to something odd, like "gcc".
  545:    (The YMF prefix is a holdover from the old name "ymakefile".)
  546:   */
  547: #ifndef YMF_PASS_LDFLAGS
  548: #define YMF_PASS_LDFLAGS(flags) flags
  549: #endif
  550: 
  551: /* Allow config.h to specify a replacement file for unexec.c.  */
  552: #ifndef UNEXEC
  553: #define UNEXEC unexec.o
  554: #endif
  555: #ifndef UNEXEC_SRC
  556: #define UNEXEC_SRC unexec.c
  557: #endif
  558: 
  559: INTERVAL_SRC = intervals.h composite.h
  560: 
  561: GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
  562: 
  563: #ifdef MSDOS
  564: #ifdef HAVE_X_WINDOWS
  565: MSDOS_OBJ = dosfns.o msdos.o
  566: #else
  567: MSDOS_OBJ = dosfns.o msdos.o w16select.o
  568: #endif
  569: #endif
  570: 
  571: #ifdef CYGWIN
  572: CYGWIN_OBJ = sheap.o
  573: #endif
  574: 
  575: #ifdef HAVE_CARBON
  576: mac = $(dot)$(dot)/mac/
  577: MAC_OBJ = mac.o macterm.o macfns.o macmenu.o macselect.o fontset.o fringe.o image.o
  578: emacsapp = $(PWD)/$(mac)Emacs.app/
  579: emacsappsrc = ${srcdir}/../mac/Emacs.app/
  580: #endif
  581: 
  582: /* lastfile must follow all files
  583:    whose initialized data areas should be dumped as pure by dump-emacs.  */
  584: obj=    dispnew.o frame.o scroll.o xdisp.o $(XMENU_OBJ) window.o \
  585:         charset.o coding.o category.o ccl.o \
  586:         cm.o term.o xfaces.o $(XOBJ) $(GTK_OBJ)\
  587:         emacs.o keyboard.o macros.o keymap.o sysdep.o \
  588:         buffer.o filelock.o insdel.o marker.o \
  589:         minibuf.o fileio.o dired.o filemode.o \
  590:         cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o \
  591:         alloc.o data.o doc.o editfns.o callint.o \
  592:         eval.o floatfns.o fns.o print.o lread.o \
  593:         abbrev.o syntax.o UNEXEC bytecode.o \
  594:         process.o callproc.o \
  595:         region-cache.o sound.o atimer.o \
  596:         doprnt.o strftime.o intervals.o textprop.o composite.o md5.o \
  597:         $(MSDOS_OBJ) $(MAC_OBJ) $(CYGWIN_OBJ)
  598: 
  599: /* Object files used on some machine or other.
  600:    These go in the DOC file on all machines
  601:    in case they are needed there.  */
  602: SOME_MACHINE_OBJECTS = sunfns.o dosfns.o msdos.o \
  603:   xterm.o xfns.o xmenu.o xselect.o xrdb.o xsmfns.o fringe.o image.o \
  604:   mac.o macterm.o macfns.o macmenu.o macselect.o fontset.o \
  605:   w32.o w32bdf.o w32console.o w32fns.o w32heap.o w32inevt.o \
  606:   w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o
  607: 
  608: 
  609: #ifdef TERMINFO
  610: /* Used to be -ltermcap here.  If your machine needs that,
  611:    define LIBS_TERMCAP in the m/MACHINE.h file.  */
  612: #ifndef LIBS_TERMCAP
  613: #define LIBS_TERMCAP -lcurses
  614: #endif /* LIBS_TERMCAP */
  615: termcapobj = terminfo.o
  616: #else /* ! defined (TERMINFO) */
  617: #ifndef LIBS_TERMCAP
  618: #define LIBS_TERMCAP
  619: termcapobj = termcap.o tparam.o
  620: #else /* LIBS_TERMCAP */
  621: termcapobj = tparam.o
  622: #endif /* LIBS_TERMCAP */
  623: #endif /* ! defined (TERMINFO) */
  624: 
  625: 
  626: #ifndef SYSTEM_MALLOC
  627: 
  628: #ifndef DOUG_LEA_MALLOC
  629: gmallocobj = gmalloc.o
  630: #endif
  631: 
  632: #ifdef REL_ALLOC
  633: rallocobj = ralloc.o
  634: #endif
  635: 
  636: mallocobj = $(gmallocobj) $(rallocobj) vm-limit.o
  637: 
  638: #endif /* SYSTEM_MALLOC */
  639: 
  640: 
  641: #ifndef HAVE_ALLOCA
  642: allocaobj = alloca.o
  643: #else
  644: allocaobj =
  645: #endif
  646: 
  647: #ifdef USE_X_TOOLKIT
  648: widgetobj= widget.o
  649: #else /* not USE_X_TOOLKIT */
  650: widgetobj=
  651: #endif /* not USE_X_TOOLKIT */
  652: 
  653: 
  654: /* define otherobj as list of object files that make-docfile
  655:    should not be told about.  */
  656: #ifdef CYGWIN
  657: /* Cygwin differs because of its unexec(). */
  658: otherobj= $(termcapobj) $(gmallocobj) $(rallocobj) lastfile.o vm-limit.o $(allocaobj) $(widgetobj) $(LIBOBJS)
  659: #else
  660: otherobj= $(termcapobj) lastfile.o $(mallocobj) $(allocaobj) $(widgetobj) $(LIBOBJS)
  661: #endif
  662: 
  663: #ifdef HAVE_MOUSE
  664: #define MOUSE_SUPPORT ${lispsource}mouse.elc \
  665:   ${lispsource}select.elc ${lispsource}scroll-bar.elc
  666: #else
  667: #define MOUSE_SUPPORT
  668: #endif
  669: 
  670: #ifdef VMS
  671: #define VMS_SUPPORT ${lispsource}vmsproc.elc ${lispsource}vms-patch.elc
  672: #else
  673: #define VMS_SUPPORT
  674: #endif
  675: 
  676: #ifdef MSDOS
  677: #define MSDOS_SUPPORT ${lispsource}ls-lisp.elc ${lispsource}disp-table.elc \
  678:  ${lispsource}dos-fns.elc ${lispsource}dos-w32.elc ${lispsource}dos-vars.elc \
  679:  ${lispsource}international/ccl.elc ${lispsource}international/codepage.elc
  680: 
  681: #else
  682: #define MSDOS_SUPPORT
  683: #endif
  684: 
  685: #ifdef HAVE_WINDOW_SYSTEM
  686: #ifdef HAVE_X_WINDOWS
  687: #define WINDOW_SUPPORT ${lispsource}fringe.elc ${lispsource}image.elc \
  688:  ${lispsource}international/fontset.elc ${lispsource}dnd.elc \
  689:  ${lispsource}tool-bar.elc ${lispsource}mwheel.elc ${lispsource}x-dnd.elc
  690: #else
  691: #define WINDOW_SUPPORT ${lispsource}fringe.elc ${lispsource}image.elc \
  692:  ${lispsource}international/fontset.elc ${lispsource}dnd.elc \
  693:  ${lispsource}tool-bar.elc ${lispsource}mwheel.elc
  694: #endif
  695: #else
  696: #define WINDOW_SUPPORT
  697: #endif
  698: 
  699: #ifdef WINDOWSNT
  700: #define WINNT_SUPPORT ${lispsource}ls-lisp.elc ${lispsource}disp-table.elc \
  701:   ${lispsource}dos-w32.elc ${lispsource}w32-vars.elc \
  702:   ${lispsource}w32-fns.elc
  703: #else
  704: #define WINNT_SUPPORT
  705: #endif
  706: 
  707: #ifdef HAVE_WINDOW_SYSTEM
  708: #define TOOLTIP_SUPPORT ${lispsource}tooltip.elc
  709: #else
  710: #define TOOLTIP_SUPPORT
  711: #endif
  712: 
  713: /* List of Lisp files loaded into the dumped Emacs.  It is arranged
  714:    like this because it is easier to generate it semi-mechanically from
  715:    loadup.el this way.
  716: 
  717:    Note that this list should not include lisp files which might not
  718:    be present, like site-load.el and site-init.el; this makefile
  719:    expects them all to be either present or buildable.
  720: 
  721:    Files which are loaded unconditionally should be in shortlisp as well.
  722:    Files included conditionally here should be included (unconditionally)
  723:    in SOME_MACHINE_LISP.  */
  724: 
  725: lisp= \
  726:         ${lispsource}abbrev.elc \
  727:         ${lispsource}buff-menu.elc \
  728:         ${lispsource}button.elc \
  729:         ${lispsource}emacs-lisp/byte-run.elc \
  730:         ${lispsource}cus-face.elc \
  731:         ${lispsource}cus-start.elc \
  732:         ${lispsource}custom.elc \
  733:         ${lispsource}emacs-lisp/backquote.elc \
  734:         ${lispsource}emacs-lisp/lisp-mode.elc \
  735:         ${lispsource}emacs-lisp/lisp.elc \
  736:         ${lispsource}env.elc \
  737:         ${lispsource}faces.elc \
  738:         ${lispsource}files.elc \
  739:         ${lispsource}format.elc \
  740:         ${lispsource}facemenu.elc \
  741:         MOUSE_SUPPORT \
  742:         ${lispsource}emacs-lisp/float-sup.elc \
  743:         ${lispsource}frame.elc \
  744:         ${lispsource}help.elc \
  745:         ${lispsource}indent.elc \
  746:         ${lispsource}isearch.elc \
  747:         ${lispsource}rfn-eshadow.elc \
  748:         ${lispsource}loadup.el \
  749:         ${lispsource}loaddefs.el \
  750:         ${lispsource}bindings.elc \
  751:         ${lispsource}emacs-lisp/map-ynp.elc \
  752:         ${lispsource}menu-bar.elc \
  753:         ${lispsource}international/mule.elc \
  754:         ${lispsource}international/mule-conf.el \
  755:         ${lispsource}international/mule-cmds.elc \
  756:         ${lispsource}international/characters.elc \
  757:         ${lispsource}international/ucs-tables.elc \
  758:         ${lispsource}international/utf-8.elc \
  759:         ${lispsource}international/utf-16.elc \
  760:         ${lispsource}international/latin-1.el \
  761:         ${lispsource}international/latin-2.el \
  762:         ${lispsource}international/latin-3.el \
  763:         ${lispsource}international/latin-4.el \
  764:         ${lispsource}international/latin-5.el \
  765:         ${lispsource}international/latin-8.el \
  766:         ${lispsource}international/latin-9.el \
  767:         ${lispsource}case-table.elc \
  768:         ${lispsource}language/chinese.elc \
  769:         ${lispsource}language/cyrillic.elc \
  770:         ${lispsource}language/indian.elc \
  771:         ${lispsource}language/devanagari.el \
  772:         ${lispsource}language/kannada.el \
  773:         ${lispsource}language/malayalam.el \
  774:         ${lispsource}language/tamil.el \
  775:         ${lispsource}language/english.el \
  776:         ${lispsource}language/ethiopic.elc \
  777:         ${lispsource}language/european.elc \
  778:         ${lispsource}language/czech.el \
  779:         ${lispsource}language/slovak.el \
  780:         ${lispsource}language/romanian.el \
  781:         ${lispsource}language/greek.el \
  782:         ${lispsource}language/hebrew.el \
  783:         ${lispsource}language/japanese.el \
  784:         ${lispsource}language/korean.el \
  785:         ${lispsource}language/lao.el \
  786:         ${lispsource}language/thai.el \
  787:         ${lispsource}language/tibetan.elc \
  788:         ${lispsource}language/vietnamese.elc \
  789:         ${lispsource}language/misc-lang.el \
  790:         ${lispsource}language/utf-8-lang.el \
  791:         ${lispsource}language/georgian.el \
  792:         ${lispsource}paths.el \
  793:         ${lispsource}register.elc \
  794:         ${lispsource}replace.elc \
  795:         ${lispsource}simple.elc \
  796:         ${lispsource}startup.elc \
  797:         ${lispsource}subr.elc \
  798:         ${lispsource}term/tty-colors.elc \
  799:         ${lispsource}font-core.elc \
  800:         ${lispsource}emacs-lisp/syntax.elc \
  801:         ${lispsource}font-lock.elc \
  802:         ${lispsource}jit-lock.elc \
  803:         ${lispsource}textmodes/fill.elc \
  804:         ${lispsource}textmodes/page.elc \
  805:         ${lispsource}textmodes/paragraphs.elc \
  806:         ${lispsource}textmodes/text-mode.elc \
  807:         ${lispsource}emacs-lisp/timer.elc \
  808:         ${lispsource}jka-cmpr-hook.elc \
  809:         ${lispsource}vc-hooks.elc \
  810:         ${lispsource}ediff-hook.elc \
  811:         TOOLTIP_SUPPORT \
  812:         VMS_SUPPORT \
  813:         MSDOS_SUPPORT \
  814:         WINNT_SUPPORT \
  815:         WINDOW_SUPPORT \
  816:         ${lispsource}widget.elc \
  817:         ${lispsource}window.elc \
  818:         ${lispsource}version.el