#ifdef PDUMP
DUMP_TARGET = ${PROGNAME}.dmp
EXE_TARGET = ${PROGNAME}
-ID_FILE = dump-id.c
+DUMP_ID = dump-id.o
#else
DUMP_TARGET = ${PROGNAME}
EXE_TARGET = temacs
-ID_FILE =
#endif
all: ${DUMP_TARGET}
.SUFFIXES: .c .h .o .i .s .dep
#ifdef USE_GNU_MAKE
-RECURSIVE_MAKE=$(MAKE)
+RECURSIVE_MAKE_ARGS=
#else
@SET_MAKE@
-RECURSIVE_MAKE=@RECURSIVE_MAKE@
+RECURSIVE_MAKE_ARGS=@RECURSIVE_MAKE_ARGS@
#endif
SHELL=/bin/sh
RM = rm -f
+TAR = tar
lispdir = ${srcdir}/../lisp/
moduledir = ${srcdir}/../modules/
lwlib_libs = ../lwlib/liblw.a
lwlib_deps = $(lwlib_libs)
$(lwlib_libs) :
- cd ../lwlib && $(RECURSIVE_MAKE)
+ cd ../lwlib && $(MAKE) $(RECURSIVE_MAKE_ARGS)
x_objs=console-x.o device-x.o event-Xt.o frame-x.o\
glyphs-x.o objects-x.o redisplay-x.o select-x.o xgccache.o
win32_objs=win32.o xemacs_res.o
#endif
+#ifdef HAVE_SETITIMER
+profile_objs=profile.o
+#endif
+
## -Demacs is needed to make some files produce the correct version
## for use in Emacs.
cppflags = $(CPPFLAGS) -Demacs -I. $(c_switch_all)
cflags = $(CFLAGS) $(cppflags)
-#if defined (WIN32_NATIVE) || defined (CYGWIN)
-ldflags = $(LDFLAGS) -mwindows $(ld_switch_all) $(ld_dynamic_link_flags)
+#if defined (WIN32_NATIVE)
+ldflags = $(LDFLAGS) -mwindows -e _mainCRTStartup $(ld_switch_all) $(ld_dynamic_link_flags)
#else
ldflags = $(LDFLAGS) $(ld_switch_all) $(ld_dynamic_link_flags)
#endif
+#if defined (CYGWIN) && !defined (PDUMP)
+ldflags += -Wl,--script=s/cygwin.sc
+#endif
+
#ifdef SOLARIS2
%.o : %.c
#else
gui.o gutter.o $(gui_objs) hash.o imgproc.o indent.o insdel.o intl.o\
keymap.o $(RTC_patch_objs) line-number.o lread.o lstream.o\
macros.o marker.o md5.o minibuf.o objects.o opaque.o\
- print.o process.o profile.o\
+ print.o process.o $(profile_objs)\
rangetab.o redisplay.o redisplay-output.o regex.o\
search.o select.o $(sheap_objs) signal.o sound.o\
specifier.o strftime.o symbols.o syntax.o sysdep.o\
#ifdef DYNODUMP
dynodump_deps = ../dynodump/dynodump.so
../dynodump/dynodump.so:
- cd ../dynodump && $(RECURSIVE_MAKE)
+ cd ../dynodump && $(MAKE) $(RECURSIVE_MAKE_ARGS)
#endif /* DYNODUMP */
${libsrc}DOC: ${EXE_TARGET} update-elc.stamp
$(RM) ${libsrc}DOC; \
${DUMPENV} ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/make-docfile.el -- \
-o ${libsrc}DOC -d ${srcdir} -i ${libsrc}../site-packages \
- ${obj_src} ${mallocdocsrc} ${rallocdocsrc}
+ ${obj_src} ${mallocdocsrc} ${rallocdocsrc} ${extra_doc_files}
dump_elcs: dump-elcs
-${DUMPENV} ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/update-elc.el
all-elc all-elcs:
- cd .. && $(RECURSIVE_MAKE) all-elc
+ cd .. && $(MAKE) $(RECURSIVE_MAKE_ARGS) all-elc
#ifdef I18N3
cd ${mo_dir} && ${msgfmt} -o emacs.mo emacs.po
${libsrc}make-msgfile:
- cd ${libsrc} && $(RECURSIVE_MAKE) make-msgfile
+ cd ${libsrc} && $(MAKE) $(RECURSIVE_MAKE_ARGS) make-msgfile
${libsrc}make-po:
- cd ${libsrc} && $(RECURSIVE_MAKE) make-po
+ cd ${libsrc} && $(MAKE) $(RECURSIVE_MAKE_ARGS) make-po
#endif /* I18N3 */
${libsrc}make-dump-id:
- cd ${libsrc} && $(RECURSIVE_MAKE) make-dump-id
+ cd ${libsrc} && $(MAKE) $(RECURSIVE_MAKE_ARGS) make-dump-id
${libsrc}make-docfile:
- cd ${libsrc} && $(RECURSIVE_MAKE) make-docfile
+ cd ${libsrc} && $(MAKE) $(RECURSIVE_MAKE_ARGS) make-docfile
## Lint Section
LINT.c=$(LINT) $(LINTFLAGS) $(LINTINCLUDES)
$(start_files) ${objs} ${otherobjs}\
$(lwlib_deps) $(dynodump_deps)
-temacs_deps=\
- $(link_deps) $(ID_FILE)
+temacs_deps = $(link_deps) ${DUMP_ID}
temacs_link_args=\
- ${start_flags} ${ldflags} -I${srcdir} \
- -o $@ ${start_files} ${objs} ${otherobjs} ${ID_FILE} ${LIBES}
+ ${start_flags} ${ldflags}\
+ -o $@ ${start_files} ${objs} ${otherobjs} ${DUMP_ID} ${LIBES}
${EXE_TARGET}: $(temacs_deps)
$(LD) $(temacs_link_args)
##
## Purify
PURIFY_PROG = purify
+PURIFY_LIBS =
PURIFY_FLAGS =\
#ifdef PDUMP
-search-mmaps=yes\
#endif
- -chain-length=32 -ignore-signals=SIGPOLL -threads=yes\
- -cache-dir=${srcdir}/purecache -always-use-cache-dir=yes
+ -chain-length=32 -ignore-signals=SIGPOLL\
+ -cache-dir=${blddir}/purecache -always-use-cache-dir=yes
-PURIFY_LIBS = -lpthread
puremacs: $(temacs_deps)
$(PURIFY_PROG) $(PURIFY_FLAGS) $(LD) $(temacs_link_args) $(PURIFY_LIBS)
cp $@ ${EXE_TARGET}
$(CC) -c -Demacs $(sound_cflags) $(cflags) ${srcdir}/hpplay.c
#endif /* HAVE_NATIVE_SOUND */
+#if defined(HAVE_GLADE_GLADE_H) || defined(HAVE_GLADE_H)
+glade_files=glade.c
+#endif
+
+#ifdef HAVE_GTK
+extra_doc_files=emacs-widget-accessors.c ui-byhand.c $(glade_files)
+#endif
+
xemacs_res.o: ${srcdir}/../nt/xemacs.rc
windres --include-dir ${srcdir}/../nt -i ${srcdir}/../nt/xemacs.rc -o $@
done; \
test -d s && hdrtars="$$hdrtars s/*"; \
test -d m && hdrtars="$$hdrtars m/*"; \
- test -n "$$hdrtars" && (tar cf - $$hdrtars) | \
- (cd ${archlibdir}/include && umask 022 && tar xf -); \
+ test -n "$$hdrtars" && (${TAR} cf - $$hdrtars) | \
+ (cd ${archlibdir}/include && umask 022 && ${TAR} xf -); \
chmod 755 ${archlibdir}/include; \
test -d ${archlibdir}/include/s && \
chmod 755 ${archlibdir}/include/s; \