Add and document build types profinling and gprof. Some clean up of build_type code in configure

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37323 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Jean-Marc Lasgouttes 2011-01-25 13:49:49 +00:00
parent 3b316bc83f
commit 98b48a4969
3 changed files with 36 additions and 36 deletions

10
INSTALL
View File

@ -106,18 +106,18 @@ to create the Makefile by typing
For more complicated cases, LyX configure honors the following specific
flags:
o --enable-build-type=[rel(ease), dev(elopment), pre(release)]
o --enable-build-type=[rel(ease), pre(release), dev(elopment), prof(iling), gprof]
allows to tweak the compiled code. The following table describes
the settings in terms of various options that are described later
release prerelease development gprof
optimization -O2 -O2 -O -O2
release prerelease development profiling gprof
optimization -O2 -O2 -O -O2 -O2
assertions X X
stdlib-debug X
concept-checks X X
warnings X X
debug X X X
gprof X
debug X X X X
gprof X
The default are as follows in terms of version number
release: stable release (1.x.y)

View File

@ -10,32 +10,37 @@ AC_DEFUN([LYX_CHECK_VERSION],[
echo "configuring LyX version" AC_PACKAGE_VERSION
lyx_devel_version=no
lyx_prerelease=no
enable_debug=yes
build_type=release
AC_MSG_CHECKING([for build type])
AC_ARG_ENABLE(build-type,
AC_HELP_STRING([--enable-build-type=TYPE],[set build setting according to TYPE=dev(elopment), rel(ease) or pre(release)]),
AC_HELP_STRING([--enable-build-type=TYPE],[set build setting according to TYPE=rel(ease), pre(release), dev(elopment), prof(iling), gprof]),
[case $enableval in
dev*) lyx_devel_version=yes
build_type=development;;
pre*) lyx_prerelease=yes
build_type=prerelease;;
gp*) lyx_profiling=yes
build_type=gprof;;
rel*) ;;
*) AC_ERROR([Bad build type specification \"$enableval\". Please use one of dev(elopment), rel(ease) or pre(release)]);;
dev*) build_type=development;;
pre*) build_type=prerelease;;
prof*) build_type=profiling;;
gprof*) build_type=gprof;;
rel*) build_type=release;;
*) AC_ERROR([Bad build type specification \"$enableval\". Please use one of rel(ease), pre(release), dev(elopment), prof(iling), or gprof]);;
esac],
[case AC_PACKAGE_VERSION in
*svn*) lyx_devel_version=yes
build_type=development;;
*pre*|*alpha*|*beta*|*rc*) lyx_prerelease=yes
build_type=prerelease;;
*svn*) build_type=development;;
*pre*|*alpha*|*beta*|*rc*) build_type=prerelease;;
esac])
AC_MSG_RESULT([$build_type])
if test $lyx_devel_version = yes ; then
AC_DEFINE(DEVEL_VERSION, 1, [Define if you are building a development version of LyX])
LYX_DATE="not released yet"
fi
AC_SUBST(lyx_devel_version)])
lyx_flags="$lyx_flags build=$build_type"
case $build_type in
release) enable_debug=no ;;
development) lyx_devel_version=yes
AC_DEFINE(DEVEL_VERSION, 1, [Define if you are building a development version of LyX])
LYX_DATE="not released yet" ;;
prerelease) lyx_prerelease=yes ;;
profiling) ;;
gprof);;
esac
AC_SUBST(lyx_devel_version)
])
dnl Define the option to set a LyX version on installed executables and directories
@ -184,17 +189,12 @@ AC_ARG_ENABLE(warnings,
enable_warnings=no;
fi;])
if test x$enable_warnings = xyes ; then
lyx_flags="warnings $lyx_flags"
lyx_flags="$lyx_flags warnings"
fi
### We might want to disable debug
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug],[enable debug information]),,
[ if test $lyx_devel_version = yes -o $lyx_prerelease = yes -o $lyx_profiling = yes ; then
enable_debug=yes;
else
enable_debug=no;
fi;])
AC_HELP_STRING([--enable-debug],[enable debug information]))
AC_ARG_ENABLE(stdlib-debug,
AC_HELP_STRING([--enable-stdlib-debug],[enable debug mode in the standard library]),,
@ -248,7 +248,7 @@ AC_ARG_ENABLE(assertions,
enable_assertions=no;
fi;])
if test "x$enable_assertions" = xyes ; then
lyx_flags="assertions $lyx_flags"
lyx_flags="$lyx_flags assertions"
AC_DEFINE(ENABLE_ASSERTIONS,1,
[Define if you want assertions to be enabled in the code])
fi
@ -300,7 +300,7 @@ if test x$GXX = xyes; then
if test x$enable_stdlib_debug = xyes ; then
case $gxx_version in
3.4*|4.*)
lyx_flags="stdlib-debug $lyx_flags"
lyx_flags="$lyx_flags stdlib-debug"
AC_DEFINE(_GLIBCXX_DEBUG, 1, [libstdc++ debug mode])
AC_DEFINE(_GLIBCXX_DEBUG_PEDANTIC, 1, [libstdc++ pedantic debug mode])
;;
@ -309,17 +309,17 @@ if test x$GXX = xyes; then
if test x$enable_concept_checks = xyes ; then
case $gxx_version in
3.3*)
lyx_flags="concept-checks $lyx_flags"
lyx_flags="$lyx_flags concept-checks"
AC_DEFINE(_GLIBCPP_CONCEPT_CHECKS, 1, [libstdc++ concept checking])
;;
3.4*|4.*)
lyx_flags="concept-checks $lyx_flags"
lyx_flags="$lyx_flags concept-checks"
AC_DEFINE(_GLIBCXX_CONCEPT_CHECKS, 1, [libstdc++ concept checking])
;;
esac
fi
fi
test "$lyx_pch_comp" = yes && lyx_flags="pch $lyx_flags"
test "$lyx_pch_comp" = yes && lyx_flags="$lyx_flags pch"
AM_CONDITIONAL(LYX_BUILD_PCH, test "$lyx_pch_comp" = yes)
])dnl

View File

@ -222,7 +222,7 @@ real_pkgdatadir=`eval "echo \`eval \"echo \\\`eval \\\"echo ${pkgdatadir}\\\"\\\
real_localedir=`eval "echo \`eval \"echo ${datadir}/locale\"\`"`
VERSION_INFO="Configuration\n\
Host type: ${host}\n\
Special build flags: ${lyx_flags}\n\
Special build flags: ${lyx_flags}\n\
C Compiler: ${CC} ${CC_VERSION}\n\
C Compiler LyX flags: ${AM_CPPFLAGS} ${AM_CFLAGS}\n\
C Compiler flags: ${CPPFLAGS} ${CFLAGS}\n\