]> git.eshelyaron.com Git - emacs.git/commitdiff
(--enable-profiling): New option.
authorDan Nicolaescu <dann@ics.uci.edu>
Fri, 3 Jul 2009 13:04:57 +0000 (13:04 +0000)
committerDan Nicolaescu <dann@ics.uci.edu>
Fri, 3 Jul 2009 13:04:57 +0000 (13:04 +0000)
ChangeLog
configure
configure.in

index 26f5235ead38cea975cd69b0ffa0eb9a72ff1ebe..769f58c21be46afcc5533d7695bb47ec02b3d3ba 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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.
index c528b611df0864034259a454ec5611ef7ace368c..b850521aba9bce425bfdb723aed53da4a63d8eb9 100755 (executable)
--- a/configure
+++ b/configure
@@ -1352,6 +1352,9 @@ Optional Features:
                          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 @@ _ACEOF
 
 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 @@ configure___ CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 
 /* 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 @@ configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 #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"`
index a1b02dced8b68f2911941ba5d82d21186694386a..3bcd60b3860d7872412a69635895ed495b0a4bfb 100644 (file)
@@ -273,6 +273,19 @@ if test x$ac_gc_check_cons_list != x ; then
 [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 @@ configure___ CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 
 /* 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 @@ configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
 #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"`