changeset 103707:6f4661f3af1c

(--enable-profiling): New option.
author Dan Nicolaescu <dann@ics.uci.edu>
date Fri, 03 Jul 2009 13:04:57 +0000
parents 795208dc99c5
children bae3b52cda07
files ChangeLog configure configure.in
diffstat 3 files changed, 39 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Jul 03 11:35:04 2009 +0000
+++ b/ChangeLog	Fri Jul 03 13:04:57 2009 +0000
@@ -1,3 +1,7 @@
+2009-07-03  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* configure.in (--enable-profiling): New option.
+
 2009-06-27  Glenn Morris  <rgm@gnu.org>
 
 	* configure: Restore netbsd on mips, mipsel, mipseb.
--- a/configure	Fri Jul 03 11:35:04 2009 +0000
+++ b/configure	Fri Jul 03 13:04:57 2009 +0000
@@ -1352,6 +1352,9 @@
 			  Categories are: all,yes,no.
 			  Flags are: stringbytes, stringoverrun, stringfreelist,
 			  xmallocoverrun, conslist
+  --enable-profiling
+			  Build emacs with profiling support.
+			  This might not work on all platforms.
   --disable-largefile     omit support for large files
 
 Optional Packages:
@@ -2286,6 +2289,19 @@
 
 fi
 
+# Check whether --enable-profiling was given.
+if test "${enable_profiling+set}" = set; then
+  enableval=$enable_profiling; ac_enable_profiling="${enableval}"
+fi
+
+if test x$ac_enable_profiling != x ; then
+   PROFILING_CFLAGS="-DPROFILING=1 -pg"
+   PROFILING_LDFLAGS="-pg"
+else
+   PROFILING_CFLAGS=
+   PROFILING_LDFLAGS=
+fi
+
 #### Make srcdir absolute, if it isn't already.  It's important to
 #### avoid running the path through pwd unnecessarily, since pwd can
 #### give you automounter prefixes, which can go away.  We do all this
@@ -5599,7 +5615,7 @@
 
 /* Get the CFLAGS for real compilation.  */
 #ifdef __GNUC__
-configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH C_WARNINGS_SWITCH '${SPECIFIED_CFLAGS}'
+configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH C_WARNINGS_SWITCH ${PROFILING_CFLAGS} '${SPECIFIED_CFLAGS}'
 #else
 configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 #endif
@@ -5607,6 +5623,8 @@
 #endif /* not THIS_IS_CONFIGURE */
 ' > ${tempcname}
 
+LDFLAGS="${LDFLAGS} ${PROFILING_LDFLAGS}"
+
 # The value of CPP is a quoted variable reference, so we need to do this
 # to get its actual value...
 CPP=`eval "echo $CPP"`
--- a/configure.in	Fri Jul 03 11:35:04 2009 +0000
+++ b/configure.in	Fri Jul 03 13:04:57 2009 +0000
@@ -273,6 +273,19 @@
 [Define this to check for errors in cons list.])
 fi
 
+AC_ARG_ENABLE(profiling,
+[  --enable-profiling
+			  Build emacs with profiling support.
+			  This might not work on all platforms.],
+[ac_enable_profiling="${enableval}"],[])
+if test x$ac_enable_profiling != x ; then
+   PROFILING_CFLAGS="-DPROFILING=1 -pg"
+   PROFILING_LDFLAGS="-pg"
+else
+   PROFILING_CFLAGS=
+   PROFILING_LDFLAGS=
+fi
+
 #### Make srcdir absolute, if it isn't already.  It's important to
 #### avoid running the path through pwd unnecessarily, since pwd can
 #### give you automounter prefixes, which can go away.  We do all this
@@ -931,7 +944,7 @@
 
 /* Get the CFLAGS for real compilation.  */
 #ifdef __GNUC__
-configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH C_WARNINGS_SWITCH '${SPECIFIED_CFLAGS}'
+configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH C_WARNINGS_SWITCH ${PROFILING_CFLAGS} '${SPECIFIED_CFLAGS}'
 #else
 configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 #endif
@@ -939,6 +952,8 @@
 #endif /* not THIS_IS_CONFIGURE */
 ' > ${tempcname}
 
+LDFLAGS="${LDFLAGS} ${PROFILING_LDFLAGS}"
+
 # The value of CPP is a quoted variable reference, so we need to do this
 # to get its actual value...
 CPP=`eval "echo $CPP"`