annotate src/Makefile.in.in @ 793:e38acbeb1cae

[xemacs-hg @ 2002-03-29 04:46:17 by ben] lots o' fixes etc/ChangeLog: New file. Separated out all entries for etc/ into their own ChangeLog. Includes entries for the following files: etc/BABYL, etc/BETA, etc/CHARSETS, etc/DISTRIB, etc/Emacs.ad, etc/FTP, etc/GNUS-NEWS, etc/GOATS, etc/HELLO, etc/INSTALL, etc/MACHINES, etc/MAILINGLISTS, etc/MSDOS, etc/MYTHOLOGY, etc/NEWS, etc/OXYMORONS, etc/PACKAGES, etc/README, etc/TUTORIAL, etc/TUTORIAL.de, etc/TUTORIAL.ja, etc/TUTORIAL.ko, etc/TUTORIAL.se, etc/aliases.ksh, etc/altrasoft-logo.xpm, etc/check_cygwin_setup.sh, etc/custom/example-themes/europe-theme.el, etc/custom/example-themes/ex-custom-file, etc/custom/example-themes/example-theme.el, etc/e/eterm.ti, etc/edt-user.doc, etc/enriched.doc, etc/etags.1, etc/gnuserv.1, etc/gnuserv.README, etc/package-index.LATEST.gpg, etc/package-index.LATEST.pgp, etc/photos/jan.png, etc/recycle.xpm, etc/refcard.tex, etc/sample.Xdefaults, etc/sample.emacs, etc/sgml/CATALOG, etc/sgml/HTML32.dtd, etc/skk/SKK.tut.E, etc/smilies/Face_ase.xbm, etc/smilies/Face_ase2.xbm, etc/smilies/Face_ase3.xbm, etc/smilies/Face_smile.xbm, etc/smilies/Face_weep.xbm, etc/sounds, etc/toolbar, etc/toolbar/workshop-cap-up.xpm, etc/xemacs-ja.1, etc/xemacs.1, etc/yow.lines, etc\BETA, etc\NEWS, etc\README, etc\TUTORIAL, etc\TUTORIAL.de, etc\check_cygwin_setup.sh, etc\sample.init.el, etc\unicode\README, etc\unicode\mule-ucs\*, etc\unicode\other\* unicode/unicode-consortium/8859-16.TXT: New file. mule/english.el: Define this charset now, since a bug was fixed that formerly prevented it. mule/ethio-util.el: Fix compile errors involving Unicode `characters', which should be integers. Makefile.in.in: Always include gui.c, to fix compile error when TTY-only. EmacsFrame.c, abbrev.c, alloc.c, buffer.c, buffer.h, bytecode.c, bytecode.h, callint.c, callproc.c, casetab.c, casetab.h, charset.h, chartab.c, chartab.h, cmds.c, console-msw.c, console-msw.h, console-tty.c, console-x.c, console-x.h, console.c, console.h, data.c, database.c, device-gtk.c, device-msw.c, device-x.c, device.c, device.h, dialog-msw.c, doc.c, doprnt.c, dumper.c, dynarr.c, editfns.c, eldap.c, eldap.h, elhash.c, elhash.h, emacs.c, eval.c, event-Xt.c, event-gtk.c, event-msw.c, event-stream.c, event-tty.c, event-unixoid.c, events.c, events.h, extents.c, extents.h, faces.c, faces.h, file-coding.c, file-coding.h, fileio.c, filelock.c, fns.c, frame-gtk.c, frame-msw.c, frame-tty.c, frame-x.c, frame.c, frame.h, free-hook.c, general-slots.h, glyphs-eimage.c, glyphs-gtk.c, glyphs-msw.c, glyphs-widget.c, glyphs-x.c, glyphs.c, glyphs.h, gpmevent.c, gtk-xemacs.c, gui-msw.c, gui-x.c, gui-x.h, gui.c, gui.h, gutter.c, gutter.h, indent.c, input-method-xlib.c, insdel.c, keymap.c, keymap.h, lisp-disunion.h, lisp-union.h, lisp.h, lread.c, lrecord.h, lstream.c, lstream.h, marker.c, menubar-gtk.c, menubar-msw.c, menubar-x.c, menubar.c, minibuf.c, mule-canna.c, mule-ccl.c, mule-charset.c, mule-wnnfns.c, native-gtk-toolbar.c, objects-msw.c, objects-tty.c, objects-x.c, objects.c, objects.h, opaque.c, opaque.h, postgresql.c, postgresql.h, print.c, process-unix.c, process.c, process.h, rangetab.c, rangetab.h, redisplay-gtk.c, redisplay-msw.c, redisplay-output.c, redisplay-tty.c, redisplay-x.c, redisplay.c, scrollbar-gtk.c, scrollbar-msw.c, scrollbar-x.c, scrollbar.c, scrollbar.h, search.c, select-gtk.c, select-x.c, sound.c, specifier.c, specifier.h, strftime.c, symbols.c, symeval.h, syntax.h, text.c, text.h, toolbar-common.c, toolbar-msw.c, toolbar.c, toolbar.h, tooltalk.c, tooltalk.h, ui-gtk.c, ui-gtk.h, undo.c, vm-limit.c, window.c, window.h: Eliminate XSETFOO. Replace all usages with wrap_foo(). Make symbol->name a Lisp_Object, not Lisp_String *. Eliminate nearly all uses of Lisp_String * in favor of Lisp_Object, and correct macros so most of them favor Lisp_Object. Create new error-behavior ERROR_ME_DEBUG_WARN -- output warnings, but at level `debug' (usually ignored). Use it when instantiating specifiers, so problems can be debugged. Move log-warning-minimum-level into C so that we can optimize ERROR_ME_DEBUG_WARN. Fix warning levels consistent with new definitions. Add default_ and parent fields to char table; not yet implemented. New fun Dynarr_verify(); use for further error checking on Dynarrs. Rearrange code at top of lisp.h in conjunction with dynarr changes. Fix eifree(). Use Eistrings in various places (format_event_object(), where_is_to_char(), and callers thereof) to avoid fixed-size strings buffers. New fun write_eistring(). Reindent and fix GPM code to follow standards. Set default MS Windows font to Lucida Console (same size as Courier New but less interline spacing, so more lines fit). Increase default frame size on Windows to 50 lines. (If that's too big for the workspace, the frame will be shrunk as necessary.) Fix problem with text files with no newlines (). (Change `convert-eol' coding system to use `nil' for autodetect, consistent with make-coding-system.) Correct compile warnings in vm-limit.c. Fix handling of reverse-direction charsets to avoid errors when opening (e.g.) mule-ucs/lisp/reldata/uiso8859-6.el. Recode some object printing methods to use write_fmt_string() instead of a fixed buffer and sprintf. Turn on display of png comments as warnings (level `info'), now that they're unobtrusive. Revamped the sound documentation. Fixed bug in redisplay w.r.t. hscroll/truncation/continuation glyphs causing jumping up and down of the lines, since they're bigger than the line size. (It was seen most obviously when there's a horizontal scroll bar, e.g. do C-h a glyph or something like that.) The problem was that the glyph-contrib-p setting on glyphs was ignored even if it was set properly, which it wasn't until now.
author ben
date Fri, 29 Mar 2002 04:49:13 +0000
parents 79940b592197
children 6728e641994e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 ## Makefile for src subdirectory in XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 ## Copyright (C) 1985, 1987, 1988, 1993, 1994 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 ## Copyright (C) 1994, 1995 Board of Trustees, University of Illinois
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 ## Copyright (C) 1996, 1997 Sun Microsystems, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 ## Copyright (C) 1998, 1999 J. Kean Johnston.
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
6 ## Copyright (C) 2001, 2002 Ben Wing.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 ## This file is part of XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 ## XEmacs is free software; you can redistribute it and/or modify it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 ## under the terms of the GNU General Public License as published by the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 ## Free Software Foundation; either version 2, or (at your option) any
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 ## later version.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 ## XEmacs is distributed in the hope that it will be useful, but WITHOUT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 ## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 ## for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 ## You should have received a copy of the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 ## along with XEmacs; see the file COPYING. If not, write to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 ## the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 ## Boston, MA 02111-1307, USA.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 ## Synched up with: Not synched with FSF.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 PROGNAME=@PROGNAME@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
29 #define NOT_C_CODE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
30 #include "config.h"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
31
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
32 #ifdef PDUMP
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
33 DUMP_TARGET = ${PROGNAME}.dmp
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
34 EXE_TARGET = ${PROGNAME}
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
35 DUMP_ID = dump-id.o
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
36 #else
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
37 DUMP_TARGET = ${PROGNAME}
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
38 EXE_TARGET = temacs
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
39 #endif
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
40
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
41 all: ${DUMP_TARGET}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 .PHONY : all release dump-elc dump-elcs all-elc all-elcs lint
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 ## For performance and consistency, no built-in rules.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 .SUFFIXES:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 .SUFFIXES: .c .h .o .i .s .dep
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 #ifdef USE_GNU_MAKE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 RECURSIVE_MAKE=$(MAKE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 @SET_MAKE@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 RECURSIVE_MAKE=@RECURSIVE_MAKE@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 SHELL=/bin/sh
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 RM = rm -f
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 lispdir = ${srcdir}/../lisp/
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 moduledir = ${srcdir}/../modules/
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 libsrc = ../lib-src/
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 etcdir = ../etc/
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 ## Here are the things that we expect ../configure to edit.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 prefix=@prefix@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 srcdir=@srcdir@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 blddir=@blddir@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 version=@version@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 CC=@XEMACS_CC@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 CPP=@CPP@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 CFLAGS=@CFLAGS@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 CPPFLAGS=@CPPFLAGS@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 LDFLAGS=@LDFLAGS@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 c_switch_all=@c_switch_all@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 ld_switch_all=@ld_switch_all@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 ld_libs_all=@ld_libs_all@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 ld_dynamic_link_flags=@ld_dynamic_link_flags@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 extra_objs=@extra_objs@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 LN_S=@LN_S@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 ld_switch_shared=@ld_switch_shared@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 start_files=@start_files@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 start_flags=@start_flags@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 LD=@ld@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 lib_gcc=@lib_gcc@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 ##libmcheck=@libmcheck@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 ## With the traditional VPATH setting, it is not possible to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 ## simultaneously compile in-place and in another directory. The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 ## mistaken definition is that *all* dependencies are searched for in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 ## the VPATH directory, rather than just the dependencies that are not
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 ## themselves targets. Thus, if there is an up-to-date .o file in the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 ## in-place location, it will not get recompiled in the not-in-place
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 ## location.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 ## The GNU Make "vpath" directive continues this tradition, but at
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 ## least lets you restrict the classes of files that it applies to.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 ## This allows us to kludge around the problem.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 #ifdef USE_GNU_MAKE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 vpath %.c @srcdir@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104 vpath %.h @srcdir@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 ## now list files that should NOT be searched in the srcdir.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 ## This includes any .c or .h built from something else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 ## (e.g. a .in file).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 vpath config.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 vpath paths.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 vpath Emacs.ad.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 vpath sheap-adjust.h
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
112 vpath dump-id.c
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 VPATH=@srcdir@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 RM = rm -f
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 LWLIB_SRCDIR = ${srcdir}/../lwlib
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121 #ifdef HAVE_X_WINDOWS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 lwlib_libs = ../lwlib/liblw.a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123 lwlib_deps = $(lwlib_libs)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 $(lwlib_libs) :
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 cd ../lwlib && $(RECURSIVE_MAKE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
127 # ifdef AIX4
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 LIBI18N = -li18n
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
129 # endif
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 X11_libs = $(LIBI18N)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 #endif /* HAVE_X_WINDOWS */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
134 #########################################################################
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
135
773
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
136 ## Object files needed for compilation.
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
137
773
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
138 ## NOTE: Some of the object files are specified in this file, and
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
139 ## others in configure.in. The general rule is that they be specified
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
140 ## here whenever they have clear dependencies on configure defines.
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
141 ## They should be in configure.in when there is no configure define or
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
142 ## when there is extremely hairy code to determine which files are
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
143 ## needed (e.g. native sound support) and it would be pointless to
4bc4fecf15da [xemacs-hg @ 2002-03-13 10:16:26 by ben]
ben
parents: 771
diff changeset
144 ## duplicate that code.
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
145
793
e38acbeb1cae [xemacs-hg @ 2002-03-29 04:46:17 by ben]
ben
parents: 776
diff changeset
146 gui_objs= gui.o
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
147 #ifdef HAVE_MENUBARS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
148 gui_objs += menubar.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
149 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
150 #ifdef HAVE_SCROLLBARS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
151 gui_objs += scrollbar.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
152 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
153 #ifdef HAVE_DIALOGS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
154 gui_objs += dialog.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
155 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
156 #ifdef HAVE_TOOLBARS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
157 gui_objs += toolbar.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
158 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
159
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
160 #ifdef HAVE_X_WINDOWS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
161 x_objs=console-x.o device-x.o event-Xt.o frame-x.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
162 glyphs-x.o objects-x.o redisplay-x.o select-x.o xgccache.o intl-x.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
163 x_gui_objs=$(gui_objs:.o=-x.o)
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
164 #ifdef HAVE_TOOLBARS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
165 x_gui_objs += toolbar-common.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
166 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
167 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
168
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
169 #ifdef HAVE_MS_WINDOWS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
170 mswindows_objs=console-msw.o device-msw.o event-msw.o frame-msw.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
171 objects-msw.o select-msw.o redisplay-msw.o glyphs-msw.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
172 mswindows_gui_objs=$(gui_objs:.o=-msw.o)
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
173 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
174
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
175 #ifdef HAVE_TTY
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
176 tty_objs=console-tty.o device-tty.o event-tty.o frame-tty.o objects-tty.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
177 redisplay-tty.o cm.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
178 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
179
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
180 #ifdef HAVE_GTK
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
181 gtk_objs=console-gtk.o device-gtk.o event-gtk.o frame-gtk.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
182 objects-gtk.o redisplay-gtk.o glyphs-gtk.o select-gtk.o gccache-gtk.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
183 gtk-xemacs.o ui-gtk.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
184 gtk_gui_objs=$(gui_objs:.o=-gtk.o)
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
185 #ifdef HAVE_TOOLBARS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
186 gtk_gui_objs += toolbar-common.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
187 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
188 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
189
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
190 #ifdef HAVE_BALLOON_HELP
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
191 balloon_help_objs=balloon_help.o balloon-x.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
192 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
193
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
194 #ifdef CLASH_DETECTION
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
195 clash_detection_objs=filelock.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
196 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
197
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
198 #ifdef HAVE_DATABASE
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
199 database_objs=database.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
200 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
201
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
202 #ifdef DEBUG_XEMACS
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
203 debug_objs=debug.o tests.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
204 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
205
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
206 #ifdef HAVE_UNIXOID_EVENT_LOOP
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
207 event_unixoid_objs=event-unixoid.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
208 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
209
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
210 #ifdef HAVE_GIF
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
211 gif_objs=dgif_lib.o gif_io.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
212 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
213
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
214 #ifdef HAVE_GPM
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
215 gpm_objs=gpmevent.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
216 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
217
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
218 #ifdef HAVE_LDAP
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
219 ldap_objs=eldap.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
220 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
221
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
222 #ifdef MULE
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
223 mule_objs=mule-ccl.o mule-charset.o mule-coding.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
224 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
225
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
226 #ifdef HAVE_CANNA
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
227 mule_canna_objs=mule-canna.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
228 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
229
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
230 #ifdef HAVE_WNN
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
231 mule_wnn_objs=mule-wnnfns.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
232 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
233
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
234 #ifdef HAVE_POSTGRESQL
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
235 postgresql_objs=postgresql.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
236 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
237
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
238 #ifdef HAVE_WIN32_PROCESSES
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
239 process_objs=process-nt.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
240 #elif defined (HAVE_UNIX_PROCESSES)
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
241 process_objs=process-unix.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
242 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
243
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
244 #ifdef HAVE_SETITIMER
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
245 profile_objs=profile.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
246 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
247
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
248 #if defined (HEAP_IN_DATA) && !defined (PDUMP)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
249 sheap_objs=sheap.o
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
250 #endif
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
251
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
252 #ifdef HAVE_SHLIB
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
253 shlib_objs=sysdll.o emodules.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
254 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
255
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
256 #ifdef SUNPRO
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
257 sunpro_objs=sunpro.o
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
258 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
259
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
260 #ifdef TOOLTALK
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
261 tooltalk_objs=tooltalk.o
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
262 #endif
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
263
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
264 #if defined (WIN32_NATIVE) || defined (CYGWIN)
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
265 win32_objs=win32.o intl-win32.o intl-auto-encap-win32.o intl-encap-win32.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
266 xemacs_res.o
611
38db05db9cb5 [xemacs-hg @ 2001-06-08 12:21:09 by ben]
ben
parents: 606
diff changeset
267 #endif
38db05db9cb5 [xemacs-hg @ 2001-06-08 12:21:09 by ben]
ben
parents: 606
diff changeset
268
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
269 ## -Demacs is needed to make some files produce the correct version
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
270 ## for use in Emacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
271
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
272 cppflags = $(CPPFLAGS) -Demacs -I. $(c_switch_all)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
273 cflags = $(CFLAGS) $(cppflags)
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents: 442
diff changeset
274 #if defined (WIN32_NATIVE) || defined (CYGWIN)
606
c9c1c4ce8f0f [xemacs-hg @ 2001-06-02 06:55:26 by ben]
ben
parents: 563
diff changeset
275 ldflags = $(LDFLAGS) -mwindows -e _mainCRTStartup $(ld_switch_all) $(ld_dynamic_link_flags)
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents: 442
diff changeset
276 #else
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
277 ldflags = $(LDFLAGS) $(ld_switch_all) $(ld_dynamic_link_flags)
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents: 442
diff changeset
278 #endif
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
279
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
280 #ifdef SOLARIS2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
281 %.o : %.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
282 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
283 .c.o:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
284 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
285 $(CC) -c $(cflags) $<
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
286
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 ## Create preprocessor output (debugging purposes only)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288 .c.i:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
289 #ifdef __GNUC__
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290 $(CC) -E $(cppflags) -o $@ $<
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 #else /* works on Solaris; what about other systems? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
292 $(CC) -P $(cppflags) $<
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
293 #endif /* compiler */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
295 ## Create assembler output (debugging purposes only)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
296 .c.s:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
297 $(CC) -S -c $(cflags) $<
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299 ## Create RTL files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 %.c.rtl : %.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301 $(CC) -dr -c $(cflags) $<
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
303 ## lastfile must follow all files whose initialized data areas should
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
304 ## be dumped as pure by dump-emacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
305
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
306 ## NOTE: The last line cannot be all macros, because make will barf
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
307 ## if they all come out null.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
308
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
309 objs=\
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
310 abbrev.o alloc.o $(balloon_help_objs) blocktype.o buffer.o bytecode.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
311 callint.o callproc.o casefiddle.o casetab.o chartab.o $(clash_detection_objs)\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
312 cmdloop.o cmds.o $(coding_system_objs) console.o console-stream.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
313 data.o $(database_objs) $(debug_objs) device.o dired.o doc.o doprnt.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
314 dynarr.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
315 editfns.o elhash.o emacs.o eval.o events.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
316 event-stream.o $(event_unixoid_objs) $(extra_objs) extents.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
317 faces.o file-coding.o fileio.o $(LOCK_OBJ) filemode.o floatfns.o fns.o \
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
318 font-lock.o frame.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
319 general.o $(gif_objs) glyphs.o glyphs-eimage.o glyphs-shared.o\
793
e38acbeb1cae [xemacs-hg @ 2002-03-29 04:46:17 by ben]
ben
parents: 776
diff changeset
320 glyphs-widget.o $(gpm_objs) $(gtk_objs) $(gtk_gui_objs) $(gui_objs) \
e38acbeb1cae [xemacs-hg @ 2002-03-29 04:46:17 by ben]
ben
parents: 776
diff changeset
321 gutter.o\
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
322 hash.o imgproc.o indent.o insdel.o intl.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
323 keymap.o $(RTC_patch_objs) line-number.o $(ldap_objs) lread.o lstream.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
324 macros.o marker.o md5.o minibuf.o $(mswindows_objs) $(mswindows_gui_objs)\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
325 $(mule_objs) $(mule_canna_objs) $(mule_wnn_objs) objects.o opaque.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
326 $(postgresql_objs) print.o process.o $(process_objs) $(profile_objs)\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
327 rangetab.o realpath.o redisplay.o redisplay-output.o regex.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
328 search.o select.o $(sheap_objs) $(shlib_objs) signal.o sound.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
329 specifier.o strftime.o $(sunpro_objs) symbols.o syntax.o sysdep.o\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
330 text.o $(tooltalk_objs) $(tty_objs) undo.o unicode.o $(x_objs) $(x_gui_objs)\
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 611
diff changeset
331 widget.o window.o $(win32_objs)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
333 obj_rtl = $(objs:.o=.c.rtl)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
334
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
335 #ifdef REL_ALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
336 rallocdocsrc = ralloc.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
337 rallocobjs = ralloc.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
338 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340 malloclib = $(libmcheck)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 #ifndef SYSTEM_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342 # ifdef GNU_MALLOC /* GNU malloc */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
343 # ifdef ERROR_CHECK_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
344 #ifdef DOUG_LEA_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
345 mallocobjs = free-hook.o vm-limit.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
346 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
347 mallocobjs = gmalloc.o free-hook.o vm-limit.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
349 mallocdocsrc = free-hook.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
350 # else /* New GNU malloc, sans error checking */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
351 #ifdef DOUG_LEA_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
352 mallocobjs = vm-limit.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
353 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354 mallocobjs = gmalloc.o vm-limit.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356 mallocdocsrc =
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 # endif /* ERROR_CHECK_MALLOC */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358 # else /* Older GNU malloc */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
359 mallocobjs = malloc.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 mallocdocsrc =
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361 # endif /* Older GNU malloc */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 #else /* SYSTEM_MALLOC */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363 mallocobjs =
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 mallocdocsrc =
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365 #ifdef USE_DEBUG_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 malloclib = -ldmalloc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 #endif /* USE_DEBUG_MALLOC */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 #endif /* SYSTEM_MALLOC */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370 #ifdef HAVE_X_WINDOWS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
371
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
372 # ifdef EXTERNAL_WIDGET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
373 external_widget_objs = ExternalShell.o extw-Xt-nonshared.o extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
374
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
375 ## Now we try to figure out how to link a shared library.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
376 ## If we cannot figure it out, leave EXTW_LINK undefined and a shared
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
377 ## library will not be created.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
378
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
379 # ifdef USE_GCC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
380 # ifdef USG5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
381 # define EXTW_LINK(objs, output) $(CC) -shared objs -Xlinker -z -Xlinker text -o output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
382 extw_link_beg = $(CC) -shared
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
383 extw_link_mid = -Xlinker -z -Xlinker text -o
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
384 extw_link_end =
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
385 ## I cannot figure out how to do shared a.out libraries, so just punt.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
386 # elif !defined (LINUX) || defined (__ELF__)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
387 # define EXTW_LINK(objs, output) $(CC) -shared objs -o output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
388 extw_link_beg = $(CC) -shared
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
389 extw_link_mid = -o
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
390 extw_link_end =
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
391 # endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
392 # elif defined (USG5)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
393 # if defined (IRIX)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
394 # define EXTW_LINK(objs, output) $(LD) -shared -g -check_registry ${TOOLROOT}/usr/lib/so_locations objs -o output
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
395 extw_link_beg = $(LD) -shared -g -check_registry ${TOOLROOT}/usr/lib/so_locations
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
396 extw_link_mid = -o
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
397 extw_link_end =
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
398 # else /* not IRIX */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
399 # define EXTW_LINK(objs, output) $(CC) -G objs -z text -o output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
400 extw_link_beg = $(CC) -G
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
401 extw_link_mid = -z text -o
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
402 extw_link_end =
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
403 # endif /* not IRIX */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
404 # else /* not USG5 */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
405 # if defined (DEC_ALPHA) && defined (OSF1)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
406 # define EXTW_LINK(objs, output) $(LD) $(ldflags) $(ld_switch_shared) -d objs -o output $(LIBES)
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
407 extw_link_beg = $(LD) $(ldflags) $(ld_switch_shared) -d
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
408 extw_link_mid = -o
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
409 extw_link_end = $(LIBES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
410 # else /* !(DEC_ALPHA && OSF1) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
411 # define EXTW_LINK(objs, output) $(LD) -dc objs -assert pure-text -o output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
412 extw_link_beg = $(LD) -dc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
413 extw_link_mid = -assert pure-text -o
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
414 extw_link_end =
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
415 # endif /* !(DEC_ALPHA && OSF1) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
416 # endif /* not USG5 */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
417
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
418 # ifdef LWLIB_USES_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
419 # ifdef EXTW_LINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
420 motif_other_files = libextcli_Xm.a libextcli_Xm.so.1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
421 # else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
422 motif_other_files = libextcli_Xm.a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
423 # endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
424 #endif /* LWLIB_USES_MOTIF */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
425
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
426 # ifdef EXTW_LINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
427 shared_other_files = libextcli_Xt.so.1 libextcli_Xlib.so.1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
428 # endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
429 other_files=\
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
430 ${motif_other_files}\
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
431 libextcli_Xt.a libextcli_Xlib.a\
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
432 ${shared_other_files}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
433
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
434 all: ${other_files}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
435 # endif /* EXTERNAL_WIDGET */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
436
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
437 # if defined (HAVE_OFFIX_DND) || defined (HAVE_CDE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
438 dnd_objs = @dnd_objs@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
439 # endif /* HAVE_OFFIX_DND || HAVE_CDE */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
440
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
441 X11_objs = EmacsFrame.o EmacsShell.o TopLevelEmacsShell.o TransientEmacsShell.o EmacsManager.o $(external_widget_objs) $(dnd_objs)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
442 #endif /* HAVE_X_WINDOWS */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
443
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
444 ## define otherobjs as list of object files that make-docfile
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
445 ## should not be told about.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
446 otherobjs = lastfile.o $(mallocobjs) $(rallocobjs) $(X11_objs)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
447 otherrtls = $(otherobjs:.o=.c.rtl)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
448 othersrcs = $(otherobjs:.o=.c)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
449
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
450 LIBES = $(lwlib_libs) $(malloclib) $(ld_libs_all) $(lib_gcc)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
451
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
452 #ifdef I18N3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
453 mo_dir = ${etcdir}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
454 mo_file = ${mo_dir}emacs.mo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
455 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
456
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
457 batch = -no-packages -batch
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
458 batch_packages = -vanilla -batch
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
459 temacs_loadup = ./${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/loadup.el
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
460 dump_temacs = ${temacs_loadup} dump
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
461 run_temacs = ${temacs_loadup} run-temacs
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
462 debug_temacs = gdb ${EXE_TARGET}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
463
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
464 release: ${EXE_TARGET} ${libsrc}DOC $(mo_file) ${other_files}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
465 #ifdef CANNOT_DUMP
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
466 ln ${EXE_TARGET} ${PROGNAME}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
467 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
468 -if [ -w ${srcdir}/../lisp ]; then \
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
469 w=`pwd`; cd ${srcdir} && $${w}/${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/inc-vers; \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
470 else true; fi
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
471 -./${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/loadup.el dump
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
472 touch release
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
473 #endif /* ! defined (CANNOT_DUMP) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
474
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
475 ${DUMP_TARGET}: ${EXE_TARGET} ${libsrc}DOC $(mo_file) ${other_files} update-elc.stamp
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
476 #ifdef HEAP_IN_DATA
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
477 @$(RM) $@ && touch SATISFIED
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
478 -${dump_temacs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
479 @if test -f $@; then if test -f SATISFIED; then \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
480 echo "Testing for Lisp shadows ..."; \
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
481 ./${PROGNAME} ${batch} -f list-load-path-shadows; fi; \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
482 $(RM) SATISFIED; exit 0; fi; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
483 if test -f SATISFIED; then $(RM) SATISFIED; exit 1; fi; \
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
484 $(RM) $@; \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
485 $(RECURSIVE_MAKE) $@;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
486 #else
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
487 @$(RM) $@
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
488 ${dump_temacs}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
489 @echo "Testing for Lisp shadows ..."
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
490 @./${PROGNAME} ${batch} -f list-load-path-shadows
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
491 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
492
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
493 fastdump: ${EXE_TARGET}
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
494 @$(RM) ${DUMP_TARGET} && touch SATISFIED
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
495 -${dump_temacs}
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
496 @./${PROGNAME} ${batch} -f list-load-path-shadows
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
497
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
498 FRC.update-elc.stamp :
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
499
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
500 update-elc.stamp : ${EXE_TARGET} FRC.update-elc.stamp
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
501 @touch NOBYTECOMPILE
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
502 ./${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/update-elc.el
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
503 @if test ! -f $@ -o -f NOBYTECOMPILE; then touch $@; fi; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
504 $(RM) NOBYTECOMPILE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
505
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
506 obj_src = $(objs:.o=.c)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
507
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
508 dortl : $(obj_rtl) $(otherrtls)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
509 echo "(defvar source-files '(" > ${srcdir}/../lisp/source-files.el
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
510 (for a in $(obj_src) $(othersrcs);do \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
511 echo -n "\""$$a"\"" >> ${srcdir}/../lisp/source-files.el ;\
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
512 done)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
513 echo "))" >> ${srcdir}/../lisp/source-files.el
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
514
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
515 #ifdef DYNODUMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
516 dynodump_deps = ../dynodump/dynodump.so
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
517 ../dynodump/dynodump.so:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
518 cd ../dynodump && $(RECURSIVE_MAKE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
519 #endif /* DYNODUMP */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
520
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
521 ${libsrc}DOC: ${EXE_TARGET} update-elc.stamp
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
522 $(RM) ${libsrc}DOC; \
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
523 ${DUMPENV} ./${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/make-docfile.el -- \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
524 -o ${libsrc}DOC -d ${srcdir} -i ${libsrc}../site-packages \
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
525 ${obj_src} ${mallocdocsrc} ${rallocdocsrc} ${extra_doc_files}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
526
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
527 dump_elcs: dump-elcs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
528
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
529 dump-elcs: ${EXE_TARGET}
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
530 -${DUMPENV} ./${EXE_TARGET} -nd ${batch} -l ${srcdir}/../lisp/update-elc.el
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
531
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
532 all-elc all-elcs:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
533 cd .. && $(RECURSIVE_MAKE) all-elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
534
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
535 #ifdef I18N3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
536
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
537 # if defined(SPARC) && !defined(USG)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
538 xgettext= /usr/openwin/bin/xgettext
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
539 xgettext_args= -o emacs -m_X messages
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
540 msgfmt= /usr/openwin/bin/msgfmt
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
541 # else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
542 xgettext= xgettext
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
543 xgettext_args= -s -d emacs -M_X messages
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
544 msgfmt= msgfmt
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
545 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
546
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
547 ${mo_dir}emacs.po: ${libsrc}make-msgfile ${libsrc}make-po ${objs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
548 ${libsrc}make-msgfile -o ${libsrc}messages ${objs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
549 cd ${libsrc} && ${xgettext} ${xgettext_args}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
550 $(RM) ${mo_dir}emacs.po
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
551 cd ${libsrc} && ${libsrc}make-po -a ${mo_dir}emacs.po DOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
552
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
553 ${mo_dir}emacs.mo: ${mo_dir}emacs.po
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
554 cd ${mo_dir} && ${msgfmt} -o emacs.mo emacs.po
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
555
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
556 ${libsrc}make-msgfile:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
557 cd ${libsrc} && $(RECURSIVE_MAKE) make-msgfile
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
558
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
559 ${libsrc}make-po:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
560 cd ${libsrc} && $(RECURSIVE_MAKE) make-po
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
561
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
562 #endif /* I18N3 */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
563
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
564 ${libsrc}make-dump-id:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
565 cd ${libsrc} && $(RECURSIVE_MAKE) make-dump-id
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
566
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
567 ${libsrc}make-docfile:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
568 cd ${libsrc} && $(RECURSIVE_MAKE) make-docfile
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
569
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
570 ## Lint Section
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
571 LINT.c=$(LINT) $(LINTFLAGS) $(LINTINCLUDES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
572 LINTFILES= $(objs:.o=.ln)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
573 LINTINCLUDES = $(cppflags)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
574 ## LINTFLAGS= -fd -m -p -s -u -v -x
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
575 LINTFLAGS= -fd -m -s -u -v -x
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
576 lint: $(LINTFILES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
577 $(LINT.c) $(LINTFILES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
578 ## end of Lint Section
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
579
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
580 link_deps=\
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
581 $(start_files) ${objs} ${otherobjs}\
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
582 $(lwlib_deps) $(dynodump_deps)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
583
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
584 temacs_deps = $(link_deps) ${DUMP_ID}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
585
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
586 temacs_link_args=\
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
587 ${start_flags} ${ldflags}\
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
588 -o $@ ${start_files} ${objs} ${otherobjs} ${DUMP_ID} ${LIBES}
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
589
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
590 ${EXE_TARGET}: $(temacs_deps)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
591 $(LD) $(temacs_link_args)
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
592
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
593 dump-id.c: ${libsrc}make-dump-id ${link_deps}
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
594 ${libsrc}make-dump-id
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
595
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
596 .PHONY : run-temacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
597
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
598 run-temacs: ${EXE_TARGET}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
599 -${run_temacs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
600
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
601 ## We have automated tests!!
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
602 testdir = ${srcdir}/../tests/automated
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
603 batch_test_emacs = ${batch} -l ${testdir}/test-harness.el -f batch-test-emacs ${testdir}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
604
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
605 .PHONY: check check-temacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
606 check:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
607 ./${PROGNAME} ${batch_test_emacs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
608 check-temacs:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
609 ${run_temacs} ${batch_test_emacs}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
610
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
611 ## Debugging targets:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
612 ##
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
613 ## None of the debugging products work with a dumped xemacs binary,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
614 ## because it does unexpected things like free memory that has been
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
615 ## malloc'ed in a *different* process!! So we need to run these on
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
616 ## temacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
617
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
618 ## RTC is Sun WorkShop's Run Time Checking, integrated with dbx
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
619 rtc_patch.o:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
620 rtc_patch_area -o $@
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
621
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
622 rtcmacs: $(temacs_deps) rtc_patch.o
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
623 $(RM) ${EXE_TARGET}; $(RECURSIVE_MAKE) ${EXE_TARGET} RTC_patch_objs=rtc_patch.o
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
624 mv ${EXE_TARGET} rtcmacs
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
625
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
626 .PHONY: run-rtcmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
627 run-rtcmacs: rtcmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
628 dbx -q -C -c \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
629 'dbxenv rtc_error_log_file_name /dev/fd/1; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
630 dbxenv suppress_startup_message 5.0; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
631 ignore POLL; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
632 check -access; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
633 suppress rui; \
776
79940b592197 [xemacs-hg @ 2002-03-15 07:43:14 by ben]
ben
parents: 773
diff changeset
634 runargs ${batch} -l ${srcdir}/../lisp/loadup.el run-temacs -vanilla; \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
635 run' rtcmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
636
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
637 debug-temacs: ${EXE_TARGET}
434
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
638 -${debug_temacs}
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
639
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
640 ## Purify, Quantify, PureCoverage are software quality products from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
641 ## Rational, formerly Pure Atria, formerly Pure Software.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
642 ##
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
643 ## Purify
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
644 PURIFY_PROG = purify
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
645 PURIFY_LIBS =
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
646 PURIFY_FLAGS =\
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
647 #ifdef PDUMP
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
648 -search-mmaps=yes\
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
649 #endif
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
650 -chain-length=32 -ignore-signals=SIGPOLL\
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 448
diff changeset
651 -cache-dir=${blddir}/purecache -always-use-cache-dir=yes
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
652
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
653 puremacs: $(temacs_deps)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
654 $(PURIFY_PROG) $(PURIFY_FLAGS) $(LD) $(temacs_link_args) $(PURIFY_LIBS)
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
655 cp $@ ${EXE_TARGET}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
656
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
657 ## Quantify
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
658 #ifdef QUANTIFY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
659 QUANTIFY_PROG = quantify
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
660 QUANTIFY_HOME = `$(QUANTIFY_PROG) -print-home-dir`
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
661 QUANTIFY_FLAGS = -cache-dir=./purecache -always-use-cache-dir=yes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
662 cppflags += -I$(QUANTIFY_HOME)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
663 temacs_link_args += $(QUANTIFY_HOME)/quantify_stubs.a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
664
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
665 quantmacs: $(temacs_deps)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
666 $(QUANTIFY_PROG) $(QUANTIFY_FLAGS) $(LD) $(temacs_link_args)
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
667 cp $@ ${EXE_TARGET}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
668 #endif /* QUANTIFY */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
669
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
670
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
671 PURECOV_PROG=purecov
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
672 covmacs: $(temacs_deps)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
673 $(PURECOV_PROG) $(LD) $(temacs_link_args)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
674
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
675
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
676 TopLevelEmacsShell.o : ${srcdir}/EmacsShell-sub.c config.h xintrinsicp.h EmacsShellP.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
677 $(CC) -c $(cflags) -DDEFINE_TOP_LEVEL_EMACS_SHELL ${srcdir}/EmacsShell-sub.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
678 mv EmacsShell-sub.o TopLevelEmacsShell.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
679
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
680 TopLevelEmacsShell.c.rtl : ${srcdir}/EmacsShell-sub.c config.h xintrinsicp.h EmacsShellP.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
681 $(CC) -dr -c $(cflags) -DDEFINE_TOP_LEVEL_EMACS_SHELL ${srcdir}/EmacsShell-sub.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
682 mv EmacsShell-sub.c.rtl TopLevelEmacsShell.c.rtl
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
683
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
684 TransientEmacsShell.o : ${srcdir}/EmacsShell-sub.c TopLevelEmacsShell.o config.h xintrinsicp.h EmacsShellP.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
685 $(CC) -c $(cflags) -DDEFINE_TRANSIENT_EMACS_SHELL ${srcdir}/EmacsShell-sub.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
686 mv EmacsShell-sub.o TransientEmacsShell.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
687
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
688 TransientEmacsShell.c.rtl : ${srcdir}/EmacsShell-sub.c TopLevelEmacsShell.o config.h xintrinsicp.h EmacsShellP.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
689 $(CC) -dr -c $(cflags) -DDEFINE_TRANSIENT_EMACS_SHELL ${srcdir}/EmacsShell-sub.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
690 mv EmacsShell-sub.c.rtl TransientEmacsShell.c.rtl
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
691
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
692 ## The above rules are subject to a race condition if using a parallel make.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
693 TransientEmacsShell.o : TopLevelEmacsShell.o
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
694 TransientEmacsShell.c.rtl : TopLevelEmacsShell.c.rtl
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
695
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
696 ## Position-independent code for shared library creation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
697 #if USE_GCC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
698 pic_arg = -fpic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
699 #elif defined (IRIX)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
700 pic_arg = -KPIC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
701 # else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
702 pic_arg = -K pic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
703 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
704
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
705 #ifdef EXTERNAL_WIDGET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
706
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
707 external_client_motif_objs_shared = ExternalClient-Xm-shared.o extw-Xt-shared.o extw-Xlib-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
708 external_client_xt_objs_shared = ExternalClient-Xt-shared.o extw-Xt-shared.o extw-Xlib-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
709 external_client_xlib_objs_shared = ExternalClient-Xlib-shared.o extw-Xlib-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
710 external_client_motif_objs_nonshared = ExternalClient-Xm-nonshared.o extw-Xt-nonshared.o extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
711 external_client_xt_objs_nonshared = ExternalClient-Xt-nonshared.o extw-Xt-nonshared.o extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
712 external_client_xlib_objs_nonshared = ExternalClient-Xlib-nonshared.o extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
713
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
714 ## Add dependencies so things work right with a parallel make
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
715 ExternalClient-Xm-shared.o: ${srcdir}/ExternalClient.c ExternalClient-Xt-shared.o ExternalClient-Xm-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
716 $(CC) -c $(pic_arg) $(cflags) -DEXTW_USES_MOTIF ${srcdir}/ExternalClient.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
717 mv ExternalClient.o ExternalClient-Xm-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
718
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
719 ExternalClient-Xt-shared.o: ${srcdir}/ExternalClient.c ExternalClient-Xt-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
720 $(CC) -c $(pic_arg) $(cflags) ${srcdir}/ExternalClient.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
721 mv ExternalClient.o ExternalClient-Xt-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
722
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
723 ExternalClient-Xlib-shared.o: ${srcdir}/ExternalClient-Xlib.c ExternalClient-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
724 $(CC) -c $(pic_arg) $(cflags) ${srcdir}/ExternalClient-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
725 mv ExternalClient-Xlib.o ExternalClient-Xlib-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
726
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
727 ExternalClient-Xm-nonshared.o: ${srcdir}/ExternalClient.c ExternalClient-Xt-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
728 $(CC) -c $(cflags) -DEXTW_USES_MOTIF ${srcdir}/ExternalClient.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
729 mv ExternalClient.o ExternalClient-Xm-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
730
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
731 ExternalClient-Xt-nonshared.o: ${srcdir}/ExternalClient.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
732 $(CC) -c $(cflags) ${srcdir}/ExternalClient.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
733 mv ExternalClient.o ExternalClient-Xt-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
734
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
735 ExternalClient-Xlib-nonshared.o: ${srcdir}/ExternalClient-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
736 $(CC) -c $(cflags) ${srcdir}/ExternalClient-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
737 mv ExternalClient-Xlib.o ExternalClient-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
738
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
739 ## We compile the common files twice (once with PIC and once without)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
740 ## because on some systems, compiling with PIC but not linking into
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
741 ## a shared library messes things up.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
742
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
743 extw-Xt-shared.o: ${srcdir}/extw-Xt.c extw-Xt-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
744 $(CC) -c $(pic_arg) $(cflags) ${srcdir}/extw-Xt.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
745 mv extw-Xt.o extw-Xt-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
746
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
747 extw-Xlib-shared.o: ${srcdir}/extw-Xlib.c extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
748 $(CC) -c $(pic_arg) $(cflags) ${srcdir}/extw-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
749 mv extw-Xlib.o extw-Xlib-shared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
750
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
751 extw-Xt-nonshared.o: ${srcdir}/extw-Xt.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
752 $(CC) -c $(cflags) ${srcdir}/extw-Xt.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
753 mv extw-Xt.o extw-Xt-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
754
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
755 extw-Xlib-nonshared.o: ${srcdir}/extw-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
756 $(CC) -c $(cflags) ${srcdir}/extw-Xlib.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
757 mv extw-Xlib.o extw-Xlib-nonshared.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
758
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
759 libextcli_Xm.a: ${external_client_motif_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
760 ar r libextcli_Xm.a ${external_client_motif_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
761
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
762 libextcli_Xt.a: ${external_client_xt_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
763 ar r libextcli_Xt.a ${external_client_xt_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
764
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
765 libextcli_Xlib.a: ${external_client_xlib_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
766 ar r libextcli_Xlib.a ${external_client_xlib_objs_nonshared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
767
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
768 #ifdef EXTW_LINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
769
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
770 libextcli_Xm.so.1: ${external_client_motif_objs_shared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
771 ${extw_link_beg} ${external_client_motif_objs_shared} ${extw_link_mid} libextcli_Xm.so.1 ${extw_link_end}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
772
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
773 libextcli_Xt.so.1: ${external_client_xt_objs_shared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
774 ${extw_link_beg} ${external_client_xt_objs_shared} ${extw_link_mid} libextcli_Xt.so.1 ${extw_link_end}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
775
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
776 libextcli_Xlib.so.1: ${external_client_xlib_objs_shared}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
777 ${extw_link_beg} ${external_client_xlib_objs_shared} ${extw_link_mid} libextcli_Xlib.so.1 ${extw_link_end}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
778
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
779 #endif /* EXTW_LINK */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
780
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
781 #endif /* EXTERNAL_WIDGET */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
782
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
783 config.h: ${srcdir}/config.h.in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
784 Emacs.ad.h: ${srcdir}/${etcdir}Emacs.ad
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
785
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
786 config.h sheap-adjust.h paths.h Emacs.ad.h :
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
787 @echo "The file $@ needs to be re-generated."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
788 @echo "Please run a make in the top level directory."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
789 @echo "Consult the file \`INSTALL' for instructions for building XEmacs."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
790 @exit 1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
791
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
792 ## Some machines have alloca built-in.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
793 ## They should define HAVE_ALLOCA, or may just let alloca.s
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
794 ## be used but generate no code.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
795 ## Some have it written in assembler in alloca.s.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
796 ## Some use the C version in alloca.c (these define C_ALLOCA in config.h).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
797
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
798
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
799 #ifdef C_ALLOCA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
800 ## We could put something in alloca.c to #define free and malloc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
801 ## whenever emacs was #defined, but that's not appropriate for all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
802 ## users of alloca in Emacs. Check out ../lib-src/getopt.c. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
803
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
804 alloca.o : ${srcdir}/alloca.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
805 $(CC) -c -Dfree=xfree -Dmalloc=xmalloc $(cflags) ${srcdir}/alloca.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
806 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
807 #ifndef HAVE_ALLOCA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
808 alloca.o : ${srcdir}/alloca.s config.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
809 ## $(CPP) is cc -E, which may get confused by filenames
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
810 ## that do not end in .c. So copy file to a safe name. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
811 ## cp ${srcdir}/alloca.s allocatem.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
812 ## Remove any ^L, blank lines, and preprocessor comments,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
813 ## since some assemblers barf on them. Use a different basename for the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
814 ## output file, since some stupid compilers (Green Hill) use that
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
815 ## name for the intermediate assembler file.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
816 $(CPP) $(cppflags) allocatem.c | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
817 sed -e 's/ //' -e 's/^#.*//' | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
818 sed -n -e '/^..*$$/p' > allocax.s
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
819 @$(RM) alloca.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
820 ## Xenix, in particular, needs to run assembler via cc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
821 $(CC) -c allocax.s
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
822 mv allocax.o alloca.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
823 $(RM) allocax.s allocatem.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
824 #endif /* HAVE_ALLOCA */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
825 #endif /* ! defined (C_ALLOCA) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
826
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
827 #ifdef HAVE_NATIVE_SOUND
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
828 sound_cflags=@sound_cflags@
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
829 sunplay.o: ${srcdir}/sunplay.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
830 $(CC) -c $(sound_cflags) $(cflags) ${srcdir}/sunplay.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
831 hpplay.o: ${srcdir}/hpplay.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
832 $(CC) -c -Demacs $(sound_cflags) $(cflags) ${srcdir}/hpplay.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
833 #endif /* HAVE_NATIVE_SOUND */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
834
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
835 #if defined(HAVE_GLADE_GLADE_H) || defined(HAVE_GLADE_H)
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
836 glade_files=glade.c
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
837 #endif
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
838
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
839 #ifdef HAVE_GTK
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
840 extra_doc_files=emacs-widget-accessors.c ui-byhand.c $(glade_files)
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
841 #endif
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
842
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
843 xemacs_res.o: ${srcdir}/../nt/xemacs.rc
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
844 windres --include-dir ${srcdir}/../nt -i ${srcdir}/../nt/xemacs.rc -o $@
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
845
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
846 ## System-specific programs to be made.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
847 ## ${other_files}, $(objects_system) and $(objects_machine)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
848 ## select which of these should be compiled. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
849
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
850 .PHONY: mostlyclean clean distclean realclean versionclean extraclean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
851 mostlyclean:
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
852 $(RM) temacs puremacs quantmacs *.o *.i \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
853 core temacs.exe sheap-adjust.h
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
854 clean: mostlyclean versionclean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
855 $(RM) libextcli* update-elc.stamp
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
856 ## This is used in making a distribution.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
857 ## Do not use it on development directories!
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
858 distclean: clean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
859 $(RM) config.h paths.h Emacs.ad.h \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
860 GNUmakefile Makefile Makefile.in TAGS ${PROGNAME}.*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
861 realclean: distclean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
862 versionclean:
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
863 $(RM) ${EXE_TARGET} ${DUMP_TARGET} ${libsrc}DOC
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
864 extraclean: realclean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
865 $(RM) *~ \#* m/*~ m/\#* s/*~ s/\#*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
866
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
867 .PHONY : lock unlock
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
868 SOURCES = *.[chm] *.pswm [sm]/* COPYING paths.h.in Makefile.in.in \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
869 config.h.in README COPYING ChangeLog
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
870 unlock:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
871 chmod u+w $(SOURCES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
872
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
873 relock:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
874 chmod -w $(SOURCES)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
875
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
876 ## Header files for ellcc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
877 #ifdef HAVE_SHLIB
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
878 MAKEPATH=../lib-src/make-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
879 install: ${PROGNAME}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
880 ${MAKEPATH} ${archlibdir}/include ${archlibdir}/include/m ${archlibdir}/include/s
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
881 -@echo "Copying include files for ellcc..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
882 -@hdir=`pwd`; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
883 cd ${srcdir}; hdrdir2=`pwd`; cd $$hdir; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
884 test "$$hdrdir2" != "$$hdir" && hdir="$$hdir $$hdrdir2"; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
885 (for thisdir in $$hdir; do \
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents: 442
diff changeset
886 cd $$thisdir && \
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
887 (hdrtars=; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
888 for hdrfile in *.h; do \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
889 hdrtars="$$hdrtars $$hdrfile"; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
890 done; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
891 test -d s && hdrtars="$$hdrtars s/*"; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
892 test -d m && hdrtars="$$hdrtars m/*"; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
893 test -n "$$hdrtars" && (tar cf - $$hdrtars) | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
894 (cd ${archlibdir}/include && umask 022 && tar xf -); \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
895 chmod 755 ${archlibdir}/include; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
896 test -d ${archlibdir}/include/s && \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
897 chmod 755 ${archlibdir}/include/s; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
898 test -d ${archlibdir}/include/m && \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
899 chmod 755 ${archlibdir}/include/s;) \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
900 done)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
901 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
902
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
903 ## Dependency processing using home-grown script, not makedepend
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
904 .PHONY: depend
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
905 FRC.depend:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
906 depend: FRC.depend
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
907 cd ${srcdir} && $(RM) depend.tmp && \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
908 perl ./make-src-depend > depend.tmp && \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
909 if cmp -s depend depend.tmp; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
910 then $(RM) depend.tmp; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
911 else $(RM) depend && mv depend.tmp depend; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
912 fi