diff options
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 67 |
1 files changed, 64 insertions, 3 deletions
@@ -654,7 +654,7 @@ CFG_KMS=auto CFG_LIBUDEV=auto CFG_OBSOLETE_WAYLAND=no CFG_EVDEV=auto -CFG_TSLIB=no +CFG_TSLIB=auto CFG_NIS=auto CFG_CUPS=auto CFG_ICONV=auto @@ -717,6 +717,11 @@ CFG_PULSEAUDIO=auto CFG_COREWLAN=auto CFG_ICU=auto CFG_FORCE_ASSERTS=no +CFG_SANITIZERS=none +CFG_SANITIZE_ADDRESS=no +CFG_SANITIZE_THREAD=no +CFG_SANITIZE_MEMORY=no +CFG_SANITIZE_UNDEFINED=no CFG_PCRE=auto QPA_PLATFORM_GUARD=yes CFG_CXX11=auto @@ -888,6 +893,7 @@ while [ "$#" -gt 0 ]; do -qpa| \ -qconfig| \ -qreal| \ + -sanitize| \ -xkb-config-root| \ -android-sdk| \ -android-ndk| \ @@ -1159,6 +1165,25 @@ while [ "$#" -gt 0 ]; do print "\"$result\"";' "$CFG_QREAL"` fi ;; + sanitize) + if [ "$VAL" = "address" ]; then + CFG_SANITIZE_ADDRESS=yes + elif [ "$VAL" = "thread" ]; then + CFG_SANITIZE_THREAD=yes + elif [ "$VAL" = "memory" ]; then + CFG_SANITIZE_MEMORY=yes + elif [ "$VAL" = "undefined" ]; then + CFG_SANITIZE_UNDEFINED=yes + else + echo "Unknown sanitizer: '$VAL'" + ERROR=true + fi + if [ "$CFG_SANITIZERS" = "none" ]; then + CFG_SANITIZERS=$VAL + else + CFG_SANITIZERS="$CFG_SANITIZERS $VAL" + fi + ;; sysroot) CFG_SYSROOT="$VAL" ;; @@ -2449,6 +2474,9 @@ Additional options: -no-evdev .......... Do not compile support for evdev. * -evdev ............. Compile support for evdev. + -no-tslib .......... Do not compile support for tslib. + * -tslib ............. Compile support for tslib. + -no-icu ............ Do not compile support for ICU libraries. + -icu ............... Compile support for ICU libraries. @@ -2474,6 +2502,8 @@ Additional options: -force-asserts ........ Force Q_ASSERT to be enabled even in release builds. + -sanitize [address|thread|memory|undefined] Enables the specified compiler sanitizer. + -device <name> ............... Cross-compile for device <name> (experimental) -device-option <key=value> ... Add device specific options for the device mkspec (experimental) @@ -3772,17 +3802,21 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; EXEEXT= fi if [ "$BUILD_ON_MAC" = "yes" ]; then + echo "COCOA_LFLAGS =-framework Foundation -framework CoreServices" >>"$mkfile" echo "CARBON_LFLAGS =-framework ApplicationServices" >>"$mkfile" echo "CARBON_CFLAGS =-fconstant-cfstrings" >>"$mkfile" + EXTRA_LFLAGS="$EXTRA_LFLAGS \$(COCOA_LFLAGS)" EXTRA_LFLAGS="$EXTRA_LFLAGS \$(CARBON_LFLAGS)" EXTRA_CFLAGS="$EXTRA_CFLAGS \$(CARBON_CFLAGS)" EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(CARBON_CFLAGS)" EXTRA_OBJS="$EXTRA_OBJS \ qsettings_mac.o \ - qcore_mac.o" + qcore_mac.o \ + qcore_mac_objc.o" EXTRA_SRCS="$EXTRA_SRCS \ \"\$(SOURCE_PATH)/src/corelib/io/qsettings_mac.cpp\" \ - \"\$(SOURCE_PATH)/src/corelib/kernel/qcore_mac.cpp\"" + \"\$(SOURCE_PATH)/src/corelib/kernel/qcore_mac.cpp\" \ + \"\$(SOURCE_PATH)/src/corelib/kernel/qcore_mac_objc.mm\"" fi if [ '!' -z "$D_FLAGS" ]; then EXTRA_CFLAGS="$EXTRA_CFLAGS $D_FLAGS" @@ -4972,6 +5006,9 @@ if [ "$CFG_TSLIB" != "no" ]; then CFG_TSLIB=no fi fi +if [ "$CFG_TSLIB" = "no" ]; then + QMakeVar add DEFINES QT_NO_TSLIB +fi # Check we actually have X11 :-) if compileTest x11/xlib "XLib"; then @@ -5841,6 +5878,27 @@ if [ "$CFG_FORCE_ASSERTS" = "yes" ]; then QT_CONFIG="$QT_CONFIG force_asserts" fi +if [ "$CFG_SANITIZERS" != "none" ]; then + + QTCONFIG_CONFIG="$QTCONFIG_CONFIG sanitizer" + + if [ "$CFG_SANITIZE_ADDRESS" = "yes" ]; then + QTCONFIG_CONFIG="$QTCONFIG_CONFIG sanitize_address" + fi + + if [ "$CFG_SANITIZE_THREAD" = "yes" ]; then + QTCONFIG_CONFIG="$QTCONFIG_CONFIG sanitize_thread" + fi + + if [ "$CFG_SANITIZE_MEMORY" = "yes" ]; then + QTCONFIG_CONFIG="$QTCONFIG_CONFIG sanitize_memory" + fi + + if [ "$CFG_SANITIZE_UNDEFINED" = "yes" ]; then + QTCONFIG_CONFIG="$QTCONFIG_CONFIG sanitize_undefined" + fi +fi + if [ "$CFG_PCRE" = "qt" ]; then QMAKE_CONFIG="$QMAKE_CONFIG pcre" fi @@ -6160,6 +6218,7 @@ QMakeVar set sql-plugins "$SQL_PLUGINS" [ "$CFG_OPENSSL" = "linked" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LINKED_OPENSSL" [ "$CFG_SM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SESSIONMANAGER" +[ "$CFG_TSLIB" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_TSLIB" [ "$CFG_XCURSOR" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XCURSOR" [ "$CFG_XFIXES" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XFIXES" [ "$CFG_FONTCONFIG" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FONTCONFIG" @@ -6528,6 +6587,7 @@ else echo " Mode ................... $build_mode" fi unset build_mode release +echo " Using sanitizer(s)...... $CFG_SANITIZERS" echo " Using C++11 ............ $CFG_CXX11" echo " Using gold linker....... $CFG_USE_GOLD_LINKER" echo " Using PCH .............. $CFG_PRECOMPILE" @@ -6636,6 +6696,7 @@ report_support " PostgreSQL ..........." "$CFG_SQL_psql" plugin "plugin" yes report_support " SQLite 2 ............." "$CFG_SQL_sqlite2" plugin "plugin" yes "built into QtSql" report_support_plugin " SQLite ..............." "$CFG_SQL_sqlite" "$CFG_SQLITE" QtSql report_support " TDS .................." "$CFG_SQL_tds" plugin "plugin" yes "built into QtSql" +report_support " tslib .................." "$CFG_TSLIB" report_support " udev ..................." "$CFG_LIBUDEV" report_support " xkbcommon .............." "$CFG_XKBCOMMON" system "system library" qt "bundled copy, XKB config root: $CFG_XKB_CONFIG_ROOT" report_support " zlib ..................." "$CFG_ZLIB" system "system library" yes "bundled copy" |