changeset 108634:fcdc7bb97c9e

Define some malloc objects with configure, not cpp. * configure.in (GMALLOC_OBJ, VMLIMIT_OBJ): New output variables. * config.bat (GMALLOC_OBJ, VMLIMIT_OBJ): Edit to empty if sys_malloc. * src/Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure. (gmallocobj, vmlimitobj): Replace with previous two variables. (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ. * msdos/sed1v2.inp (GMALLOC_OBJ): Edit to gmalloc.o. (VMLIMIT_OBJ): Edit to vm-limit.o.
author Glenn Morris <rgm@gnu.org>
date Mon, 17 May 2010 19:30:13 -0700
parents 745476df64ef
children e565448628b8
files ChangeLog config.bat configure.in msdos/ChangeLog msdos/sed1v2.inp src/ChangeLog src/Makefile.in
diffstat 7 files changed, 45 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon May 17 17:02:06 2010 -0400
+++ b/ChangeLog	Mon May 17 19:30:13 2010 -0700
@@ -1,3 +1,8 @@
+2010-05-18  Glenn Morris  <rgm@gnu.org>
+
+	* config.bat (GMALLOC_OBJ, VMLIMIT_OBJ): Edit to empty if sys_malloc.
+	* configure.in (GMALLOC_OBJ, VMLIMIT_OBJ): New output variables.
+
 2010-05-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* Makefile.in (src): Provide the name of the VCS file that witnesses
--- a/config.bat	Mon May 17 17:02:06 2010 -0400
+++ b/config.bat	Mon May 17 19:30:13 2010 -0700
@@ -201,6 +201,12 @@
 rm -f makefile.tmp
 :src5
 
+if "%sys_malloc%" == "" goto src5a
+sed -e "/^GMALLOC_OBJ *=/s/gmalloc.o//" <Makefile >makefile.tmp
+sed -e "/^VMLIMIT_OBJ *=/s/vm-limit.o//" <makefile.tmp >Makefile
+rm -f makefile.tmp
+:src5a
+
 if "%nodebug%" == "" goto src6
 sed -e "/^CFLAGS *=/s/ *-gcoff//" <Makefile >makefile.tmp
 sed -e "/^LDFLAGS *=/s/=/=-s/" <makefile.tmp >Makefile
--- a/configure.in	Mon May 17 17:02:06 2010 -0400
+++ b/configure.in	Mon May 17 19:30:13 2010 -0700
@@ -1592,11 +1592,20 @@
 if test $emacs_cv_var___after_morecore_hook = no; then
   doug_lea_malloc=no
 fi
+
 if test "${system_malloc}" = "yes"; then
   GNU_MALLOC=no
   GNU_MALLOC_reason="
     (The GNU allocators don't work with this system configuration.)"
+  GMALLOC_OBJ=
+  VMLIMIT_OBJ=
+else
+  test "$doug_lea_malloc" != "yes" && GMALLOC_OBJ=gmalloc.o
+  VMLIMIT_OBJ=vm-limit.o
 fi
+AC_SUBST(GMALLOC_OBJ)
+AC_SUBST(VMLIMIT_OBJ)
+
 if test "$doug_lea_malloc" = "yes" ; then
   if test "$GNU_MALLOC" = yes ; then
     GNU_MALLOC_reason="
@@ -3208,7 +3217,7 @@
 else
   CYGWIN_OBJ=
   PRE_ALLOC_OBJ=lastfile.o
-  POST_ALLOC_OBJ="\$(vmlimitobj)"
+  POST_ALLOC_OBJ="\$(VMLIMIT_OBJ)"
 fi
 AC_SUBST(CYGWIN_OBJ)
 AC_SUBST(PRE_ALLOC_OBJ)
--- a/msdos/ChangeLog	Mon May 17 17:02:06 2010 -0400
+++ b/msdos/ChangeLog	Mon May 17 19:30:13 2010 -0700
@@ -1,3 +1,8 @@
+2010-05-18  Glenn Morris  <rgm@gnu.org>
+
+	* sed1v2.inp (GMALLOC_OBJ): Edit to gmalloc.o.
+	(VMLIMIT_OBJ): Edit to vm-limit.o.
+
 2010-05-17  Glenn Morris  <rgm@gnu.org>
 
 	* sed1v2.inp (OLDXMENU_DEPS): Edit to empty.
--- a/msdos/sed1v2.inp	Mon May 17 17:02:06 2010 -0400
+++ b/msdos/sed1v2.inp	Mon May 17 19:30:13 2010 -0700
@@ -116,6 +116,8 @@
 /^OLDXMENU *=/s/@OLDXMENU@//
 /^LIBXMENU *=/s/@LIBXMENU@//
 /^LIBX_OTHER *=/s/@LIBX_OTHER@//
+/^GMALLOC_OBJ *=/s/@GMALLOC_OBJ@/gmalloc.o/
+/^VMLIMIT_OBJ *=/s/@VMLIMIT_OBJ@/vm-limit.o/
 /^PRE_ALLOC_OBJ *=/s/@PRE_ALLOC_OBJ@/lastfile.o/
 /^POST_ALLOC_OBJ *=/s/@POST_ALLOC_OBJ@/$(vmlimitobj)/
 /^UNEXEC_OBJ *=/s/@unexec@/unexec.o/
--- a/src/ChangeLog	Mon May 17 17:02:06 2010 -0400
+++ b/src/ChangeLog	Mon May 17 19:30:13 2010 -0700
@@ -1,3 +1,9 @@
+2010-05-18  Glenn Morris  <rgm@gnu.org>
+
+	* Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
+	(gmallocobj, vmlimitobj): Replace with previous two variables.
+	(otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
+
 2010-05-17  Glenn Morris  <rgm@gnu.org>
 
 	* Makefile.in (OLDXMENU_DEPS): New, set by configure.
--- a/src/Makefile.in	Mon May 17 17:02:06 2010 -0400
+++ b/src/Makefile.in	Mon May 17 19:30:13 2010 -0700
@@ -401,28 +401,25 @@
   w32.o w32console.o w32fns.o w32heap.o w32inevt.o \
   w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o $(FONT_OBJ)
 
-gmallocobj =
+/* gmalloc.o if !SYSTEM_MALLOC && !DOUG_LEA_MALLOC, else empty.  */
+GMALLOC_OBJ=@GMALLOC_OBJ@
+
+/* vm-limit.o if !SYSTEM_MALLOC, else empty.  */
+VMLIMIT_OBJ=@VMLIMIT_OBJ@
+
+#if defined (REL_ALLOC) && ! defined (SYSTEM_MALLOC)
+rallocobj = ralloc.o
+#else
 rallocobj =
-vmlimitobj =
-#ifndef SYSTEM_MALLOC
-#ifndef DOUG_LEA_MALLOC
-gmallocobj = gmalloc.o
 #endif
 
-#ifdef REL_ALLOC
-rallocobj = ralloc.o
-#endif
-
-vmlimitobj = vm-limit.o
-#endif /* !SYSTEM_MALLOC */
-
 /* Empty on Cygwin, lastfile.o elsewhere.  */
 PRE_ALLOC_OBJ=@PRE_ALLOC_OBJ@
-/* lastfile.o vm-limit.o on Cygwin, $vmlimitobj elsewhere.  */
+/* lastfile.o vm-limit.o on Cygwin, $VMLIMIT_OBJ elsewhere.  */
 POST_ALLOC_OBJ=@POST_ALLOC_OBJ@
 
 /* List of object files that make-docfile should not be told about.  */
-otherobj= $(TERMCAP_OBJ) $(PRE_ALLOC_OBJ) $(gmallocobj) $(rallocobj) \
+otherobj= $(TERMCAP_OBJ) $(PRE_ALLOC_OBJ) $(GMALLOC_OBJ) $(rallocobj) \
   $(POST_ALLOC_OBJ) $(WIDGET_OBJ) $(LIBOBJS)
 
 /* This is the platform-specific list of Lisp files loaded into the