summaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@nokia.com>2012-05-09 18:52:44 +0200
committerQt by Nokia <qt-info@nokia.com>2012-05-17 05:14:26 +0200
commit2b21dd69d6a4e47f0ec3d3958ab1def0983ce76c (patch)
tree5ddb2fc848bb3a57b3b122c0783cb01fd9c80237 /configure
parentd07982b104de5dc2b54bef09c071500ce22cf539 (diff)
turn off exceptions by default where they aren't required
This significantly reduces the size of the generated code in places where we don't need exceptions. The -(no-)exceptions configure flag has been removed in the process, as there is now a fine grained way to control this on a per module level, and Qt is being compiled without exceptions in most places. Change-Id: I99a15c5d03339db1fbffd4987935d0d671cdbc32 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure92
1 files changed, 2 insertions, 90 deletions
diff --git a/configure b/configure
index 8c0002c1b8..a79c03be54 100755
--- a/configure
+++ b/configure
@@ -645,7 +645,6 @@ MIN_DBUS_1_VERSION=0.93
# initalize internal variables
CFG_CONFIGURE_EXIT_ON_ERROR=yes
CFG_PROFILE=no
-CFG_EXCEPTIONS=unspecified
CFG_GUI=auto # (yes|no|auto)
CFG_WIDGETS=yes
CFG_QCONFIG=full
@@ -891,7 +890,7 @@ while [ "$#" -gt 0 ]; do
VAL=no
;;
#Qt style yes options
- -profile|-shared|-static|-sm|-xinerama|-xshape|-xsync|-xinput|-xinput2|-egl|-reduce-exports|-pch|-separate-debug-info|-freetype|-xcursor|-xfixes|-xrandr|-xrender|-mitshm|-fontconfig|-xkb|-xcb|-eglfs|-directfb|-nis|-dbus|-dbus-linked|-glib|-gstreamer|-gtkstyle|-cups|-iconv|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-accessibility|-confirm-license|-gnumake|-framework|-debug-and-release|-exceptions|-harfbuzz|-prefix-install|-silent|-optimized-qmake|-reduce-relocations|-sse|-openssl|-openssl-linked|-phonon-backend|-audio-backend|-qml-debug|-javascript-jit|-rpath|-pkg-config|-force-pkg-config|-icu|-force-asserts|-testcocoon)
+ -profile|-shared|-static|-sm|-xinerama|-xshape|-xsync|-xinput|-xinput2|-egl|-reduce-exports|-pch|-separate-debug-info|-freetype|-xcursor|-xfixes|-xrandr|-xrender|-mitshm|-fontconfig|-xkb|-xcb|-eglfs|-directfb|-nis|-dbus|-dbus-linked|-glib|-gstreamer|-gtkstyle|-cups|-iconv|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-accessibility|-confirm-license|-gnumake|-framework|-debug-and-release|-harfbuzz|-prefix-install|-silent|-optimized-qmake|-reduce-relocations|-sse|-openssl|-openssl-linked|-phonon-backend|-audio-backend|-qml-debug|-javascript-jit|-rpath|-pkg-config|-force-pkg-config|-icu|-force-asserts|-testcocoon)
VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
VAL=yes
;;
@@ -1209,15 +1208,6 @@ while [ "$#" -gt 0 ]; do
QTCONFIG_CONFIG="$QTCONFIG_CONFIG testcocoon"
fi
;;
- exceptions|g++-exceptions)
- if [ "$VAL" = "no" ]; then
- CFG_EXCEPTIONS=no
- elif [ "$VAL" = "yes" ]; then
- CFG_EXCEPTIONS=yes
- else
- UNKNOWN_OPT=yes
- fi
- ;;
platform)
PLATFORM="$VAL"
# keep compatibility with old platform names
@@ -2842,8 +2832,7 @@ Usage: $relconf [-h] [-prefix <dir>] [-prefix-install] [-bindir <dir>] [-libdir
[-translationdir <dir>] [-sysconfdir <dir>] [-examplesdir <dir>] [-testsdir <dir>]
[-release] [-debug] [-debug-and-release]
[-developer-build] [-shared] [-static] [-no-fast] [-fast] [-no-largefile]
- [-largefile] [-no-exceptions] [-exceptions] [-no-accessibility]
- [-accessibility] [-no-sql-<driver>] [-sql-<driver>]
+ [-largefile] [-no-accessibility] [-accessibility] [-no-sql-<driver>] [-sql-<driver>]
[-plugin-sql-<driver>] [-system-sqlite]
[-platform] [-D <string>] [-I <string>] [-L <string>] [-help]
[-qt-zlib] [-system-zlib] [-no-gif] [-no-libpng] [-qt-libpng] [-system-libpng]
@@ -2944,9 +2933,6 @@ Configure options:
-no-largefile ...... Disables large file support.
+ -largefile ......... Enables Qt to access files larger than 4 GB.
- -no-exceptions ..... Disable exceptions on compilers that support it.
- * -exceptions ........ Enable exceptions on compilers that support it.
-
-no-accessibility .. Do not compile Accessibility support.
* -accessibility ..... Compile Accessibility support.
@@ -5196,17 +5182,6 @@ if [ '!' -z "$W_FLAGS" ]; then
QMakeVar add QMAKE_OBJECTIVE_CFLAGS_WARN_ON "$W_FLAGS"
fi
-# turn off exceptions for the compilers that support it
-if [ "$XPLATFORM" != "$PLATFORM" ]; then
- COMPILER=`echo $XPLATFORM | cut -f 2- -d-`
-else
- COMPILER=`echo $PLATFORM | cut -f 2- -d-`
-fi
-
-if [ "$CFG_EXCEPTIONS" != "no" ]; then
- QTCONFIG_CONFIG="$QTCONFIG_CONFIG exceptions"
-fi
-
if [ "$XPLATFORM_MINGW" = "yes" ]; then
# mkspecs/features/win32/default_pre.prf sets "no-rtti".
# Follow default behavior of configure.exe by overriding with "rtti".
@@ -5412,28 +5387,6 @@ if [ "$CFG_QML_DEBUG" = "no" ]; then
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_QML_NO_DEBUGGER"
fi
-if [ "$CFG_EXCEPTIONS" = "no" ]; then
- case "$COMPILER" in
- g++*)
- QMakeVar add QMAKE_CFLAGS -fno-exceptions
- QMakeVar add QMAKE_CXXFLAGS -fno-exceptions
- QMakeVar add QMAKE_LFLAGS -fno-exceptions
- ;;
- cc*)
- case "$PLATFORM" in
- irix-cc*)
- QMakeVar add QMAKE_CFLAGS -LANG:exceptions=off
- QMakeVar add QMAKE_CXXFLAGS -LANG:exceptions=off
- QMakeVar add QMAKE_LFLAGS -LANG:exceptions=off
- ;;
- *) ;;
- esac
- ;;
- *) ;;
- esac
- QMAKE_CONFIG="$QMAKE_CONFIG exceptions_off"
-fi
-
case "$COMPILER" in
g++*)
# GNU C++
@@ -5553,7 +5506,6 @@ QMakeVar set sql-plugins "$SQL_PLUGINS"
[ "$CFG_PNG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_PNG"
[ "$CFG_JPEG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_JPEG"
[ "$CFG_ZLIB" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ZLIB"
-[ "$CFG_EXCEPTIONS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_EXCEPTIONS"
[ "$CFG_SXE" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SXE"
[ "$CFG_DBUS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_DBUS"
@@ -5860,46 +5812,6 @@ fi
#-------------------------------------------------------------------------------
exec 3>&1 1>$outpath/config.summary # redirect output temporarily to config.summary
-case "$COMPILER" in
-g++*)
- if [ "$CFG_EXCEPTIONS" != "no" ]; then
- cat <<EOF
-
- This target is using the GNU C++ compiler ($PLATFORM).
-
- Recent versions of this compiler automatically include code for
- exceptions, which increase both the size of the Qt libraries and
- the amount of memory taken by your applications.
-
- You may choose to re-run `basename $0` with the -no-exceptions
- option to compile Qt without exceptions. This is completely binary
- compatible, and existing applications will continue to work.
-
-EOF
- fi
- ;;
-cc*)
- case "$PLATFORM" in
- irix-cc*)
- if [ "$CFG_EXCEPTIONS" != "no" ]; then
- cat <<EOF
-
- This target is using the MIPSpro C++ compiler ($PLATFORM).
-
- You may choose to re-run `basename $0` with the -no-exceptions
- option to compile Qt without exceptions. This will make the
- size of the Qt library smaller and reduce the amount of memory
- taken by your applications.
-
-EOF
- fi
- ;;
- *) ;;
- esac
- ;;
-*) ;;
-esac
-
echo
if [ "$XPLATFORM" = "$PLATFORM" ]; then
echo "Build type: $PLATFORM"