comparison src/Makefile.in.in @ 18:d95e72db5c07 r19-15b92

Import from CVS: tag r19-15b92
author cvs
date Mon, 13 Aug 2007 08:49:43 +0200
parents 0293115a14e9
children 859a2309aef8
comparison
equal deleted inserted replaced
17:4579af9d8826 18:d95e72db5c07
21 21
22 /* Synched up with: Not synched with FSF. */ 22 /* Synched up with: Not synched with FSF. */
23 23
24 @SET_MAKE@ 24 @SET_MAKE@
25 25
26 /* Some people use these in paths they define. We don't want their paths 26 /* Some people use these in paths they define. We do not want their paths
27 getting changed on them. */ 27 getting changed on them. */
28 #undef sparc 28 #undef sparc
29 #undef sun 29 #undef sun
30 #undef unix 30 #undef unix
31 #undef sgi 31 #undef sgi
59 the VPATH directory, rather than just the dependencies that are not 59 the VPATH directory, rather than just the dependencies that are not
60 themselves targets. Thus, if there is an up-to-date .o file in the 60 themselves targets. Thus, if there is an up-to-date .o file in the
61 in-place location, it will not get recompiled in the not-in-place 61 in-place location, it will not get recompiled in the not-in-place
62 location. 62 location.
63 63
64 The GNU Make `vpath' directive continues this tradition, but at 64 The GNU Make "vpath" directive continues this tradition, but at
65 least lets you restrict the classes of files that it applies to. 65 least lets you restrict the classes of files that it applies to.
66 This allows us to kludge around the problem. */ 66 This allows us to kludge around the problem. */
67 #ifdef USE_GNU_MAKE 67 #ifdef USE_GNU_MAKE
68 vpath %.c @srcdir@ 68 vpath %.c @srcdir@
69 vpath %.h @srcdir@ 69 vpath %.h @srcdir@
70 /* now list files that should NOT be searched in the srcdir. 70 /* now list files that should NOT be searched in the srcdir.
71 This includes any .c or .h that's built from something else 71 This includes any .c or .h that is built from something else
72 (e.g. a .in file). */ 72 (e.g. a .in file). */
73 vpath config.h 73 vpath config.h
74 vpath paths.h 74 vpath paths.h
75 vpath Emacs.ad.h 75 vpath Emacs.ad.h
76 #else 76 #else
93 # define LCCFLAGS 93 # define LCCFLAGS
94 # define LCCLINK 94 # define LCCLINK
95 #endif 95 #endif
96 96
97 /* On some machines #define register is done in config; 97 /* On some machines #define register is done in config;
98 don't let it interfere with this file. */ 98 do not let it interfere with this file. */
99 #undef register 99 #undef register
100 100
101 /* On some systems we may not be able to use the system make command. */ 101 /* On some systems we may not be able to use the system make command. */
102 #ifdef MAKE_COMMAND 102 #ifdef MAKE_COMMAND
103 MAKE = MAKE_COMMAND 103 MAKE = MAKE_COMMAND
105 105
106 #ifdef C_COMPILER 106 #ifdef C_COMPILER
107 CC = C_COMPILER 107 CC = C_COMPILER
108 #endif 108 #endif
109 109
110 /* Some machines don't find the standard C libraries in the usual place. */ 110 /* Some machines do not find the standard C libraries in the usual place. */
111 #ifndef ORDINARY_LINK 111 #ifndef ORDINARY_LINK
112 #ifndef LIB_STANDARD 112 #ifndef LIB_STANDARD
113 #define LIB_STANDARD -lc 113 #define LIB_STANDARD -lc
114 #endif 114 #endif
115 #else 115 #else
242 /* If user wants to optimize, this is how. */ 242 /* If user wants to optimize, this is how. */
243 #ifndef C_OPTIMIZE_SWITCH 243 #ifndef C_OPTIMIZE_SWITCH
244 #define C_OPTIMIZE_SWITCH -O 244 #define C_OPTIMIZE_SWITCH -O
245 #endif 245 #endif
246 246
247 /* cc switches needed to make `asm' keyword work. 247 /* cc switches needed to make "asm" keyword work.
248 Nothing special needed on most machines. */ 248 Nothing special needed on most machines. */
249 #ifndef C_SWITCH_ASM 249 #ifndef C_SWITCH_ASM
250 #define C_SWITCH_ASM 250 #define C_SWITCH_ASM
251 #endif 251 #endif
252 252
420 420
421 /* -Demacs is needed to make some files produce the correct version 421 /* -Demacs is needed to make some files produce the correct version
422 for use in Emacs. 422 for use in Emacs.
423 423
424 -DHAVE_CONFIG_H is needed for some other files to take advantage of 424 -DHAVE_CONFIG_H is needed for some other files to take advantage of
425 the information in `config.h'. */ 425 the information in "config.h". */
426 426
427 /* C_SWITCH_X_SITE must come before C_SWITCH_X_MACHINE and C_SWITCH_X_SYSTEM 427 /* C_SWITCH_X_SITE must come before C_SWITCH_X_MACHINE and C_SWITCH_X_SYSTEM
428 since it may have -I options that should override those two. */ 428 since it may have -I options that should override those two. */
429 429
430 CPPFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAG) -I. \ 430 CPPFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAG) -I. \
598 #define DIALOG_NS_OBJS 598 #define DIALOG_NS_OBJS
599 #endif 599 #endif
600 #define NSOBJS console-ns.o device-ns.o DIALOG_NS_OBJS event-ns.o frame-ns.o \ 600 #define NSOBJS console-ns.o device-ns.o DIALOG_NS_OBJS event-ns.o frame-ns.o \
601 glyphs-ns.o MENUBAR_NS_OBJS nsselect.o objects-ns.o \ 601 glyphs-ns.o MENUBAR_NS_OBJS nsselect.o objects-ns.o \
602 redisplay-ns.o SCROLLBAR_NS_OBJS TOOLBAR_NS_OBJS 602 redisplay-ns.o SCROLLBAR_NS_OBJS TOOLBAR_NS_OBJS
603 603
604 #else 604 #else
605 # define NSOBJS 605 # define NSOBJS
606 #endif /* HAVE_NEXTSTEP */ 606 #endif /* HAVE_NEXTSTEP */
607 607
608 #ifdef DYNODUMP 608 #ifdef DYNODUMP
616 #if __GNUC__ > 1 616 #if __GNUC__ > 1
617 617
618 /* Versions of GCC >= 2.0 put their library, libgcc.a, in obscure 618 /* Versions of GCC >= 2.0 put their library, libgcc.a, in obscure
619 places that are difficult to figure out at make time. Fortunately, 619 places that are difficult to figure out at make time. Fortunately,
620 these same versions allow you to pass arbitrary flags on to the 620 these same versions allow you to pass arbitrary flags on to the
621 linker, so there's no reason not to use it as a linker. 621 linker, so there is no reason not to use it as a linker.
622 622
623 Well, it's not quite perfect. The `-nostdlib' keeps GCC from 623 Well, it is not quite perfect. The "-nostdlib" keeps GCC from
624 searching for libraries in its internal directories, so we have to 624 searching for libraries in its internal directories, so we have to
625 ask GCC explicitly where to find libgcc.a. */ 625 ask GCC explicitly where to find libgcc.a. */
626 626
627 #ifndef LINKER 627 #ifndef LINKER
628 #define LINKER $(CC) -nostdlib 628 #define LINKER $(CC) -nostdlib
629 /* GCC passes any argument prefixed with -Xlinker directly to the 629 /* GCC passes any argument prefixed with -Xlinker directly to the
630 linker. See prefix-args.c for an explanation of why we don't do 630 linker. See prefix-args.c for an explanation of why we do not do
631 this with the shell's `for' construct. 631 this with the shell "for" construct.
632 Note that some people don't have '.' in their paths, so we must 632 Note that some people do not have "." in their paths, so we must
633 use ./prefix-args. */ 633 use ./prefix-args. */
634 #define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags` 634 #define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
635 #endif /* LINKER */ 635 #endif /* LINKER */
636 636
637 #ifndef LIB_GCC 637 #ifndef LIB_GCC
677 #endif /* ! defined (LINKER) */ 677 #endif /* ! defined (LINKER) */
678 #endif /* ! defined (COFF_ENCAPSULATE) */ 678 #endif /* ! defined (COFF_ENCAPSULATE) */
679 #endif /* not ORDINARY_LINK */ 679 #endif /* not ORDINARY_LINK */
680 680
681 /* A macro which other sections of the makefile can redefine to munge the 681 /* A macro which other sections of the makefile can redefine to munge the
682 flags before they're passed to LD. This is helpful if you have 682 flags before they are passed to LD. This is helpful if you have
683 redefined LD to something odd, like "gcc". */ 683 redefined LD to something odd, like "gcc". */
684 #ifndef YMF_PASS_LDFLAGS 684 #ifndef YMF_PASS_LDFLAGS
685 #define YMF_PASS_LDFLAGS(flags) flags 685 #define YMF_PASS_LDFLAGS(flags) flags
686 #endif 686 #endif
687 687
914 914
915 # ifdef EXTERNAL_WIDGET 915 # ifdef EXTERNAL_WIDGET
916 # define EXTERNAL_WIDGET_OBJS ExternalShell.o extw-Xt-nonshared.o extw-Xlib-nonshared.o 916 # define EXTERNAL_WIDGET_OBJS ExternalShell.o extw-Xt-nonshared.o extw-Xlib-nonshared.o
917 917
918 /* Now we try to figure out how to link a shared library. 918 /* Now we try to figure out how to link a shared library.
919 If we can't figure it out, leave EXTW_LINK undefined and a shared 919 If we can not figure it out, leave EXTW_LINK undefined and a shared
920 library will not be created. */ 920 library will not be created. */
921 921
922 # ifdef USE_GCC 922 # ifdef USE_GCC
923 # ifdef USG5 923 # ifdef USG5
924 # define EXTW_LINK(objs, output) $(CC) -shared objs -Xlinker -z -Xlinker text -o output 924 # define EXTW_LINK(objs, output) $(CC) -shared objs -Xlinker -z -Xlinker text -o output
925 /* I can't figure out how to do shared a.out libraries, so just punt. */ 925 /* I can not figure out how to do shared a.out libraries, so just punt. */
926 # elif !defined (LINUX) || defined (__ELF__) 926 # elif !defined (LINUX) || defined (__ELF__)
927 # define EXTW_LINK(objs, output) $(CC) -shared objs -o output 927 # define EXTW_LINK(objs, output) $(CC) -shared objs -o output
928 # endif 928 # endif
929 # elif defined (USG5) 929 # elif defined (USG5)
930 # if defined (IRIX) 930 # if defined (IRIX)
1117 #define MOUSE_LISP 1117 #define MOUSE_LISP
1118 #endif 1118 #endif
1119 1119
1120 /* List of Lisp files loaded into the dumped Emacs. 1120 /* List of Lisp files loaded into the dumped Emacs.
1121 Every file that is loaded from loadup.el must be enumerated 1121 Every file that is loaded from loadup.el must be enumerated
1122 here, or the functions won't have docstrings. 1122 here, or the functions will not have docstrings.
1123 This is dumb - this list should be generated automatically. 1123 This is dumb - this list should be generated automatically.
1124 [Note: "version.el" is included in the doc separately, but is not listed 1124 [Note: "version.el" is included in the doc separately, but is not listed
1125 here because we don't want things to appear to be out-of-date just 1125 here because we do not want things to appear to be out-of-date just
1126 because the version number has been incremented. -- D.N.G. 8/28/93] 1126 because the version number has been incremented. -- D.N.G. 8/28/93]
1127 */ 1127 */
1128 /* loaddefs is now included handled by the SUNPRO_LISP define because 1128 /* loaddefs is now included handled by the SUNPRO_LISP define because
1129 SparcWorks support requires an altered version. */ 1129 SparcWorks support requires an altered version. */
1130 lisp= ${lispdir}paths.el \ 1130 lisp= ${lispdir}paths.el \
1156 ${lispdir}packages/vc-hooks.elc \ 1156 ${lispdir}packages/vc-hooks.elc \
1157 ${lispdir}prim/replace.elc ${lispdir}prim/specifier.elc \ 1157 ${lispdir}prim/replace.elc ${lispdir}prim/specifier.elc \
1158 ${lispdir}modes/auto-show.elc SUNPRO_LISP TTY_LISP \ 1158 ${lispdir}modes/auto-show.elc SUNPRO_LISP TTY_LISP \
1159 ${lispdir}bytecomp/bytecomp-runtime.elc FLOAT_LISP EPOCH_LISP \ 1159 ${lispdir}bytecomp/bytecomp-runtime.elc FLOAT_LISP EPOCH_LISP \
1160 ${lispdir}prim/itimer.elc ${lispdir}ediff/ediff-hook.elc \ 1160 ${lispdir}prim/itimer.elc ${lispdir}ediff/ediff-hook.elc \
1161 ${lispdir}custom/custom.elc ${lispdir}custom/widget.elc \
1162 ${lispdir}w3/w3-sysdp.elc ${lispdir}w3/font.elc \
1161 ${lispdir}packages/fontl-hooks.elc SCROLLBAR_LISP \ 1163 ${lispdir}packages/fontl-hooks.elc SCROLLBAR_LISP \
1162 ${lispdir}prim/buffer.elc MENUBAR_LISP \ 1164 ${lispdir}prim/buffer.elc MENUBAR_LISP \
1163 ${lispdir}packages/buff-menu.elc DIALOG_LISP \ 1165 ${lispdir}packages/buff-menu.elc DIALOG_LISP \
1164 ${lispdir}modes/abbrev.elc X11_LISP NS_LISP ENERGIZE_LISP TOOLTALK_LISP 1166 ${lispdir}modes/abbrev.elc X11_LISP NS_LISP ENERGIZE_LISP TOOLTALK_LISP
1165 1167
1166 /* Other Lisp files that are not dumped out but where it's convenient 1168 /* Other Lisp files that are not dumped out but where it is convenient
1167 (or required?) for them to be byte-compiled early, before xemacs 1169 (or required?) for them to be byte-compiled early, before xemacs
1168 is dumped out. Don't list them in ${lisp} because then the doc-snarfing 1170 is dumped out. Do not list them in ${lisp} because then the doc-snarfing
1169 routines get confused. */ 1171 routines get confused. */
1170 otherlisp= ${lispdir}bytecomp/bytecomp.elc \ 1172 otherlisp= ${lispdir}bytecomp/bytecomp.elc \
1171 ${lispdir}bytecomp/byte-optimize.elc \ 1173 ${lispdir}bytecomp/byte-optimize.elc \
1172 ${lispdir}utils/advice.elc 1174 ${lispdir}utils/advice.elc
1173 1175
1431 CPP = ./localcpp 1433 CPP = ./localcpp
1432 localcpp: 1434 localcpp:
1433 cd ${cppdir}; ${MAKE} ${MFLAGS} EMACS=-DEMACS 1435 cd ${cppdir}; ${MAKE} ${MFLAGS} EMACS=-DEMACS
1434 ln ${cppdir}cpp localcpp /* Name where ALL_CFLAGS will refer to it */ 1436 ln ${cppdir}cpp localcpp /* Name where ALL_CFLAGS will refer to it */
1435 /* cc appears to be cretinous and require all of these to exist 1437 /* cc appears to be cretinous and require all of these to exist
1436 if -B is specified -- we can't use one local pass and let the 1438 if -B is specified -- we can not use one local pass and let the
1437 others be the standard ones. What a loser. 1439 others be the standard ones. What a loser.
1438 We can't even use ln, since they are probably 1440 We can not even use ln, since they are probably
1439 on different disks. */ 1441 on different disks. */
1440 cp /lib/ccom localccom 1442 cp /lib/ccom localccom
1441 -cp /lib/optim localoptim 1443 -cp /lib/optim localoptim
1442 -cp /lib/c2 localc2 1444 -cp /lib/c2 localc2
1443 cp /bin/as localas 1445 cp /bin/as localas
1485 /* $(CPP) is cc -E, which may get confused by filenames 1487 /* $(CPP) is cc -E, which may get confused by filenames
1486 that do not end in .c. So copy file to a safe name. */ 1488 that do not end in .c. So copy file to a safe name. */
1487 cp ${srcdir}/alloca.s allocatem.c 1489 cp ${srcdir}/alloca.s allocatem.c
1488 /* Remove any ^L, blank lines, and preprocessor comments, 1490 /* Remove any ^L, blank lines, and preprocessor comments,
1489 since some assemblers barf on them. Use a different basename for the 1491 since some assemblers barf on them. Use a different basename for the
1490 output file, since some stupid compilers (Green Hill's) use that 1492 output file, since some stupid compilers (Green Hill) use that
1491 name for the intermediate assembler file. */ 1493 name for the intermediate assembler file. */
1492 $(CPP) $(CPPFLAGS) $(ALL_CFLAGS) allocatem.c | \ 1494 $(CPP) $(CPPFLAGS) $(ALL_CFLAGS) allocatem.c | \
1493 sed -e 's/ //' -e 's/^#.*//' | \ 1495 sed -e 's/ //' -e 's/^#.*//' | \
1494 sed -n -e '/^..*$$/p' > allocax.s 1496 sed -n -e '/^..*$$/p' > allocax.s
1495 -rm -f alloca.o 1497 -rm -f alloca.o
1585 1587
1586 obj_dep = $(objs:.o=.dep) 1588 obj_dep = $(objs:.o=.dep)
1587 1589
1588 gnu-depend: $(obj_dep) 1590 gnu-depend: $(obj_dep)
1589 /* #### Needs a bit of work: it doesn't see the object files that 1591 /* #### Needs a bit of work: it doesn't see the object files that
1590 we aren't compiling */ 1592 we are not compiling */
1591 cat $(obj_dep) | sh ${libsrc}process-gnu-depends.sh > depend.out 1593 cat $(obj_dep) | sh ${libsrc}process-gnu-depends.sh > depend.out
1592 1594
1593 #endif /* GCC */ 1595 #endif /* GCC */
1594 1596
1595 /*** Dependency processing using makedepend ***/ 1597 /*** Dependency processing using makedepend ***/