Merge remote-tracking branch 'origin/api_changes'
Conflicts: dist/changes-5.0.0 mkspecs/features/qt_module_config.prf qmake/project.cpp qmake/property.cpp Change-Id: I6e4af40743a9aeff8ed18533a48036e332acc296
This commit is contained in:
commit
96232be146
@ -1,22 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
LEN="$1"
|
||||
STR="$2"
|
||||
PAD='\0'
|
||||
STRLEN=`echo $STR | wc -c`
|
||||
RES="$STR"
|
||||
|
||||
EXTRALEN=`expr $LEN - $STRLEN`
|
||||
while [ "$EXTRALEN" -gt 32 ]; do
|
||||
RES="$RES$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD$PAD"
|
||||
EXTRALEN=`expr $EXTRALEN - 32`
|
||||
done
|
||||
while [ "$EXTRALEN" -gt 0 ]; do
|
||||
RES="$RES$PAD"
|
||||
EXTRALEN=`expr $EXTRALEN - 1`
|
||||
done
|
||||
cat <<EOF
|
||||
$RES
|
||||
EOF
|
||||
|
||||
|
177
configure
vendored
177
configure
vendored
@ -820,7 +820,10 @@ QT_INSTALL_TRANSLATIONS=
|
||||
QT_INSTALL_SETTINGS=
|
||||
QT_INSTALL_EXAMPLES=
|
||||
QT_INSTALL_TESTS=
|
||||
CFG_SYSROOT=
|
||||
QT_HOST_PREFIX=
|
||||
QT_HOST_BINS=
|
||||
QT_HOST_DATA=
|
||||
|
||||
#flags for SQL drivers
|
||||
QT_CFLAGS_PSQL=
|
||||
@ -973,7 +976,7 @@ while [ "$#" -gt 0 ]; do
|
||||
shift
|
||||
VAL=$1
|
||||
;;
|
||||
-prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-testsdir|-depths|-make|-nomake|-platform|-xplatform|-sdk|-arch|-host-arch|-mysql_config|-sysroot)
|
||||
-prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-testsdir|-depths|-make|-nomake|-platform|-xplatform|-sdk|-arch|-host-arch|-mysql_config|-sysroot|-hostdatadir|-hostbindir)
|
||||
VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
|
||||
shift
|
||||
VAL="$1"
|
||||
@ -1156,6 +1159,12 @@ while [ "$#" -gt 0 ]; do
|
||||
hostprefix)
|
||||
QT_HOST_PREFIX="$VAL"
|
||||
;;
|
||||
hostdatadir)
|
||||
QT_HOST_DATA="$VAL"
|
||||
;;
|
||||
hostbindir)
|
||||
QT_HOST_BINS="$VAL"
|
||||
;;
|
||||
force-pkg-config)
|
||||
QT_FORCE_PKGCONFIG=yes
|
||||
;;
|
||||
@ -3077,6 +3086,40 @@ if [ -z "$QT_INSTALL_TESTS" ]; then #default
|
||||
fi
|
||||
QT_INSTALL_TESTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TESTS"`
|
||||
|
||||
#------- host paths --------
|
||||
|
||||
if [ -z "$QT_HOST_PREFIX" ]; then
|
||||
QT_HOST_PREFIX=$QT_INSTALL_PREFIX
|
||||
haveHpx=false
|
||||
else
|
||||
QT_HOST_PREFIX=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_PREFIX"`
|
||||
haveHpx=true
|
||||
fi
|
||||
|
||||
if [ -z "$QT_HOST_BINS" ]; then #default
|
||||
if $haveHpx; then
|
||||
if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
QT_HOST_BINS="/Developer/Applications/Qt"
|
||||
fi
|
||||
fi
|
||||
[ -z "$QT_HOST_BINS" ] && QT_HOST_BINS="$QT_HOST_PREFIX/bin" #fallback
|
||||
else
|
||||
QT_HOST_BINS="$QT_INSTALL_BINS"
|
||||
fi
|
||||
fi
|
||||
QT_HOST_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_BINS"`
|
||||
|
||||
if [ -z "$QT_HOST_DATA" ]; then #default
|
||||
if $haveHpx; then
|
||||
QT_HOST_DATA="$QT_HOST_PREFIX"
|
||||
else
|
||||
QT_HOST_DATA="$QT_INSTALL_DATA"
|
||||
fi
|
||||
else
|
||||
QT_HOST_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_DATA"`
|
||||
fi
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# help - interactive parts of the script _after_ this section please
|
||||
#-------------------------------------------------------------------------------
|
||||
@ -3194,6 +3237,7 @@ cat <<EOF
|
||||
-hostprefix [dir] .. Tools and libraries needed when developing
|
||||
applications are installed in [dir]. If [dir] is
|
||||
not given, the current build directory will be used.
|
||||
(default PREFIX)
|
||||
EOF
|
||||
fi
|
||||
cat <<EOF
|
||||
@ -3230,6 +3274,17 @@ cat <<EOF
|
||||
(default PREFIX/examples)
|
||||
-testsdir <dir> ....... Tests will be installed to <dir>
|
||||
(default PREFIX/tests)
|
||||
EOF
|
||||
if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
|
||||
cat <<EOF
|
||||
|
||||
-hostbindir <dir> .. Host executables will be installed to <dir>
|
||||
(default HOSTPREFIX/bin)
|
||||
-hostdatadir <dir> . Data used by qmake will be installed to <dir>
|
||||
(default HOSTPREFIX)
|
||||
EOF
|
||||
fi
|
||||
cat <<EOF
|
||||
|
||||
Configure options:
|
||||
|
||||
@ -3925,105 +3980,44 @@ esac
|
||||
#-------------------------------------------------------------------------------
|
||||
[ -d "$outpath/src/corelib/global" ] || mkdir -p "$outpath/src/corelib/global"
|
||||
|
||||
LICENSE_USER_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_lcnsuser=$Licensee"`
|
||||
LICENSE_PRODUCTS_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_lcnsprod=$Edition"`
|
||||
PREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_INSTALL_PREFIX"`
|
||||
DOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_INSTALL_DOCS"`
|
||||
HEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_INSTALL_HEADERS"`
|
||||
LIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_INSTALL_LIBS"`
|
||||
BINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_INSTALL_BINS"`
|
||||
PLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_INSTALL_PLUGINS"`
|
||||
IMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_INSTALL_IMPORTS"`
|
||||
DATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_INSTALL_DATA"`
|
||||
TRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_INSTALL_TRANSLATIONS"`
|
||||
SETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
|
||||
EXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
|
||||
TESTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_tstspath=$QT_INSTALL_TESTS"`
|
||||
|
||||
TODAY=`date +%Y-%m-%d`
|
||||
cat > "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
|
||||
/* License Info */
|
||||
static const char qt_configure_licensee_str [256 + 12] = "$LICENSE_USER_STR";
|
||||
static const char qt_configure_licensed_products_str [256 + 12] = "$LICENSE_PRODUCTS_STR";
|
||||
static const char qt_configure_licensee_str [256 + 12] = "qt_lcnsuser=$Licensee";
|
||||
static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$Edition";
|
||||
|
||||
/* Installation date */
|
||||
static const char qt_configure_installation [12+11] = "qt_instdate=$TODAY";
|
||||
EOF
|
||||
static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`";
|
||||
|
||||
|
||||
if [ ! -z "$QT_HOST_PREFIX" ]; then
|
||||
HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX"`
|
||||
HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/doc"`
|
||||
HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/include"`
|
||||
HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/lib"`
|
||||
HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/bin"`
|
||||
HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/plugins"`
|
||||
HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/IMPORTS"`
|
||||
HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX"`
|
||||
HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/translations"`
|
||||
HOSTSETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
|
||||
HOSTEXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
|
||||
HOSTTESTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_tstspath=$QT_INSTALL_TESTS"`
|
||||
|
||||
cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
|
||||
|
||||
#if defined(QT_BOOTSTRAPPED) || defined(QT_BUILD_QMAKE)
|
||||
/* Installation Info */
|
||||
static const char qt_configure_prefix_path_str [256 + 12] = "$HOSTPREFIX_PATH_STR";
|
||||
static const char qt_configure_documentation_path_str[256 + 12] = "$HOSTDOCUMENTATION_PATH_STR";
|
||||
static const char qt_configure_headers_path_str [256 + 12] = "$HOSTHEADERS_PATH_STR";
|
||||
static const char qt_configure_libraries_path_str [256 + 12] = "$HOSTLIBRARIES_PATH_STR";
|
||||
static const char qt_configure_binaries_path_str [256 + 12] = "$HOSTBINARIES_PATH_STR";
|
||||
static const char qt_configure_plugins_path_str [256 + 12] = "$HOSTPLUGINS_PATH_STR";
|
||||
static const char qt_configure_imports_path_str [256 + 12] = "$HOSTIMPORTS_PATH_STR";
|
||||
static const char qt_configure_data_path_str [256 + 12] = "$HOSTDATA_PATH_STR";
|
||||
static const char qt_configure_translations_path_str [256 + 12] = "$HOSTTRANSLATIONS_PATH_STR";
|
||||
static const char qt_configure_settings_path_str [256 + 12] = "$HOSTSETTINGS_PATH_STR";
|
||||
static const char qt_configure_examples_path_str [256 + 12] = "$HOSTEXAMPLES_PATH_STR";
|
||||
static const char qt_configure_tests_path_str [256 + 12] = "$HOSTTESTS_PATH_STR";
|
||||
#else // QT_BOOTSTRAPPED
|
||||
static const char qt_configure_prefix_path_strs[][256 + 12] = {
|
||||
"qt_prfxpath=$QT_INSTALL_PREFIX",
|
||||
"qt_docspath=$QT_INSTALL_DOCS",
|
||||
"qt_hdrspath=$QT_INSTALL_HEADERS",
|
||||
"qt_libspath=$QT_INSTALL_LIBS",
|
||||
"qt_binspath=$QT_INSTALL_BINS",
|
||||
"qt_plugpath=$QT_INSTALL_PLUGINS",
|
||||
"qt_impspath=$QT_INSTALL_IMPORTS",
|
||||
"qt_datapath=$QT_INSTALL_DATA",
|
||||
"qt_trnspath=$QT_INSTALL_TRANSLATIONS",
|
||||
"qt_xmplpath=$QT_INSTALL_EXAMPLES",
|
||||
"qt_tstspath=$QT_INSTALL_TESTS",
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
"qt_ssrtpath=$CFG_SYSROOT",
|
||||
"qt_hpfxpath=$QT_HOST_PREFIX",
|
||||
"qt_hbinpath=$QT_HOST_BINS",
|
||||
"qt_hdatpath=$QT_HOST_DATA",
|
||||
#endif
|
||||
};
|
||||
static const char qt_configure_settings_path_str[256 + 12] = "qt_stngpath=$QT_INSTALL_SETTINGS";
|
||||
EOF
|
||||
fi
|
||||
|
||||
cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
|
||||
/* Installation Info */
|
||||
static const char qt_configure_prefix_path_str [256 + 12] = "$PREFIX_PATH_STR";
|
||||
static const char qt_configure_documentation_path_str[256 + 12] = "$DOCUMENTATION_PATH_STR";
|
||||
static const char qt_configure_headers_path_str [256 + 12] = "$HEADERS_PATH_STR";
|
||||
static const char qt_configure_libraries_path_str [256 + 12] = "$LIBRARIES_PATH_STR";
|
||||
static const char qt_configure_binaries_path_str [256 + 12] = "$BINARIES_PATH_STR";
|
||||
static const char qt_configure_plugins_path_str [256 + 12] = "$PLUGINS_PATH_STR";
|
||||
static const char qt_configure_imports_path_str [256 + 12] = "$IMPORTS_PATH_STR";
|
||||
static const char qt_configure_data_path_str [256 + 12] = "$DATA_PATH_STR";
|
||||
static const char qt_configure_translations_path_str [256 + 12] = "$TRANSLATIONS_PATH_STR";
|
||||
static const char qt_configure_settings_path_str [256 + 12] = "$SETTINGS_PATH_STR";
|
||||
static const char qt_configure_examples_path_str [256 + 12] = "$EXAMPLES_PATH_STR";
|
||||
static const char qt_configure_tests_path_str [256 + 12] = "$TESTS_PATH_STR";
|
||||
EOF
|
||||
|
||||
if [ ! -z "$QT_HOST_PREFIX" ]; then
|
||||
cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
|
||||
#endif // QT_BOOTSTRAPPED
|
||||
|
||||
EOF
|
||||
fi
|
||||
|
||||
cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
|
||||
/* strlen( "qt_lcnsxxxx" ) == 12 */
|
||||
#define QT_CONFIGURE_LICENSEE qt_configure_licensee_str + 12;
|
||||
#define QT_CONFIGURE_LICENSED_PRODUCTS qt_configure_licensed_products_str + 12;
|
||||
#define QT_CONFIGURE_PREFIX_PATH qt_configure_prefix_path_str + 12;
|
||||
#define QT_CONFIGURE_DOCUMENTATION_PATH qt_configure_documentation_path_str + 12;
|
||||
#define QT_CONFIGURE_HEADERS_PATH qt_configure_headers_path_str + 12;
|
||||
#define QT_CONFIGURE_LIBRARIES_PATH qt_configure_libraries_path_str + 12;
|
||||
#define QT_CONFIGURE_BINARIES_PATH qt_configure_binaries_path_str + 12;
|
||||
#define QT_CONFIGURE_PLUGINS_PATH qt_configure_plugins_path_str + 12;
|
||||
#define QT_CONFIGURE_IMPORTS_PATH qt_configure_imports_path_str + 12;
|
||||
#define QT_CONFIGURE_DATA_PATH qt_configure_data_path_str + 12;
|
||||
#define QT_CONFIGURE_TRANSLATIONS_PATH qt_configure_translations_path_str + 12;
|
||||
|
||||
#define QT_CONFIGURE_SETTINGS_PATH qt_configure_settings_path_str + 12;
|
||||
#define QT_CONFIGURE_EXAMPLES_PATH qt_configure_examples_path_str + 12;
|
||||
#define QT_CONFIGURE_TESTS_PATH qt_configure_tests_path_str + 12;
|
||||
EOF
|
||||
|
||||
# avoid unecessary rebuilds by copying only if qconfig.cpp has changed
|
||||
@ -4037,9 +4031,9 @@ fi
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
if [ "$LicenseType" = "Evaluation" ]; then
|
||||
EVALKEY=`"$relpath/config.tests/unix/padstring" 524 "qt_qevalkey=$LicenseKeyExt"`
|
||||
EVALKEY=qt_qevalkey=$LicenseKeyExt
|
||||
elif echo "$D_FLAGS" | grep QT_EVAL >/dev/null 2>&1; then
|
||||
EVALKEY=`"$relpath/config.tests/unix/padstring" 524 "qt_qevalkey="`
|
||||
EVALKEY=qt_qevalkey=
|
||||
fi
|
||||
|
||||
if [ -n "$EVALKEY" ]; then
|
||||
@ -6619,10 +6613,9 @@ EOF
|
||||
if [ -n "$CFG_SYSROOT" ]; then
|
||||
echo "# sysroot" >>"$QTCONFIG.tmp"
|
||||
echo `basename "$XQMAKESPEC"` \{ >>"$QTCONFIG.tmp"
|
||||
echo " QT_SYSROOT += \$\$quote($CFG_SYSROOT)" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_CFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_CXXFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_LFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_CFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_CXXFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
|
||||
echo " QMAKE_LFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
|
||||
echo "}" >> "$QTCONFIG.tmp"
|
||||
echo >> "$QTCONFIG.tmp"
|
||||
fi
|
||||
|
6
dist/changes-5.0.0
vendored
6
dist/changes-5.0.0
vendored
@ -45,6 +45,8 @@ information about a particular change.
|
||||
in Qt4, so these methods return a bool now. If your code used the undocumented
|
||||
QBool, simply replace it with bool.
|
||||
|
||||
- qIsDetached<> has been removed without replacement.
|
||||
|
||||
- QMetaType:
|
||||
* QMetaType::construct() has been renamed to QMetaType::create().
|
||||
* QMetaType::unregisterType() has been removed.
|
||||
@ -201,6 +203,10 @@ information about a particular change.
|
||||
- qmake
|
||||
* Projects which explicitly set an empty TARGET are considered broken now.
|
||||
* The makespec and .qmake.cache do not see build pass specific variables any more.
|
||||
* Configure's -sysroot and -hostprefix are now handled slightly differently.
|
||||
The QT_INSTALL_... properties are now automatically prefixed with the sysroot;
|
||||
the raw values are available as QT_RAW_INSTALL_... and the sysroot as QT_SYSROOT.
|
||||
The new QT_HOST_... properties can be used to refer to the Qt host tools.
|
||||
* Several functions and built-in variables were modified to return normalized paths.
|
||||
|
||||
- QTextCodecPlugin has been removed since it is no longer used. All text codecs
|
||||
|
@ -50,7 +50,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
StateSwitchEvent(int rand)
|
||||
explicit StateSwitchEvent(int rand)
|
||||
: QEvent(Type(StateSwitchType)),
|
||||
m_rand(rand)
|
||||
{
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthreads
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar -X64 cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib -X64
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthreads
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -66,9 +66,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthreads
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar -X64 cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib -X64
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthreads
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib
|
||||
|
@ -46,9 +46,6 @@ QMAKE_CFLAGS_XCB =
|
||||
QMAKE_LIBS_XCB =
|
||||
QMAKE_DEFINES_XCB =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -21,9 +21,6 @@ QMAKE_LIBS_OPENGL = -framework OpenGL -framework AGL
|
||||
QMAKE_LIBS_OPENGL_QT = $$QMAKE_LIBS_OPENGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_RANLIB = ranlib -s
|
||||
|
||||
|
@ -72,9 +72,6 @@ QMAKE_PREFIX_SHLIB = lib
|
||||
QMAKE_PREFIX_STATICLIB = lib
|
||||
QMAKE_EXTENSION_STATICLIB = a
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -78,9 +78,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib -s
|
||||
|
@ -26,10 +26,10 @@ CONFIG = lex yacc warn_on debug uic resources $$CONFIG
|
||||
# can we tell syncqt to do a -developer-build
|
||||
win32 {
|
||||
CMP_QDIR = $$upper($$QTDIR)
|
||||
CMP_INSTALL_PREFIX = $$upper($$[QT_INSTALL_PREFIX])
|
||||
CMP_INSTALL_PREFIX = $$upper($$[QT_HOST_PREFIX])
|
||||
} else {
|
||||
CMP_QDIR = $$QTDIR
|
||||
CMP_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
|
||||
CMP_INSTALL_PREFIX = $$[QT_HOST_PREFIX]
|
||||
}
|
||||
contains(CMP_QDIR, $$CMP_INSTALL_PREFIX):QTFWD = -qtdir $$QTDIR -module-fwd $$QTDIR/mkspecs/modules -developer-build
|
||||
unset(CMP_QDIR)
|
||||
|
@ -1,5 +1,5 @@
|
||||
!isEmpty(MODULE_PRI) {
|
||||
pritarget.path = $$[QT_INSTALL_DATA]/mkspecs/modules
|
||||
pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
|
||||
pritarget.files = $$MODULE_PRI
|
||||
INSTALLS += pritarget
|
||||
} else {
|
||||
|
@ -1,5 +1,32 @@
|
||||
CONFIG *= moc thread
|
||||
|
||||
# Temporary fixes to avoid QDeclarative -> QQml breakage:
|
||||
|
||||
# Projects depending on declarative will now get the full set of
|
||||
# -DOldSymbol=NewSymbol definitions added to their configuration
|
||||
# so that the old symbol names still compile. All code previously
|
||||
# in the declarative library is now in the qml library.
|
||||
contains(QT, qmldevtools):!contains(QT, declarative) {
|
||||
QT += declarative
|
||||
}
|
||||
contains(QT, qmldevtools-private):!contains(QT, declarative-private) {
|
||||
QT += declarative-private
|
||||
}
|
||||
|
||||
contains(QT, quick):!contains(QT, declarative) {
|
||||
QT += declarative
|
||||
}
|
||||
contains(QT, quick-private):!contains(QT, declarative-private) {
|
||||
QT += declarative-private
|
||||
}
|
||||
|
||||
contains(QT, declarative):!contains(QT, qml) {
|
||||
QT += qml
|
||||
}
|
||||
contains(QT, declarative-private):!contains(QT, qml-private) {
|
||||
QT += qml-private
|
||||
}
|
||||
|
||||
#handle defines
|
||||
win32 {
|
||||
qt_static:DEFINES += QT_NODLL
|
||||
|
@ -8,7 +8,7 @@ exists($$_QMAKE_CACHE_) {
|
||||
isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) {
|
||||
!isEmpty(QT_BUILD_TREE):QMAKE_QT_CONFIG = $$QT_BUILD_TREE
|
||||
else:exists($$_QMAKE_CACHE_):QMAKE_QT_CONFIG = $$fromfile($$_QMAKE_CACHE_, QT_BUILD_TREE)
|
||||
isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $$[QT_INSTALL_DATA]
|
||||
isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $$[QT_HOST_DATA]
|
||||
QMAKE_QT_CONFIG = $$QMAKE_QT_CONFIG/mkspecs/qconfig.pri
|
||||
}
|
||||
!exists($$QMAKE_QT_CONFIG)|!include($$QMAKE_QT_CONFIG, "", true) {
|
||||
|
@ -132,7 +132,7 @@ defineTest(qtAddModule) {
|
||||
|
||||
isEmpty(LINKAGE) {
|
||||
# Make sure we can link to uninstalled libraries
|
||||
!isEqual(MODULE_LIBS, $$[QT_INSTALL_LIBS]) {
|
||||
!isEqual(MODULE_LIBS, $$[QT_INSTALL_LIBS]) { ### XXX
|
||||
QMAKE_LIBDIR *= $$MODULE_LIBS
|
||||
unix:!mac:QMAKE_LFLAGS *= "-Wl,-rpath-link,$$MODULE_LIBS"
|
||||
}
|
||||
@ -164,7 +164,7 @@ defineTest(qtAddModule) {
|
||||
|
||||
# variable, default
|
||||
defineTest(qtPrepareTool) {
|
||||
MODBASE = $$[QT_INSTALL_BINS]
|
||||
MODBASE = $$[QT_HOST_BINS]
|
||||
!isEmpty(QT_BUILD_TREE):MODBASE = $$QT_BUILD_TREE/bin
|
||||
count(ARGS, 2, greaterThan) {
|
||||
isEmpty(QT.$${3}.bins):warning("No QT.$${3}.bins, module path ignored for qtPrepareTool($$1, $$2, $$3)")
|
||||
|
@ -8,7 +8,7 @@ isEmpty(QMAKE_QT_MODULE)|!exists($$QMAKE_QT_MODULE) {
|
||||
!exists($$QMAKE_QT_MODULE):exists($$QMAKE_CACHE_DIR/mkspecs/qmodule.pri):QMAKE_QT_MODULE = $$QMAKE_CACHE_DIR/mkspecs/qmodule.pri
|
||||
!exists($$QMAKE_QT_MODULE):exists($$QMAKE_CACHE_DIR/qtbase/mkspecs/qmodule.pri):QMAKE_QT_MODULE = $$QMAKE_CACHE_DIR/qtbase/mkspecs/qmodule.pri
|
||||
!exists($$QMAKE_QT_MODULE):if(!isEmpty(QT_BUILD_TREE) & exists($$QT_BUILD_TREE/mkspecs/qmodule.pri)):QMAKE_QT_MODULE = $$QT_BUILD_TREE/mkspecs/qmodule.pri
|
||||
!exists($$QMAKE_QT_MODULE):exists($$[QT_INSTALL_DATA]/mkspecs/qmodule.pri):QMAKE_QT_MODULE = $$[QT_INSTALL_DATA]/mkspecs/qmodule.pri
|
||||
!exists($$QMAKE_QT_MODULE):exists($$[QT_HOST_DATA]/mkspecs/qmodule.pri):QMAKE_QT_MODULE = $$[QT_HOST_DATA]/mkspecs/qmodule.pri
|
||||
}
|
||||
|
||||
!contains(QMAKE_INTERNAL_INCLUDED_FILES, .*qmodule\\.pri) {
|
||||
|
@ -118,24 +118,24 @@ load(qt_installs)
|
||||
|
||||
unix|win32-g++* {
|
||||
CONFIG += create_pc
|
||||
QMAKE_PKGCONFIG_LIBDIR = $$[QT_INSTALL_LIBS]
|
||||
QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_HEADERS]/$$TARGET
|
||||
QMAKE_PKGCONFIG_CFLAGS = -I$$[QT_INSTALL_HEADERS]
|
||||
QMAKE_PKGCONFIG_LIBDIR = $$[QT_RAW_INSTALL_LIBS]
|
||||
QMAKE_PKGCONFIG_INCDIR = $$[QT_RAW_INSTALL_HEADERS]/$$TARGET
|
||||
QMAKE_PKGCONFIG_CFLAGS = -I$$[QT_RAW_INSTALL_HEADERS]
|
||||
QMAKE_PKGCONFIG_DESTDIR = pkgconfig
|
||||
include_replace.match = $$QMAKE_INCDIR_QT
|
||||
include_replace.replace = $$[QT_INSTALL_HEADERS]
|
||||
include_replace.replace = $$[QT_RAW_INSTALL_HEADERS]
|
||||
lib_replace.match = $$QMAKE_LIBDIR_QT
|
||||
lib_replace.replace = $$[QT_INSTALL_LIBS]
|
||||
lib_replace.replace = $$[QT_RAW_INSTALL_LIBS]
|
||||
prefix_replace.match = $$QT_BUILD_TREE
|
||||
prefix_replace.replace = $$[QT_INSTALL_PREFIX]
|
||||
prefix_replace.replace = $$[QT_RAW_INSTALL_PREFIX]
|
||||
QMAKE_PKGCONFIG_INSTALL_REPLACE += include_replace lib_replace prefix_replace
|
||||
}
|
||||
|
||||
unix {
|
||||
CONFIG += create_libtool explicitlib
|
||||
QMAKE_LIBTOOL_LIBDIR = $$[QT_INSTALL_LIBS]
|
||||
QMAKE_PRL_LIBDIR = $$[QT_INSTALL_LIBS]
|
||||
QMAKE_PRL_LIBDIR = $$[QT_RAW_INSTALL_LIBS] ### XXX
|
||||
QMAKE_PRL_INSTALL_REPLACE += include_replace lib_replace
|
||||
QMAKE_LIBTOOL_LIBDIR = $$[QT_RAW_INSTALL_LIBS]
|
||||
QMAKE_LIBTOOL_INSTALL_REPLACE += include_replace lib_replace
|
||||
}
|
||||
|
||||
|
@ -32,9 +32,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -90,9 +90,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -111,9 +111,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL -lXt
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -109,9 +109,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -90,9 +90,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL -lXt
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -73,9 +73,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -73,9 +73,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -65,9 +65,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL -lXt
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -108,9 +108,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL -lXt
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -76,9 +76,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_YACC = -ly
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -42,9 +42,6 @@ QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
|
||||
QMAKE_LIBS_OPENVG = -lOpenVG
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -98,9 +98,6 @@ QMAKE_LIBS_OPENGL = -lGL -lm
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = CC -ar -o
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -98,9 +98,6 @@ QMAKE_LIBS_OPENGL = -lGL -lm
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = CC -ar -o
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -71,9 +71,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -71,9 +71,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -63,9 +63,6 @@ QMAKE_LIBS_NIS = -lnsl
|
||||
QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_RANLIB =
|
||||
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -74,9 +74,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = xiar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -76,9 +76,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -67,9 +67,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -70,9 +70,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -77,9 +77,6 @@ QMAKE_LIBS_OPENGL = -framework OpenGL -framework AGL
|
||||
QMAKE_LIBS_OPENGL_QT = $$QMAKE_LIBS_OPENGL
|
||||
#QMAKE_LIBS_THREAD = -lpthreads
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib -s
|
||||
|
@ -68,9 +68,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib
|
||||
|
@ -69,9 +69,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar q
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB = ranlib
|
||||
|
@ -63,9 +63,6 @@ QMAKE_LIBS_X11SM = -lSM -lICE
|
||||
QMAKE_LIBS_OPENGL = -lGL -lXt
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -64,9 +64,6 @@ QMAKE_LIBS_X11 = -lXext -lX11 -lsocket -lm
|
||||
QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -88,9 +88,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread -lrt
|
||||
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = CC -xar -o
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -71,9 +71,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread -lrt
|
||||
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = CC -xar -o
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -92,9 +92,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread -lrt
|
||||
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -75,9 +75,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread -lrt
|
||||
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -64,9 +64,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lrt
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -66,9 +66,6 @@ QMAKE_LIBS_OPENGL = -lGL
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lpthread -lexc -lrt
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -69,9 +69,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -68,9 +68,6 @@ QMAKE_LIBS_OPENGL = -lGL -lXt
|
||||
QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD = -lthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cq
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -50,9 +50,6 @@ QMAKE_LIBS_X11 =
|
||||
QMAKE_LIBS_X11SM =
|
||||
QMAKE_LIBS_THREAD =
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_RANLIB =
|
||||
|
||||
|
@ -108,9 +108,6 @@ QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
|
||||
QMAKE_LIBS_OPENVG = -lOpenVG
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = host-ar cqs
|
||||
QMAKE_OBJCOPY = host-objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -37,9 +37,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
QMAKE_LIBS_NETWORK = -lsocket
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_RANLIB =
|
||||
|
||||
|
@ -84,9 +84,6 @@ QMAKE_LIBS_THREAD =
|
||||
QMAKE_LIBS_NETWORK = # -lnetwrap # only needed if kernel is missing gethostbyname and friends
|
||||
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -83,9 +83,6 @@ QMAKE_LIBS_OPENGL_QT = -lGL
|
||||
QMAKE_LIBS_THREAD =
|
||||
QMAKE_LIBS_NETWORK = # -lnet # only needed if kernel is missing gethostbyname and friends
|
||||
|
||||
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
|
||||
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
|
||||
|
||||
QMAKE_AR = ar cqs
|
||||
QMAKE_OBJCOPY = objcopy
|
||||
QMAKE_RANLIB =
|
||||
|
@ -213,7 +213,7 @@ GBuildMakefileGenerator::write()
|
||||
dllbase += DLLOFFSET;
|
||||
}
|
||||
|
||||
warn_msg(WarnParser, Option::output.fileName().toAscii());
|
||||
warn_msg(WarnParser, Option::output.fileName().toAscii().constData());
|
||||
QTextStream t(&Option::output);
|
||||
QString primaryTarget(project->values("QMAKE_CXX").at(0));
|
||||
|
||||
@ -425,7 +425,7 @@ GBuildMakefileGenerator::openOutput(QFile &file, const QString &build) const
|
||||
outputName += QDir::separator();
|
||||
outputName += fileInfo(project->projectFile()).baseName();
|
||||
outputName += projectSuffix();
|
||||
warn_msg(WarnParser, outputName.toAscii());
|
||||
warn_msg(WarnParser, outputName.toAscii().constData());
|
||||
file.setFileName(outputName);
|
||||
}
|
||||
debug_msg(1, "file is %s", file.fileName().toLatin1().constData());
|
||||
|
@ -1378,7 +1378,7 @@ ProjectBuilderMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
}
|
||||
tmp = project->values("QMAKE_PBX_VARS");
|
||||
for(int i = 0; i < tmp.count(); i++) {
|
||||
QString var = tmp[i], val = qgetenv(var.toLatin1());
|
||||
QString var = tmp[i], val = QString::fromAscii(qgetenv(var.toLatin1().constData()));
|
||||
if(val.isEmpty() && var == "TB")
|
||||
val = "/usr/bin/";
|
||||
t << "\t\t\t\t" << writeSettings(var, escapeFilePath(val)) << ";" << "\n";
|
||||
|
@ -3174,7 +3174,7 @@ MakefileGenerator::pkgConfigPrefix() const
|
||||
{
|
||||
if(!project->isEmpty("QMAKE_PKGCONFIG_PREFIX"))
|
||||
return project->first("QMAKE_PKGCONFIG_PREFIX");
|
||||
return QLibraryInfo::location(QLibraryInfo::PrefixPath);
|
||||
return QLibraryInfo::rawLocation(QLibraryInfo::PrefixPath);
|
||||
}
|
||||
|
||||
QString
|
||||
|
@ -185,9 +185,9 @@ SourceFile *SourceFiles::lookupFile(const char *file)
|
||||
|
||||
void SourceFiles::addFile(SourceFile *p, const char *k, bool own_file)
|
||||
{
|
||||
QByteArray ba = p->file.local().toLatin1();
|
||||
const QByteArray ba = p->file.local().toLatin1();
|
||||
if(!k)
|
||||
k = ba;
|
||||
k = ba.constData();
|
||||
int h = hash(k) % num_nodes;
|
||||
SourceFileNode *pn = new SourceFileNode;
|
||||
pn->own_file = own_file;
|
||||
|
@ -1615,7 +1615,7 @@ bool VCLinkerTool::parseOption(const char* option)
|
||||
{
|
||||
// Split up in subsystem, and version number
|
||||
QStringList both = QString(option+11).split(",");
|
||||
switch (elfHash(both[0].toLatin1())) {
|
||||
switch (elfHash(both[0].toLatin1().constData())) {
|
||||
case 0x8438445: // CONSOLE
|
||||
SubSystem = subSystemConsole;
|
||||
break;
|
||||
|
@ -477,7 +477,7 @@ protected:
|
||||
public:
|
||||
void parseOptions(QStringList& options) {
|
||||
for (QStringList::ConstIterator it=options.begin(); (it!=options.end()); it++)
|
||||
parseOption((*it).toLatin1());
|
||||
parseOption((*it).toLatin1().constData());
|
||||
}
|
||||
static QStringList fixCommandLine(const QString &input);
|
||||
};
|
||||
|
@ -1575,11 +1575,11 @@ QString VcprojGenerator::findTemplate(QString file)
|
||||
QString ret;
|
||||
if(!exists((ret = file)) &&
|
||||
!exists((ret = QString(Option::mkfile::qmakespec + "/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::DataPath) + "/win32-msvc.net/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::DataPath) + "/win32-msvc2002/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::DataPath) + "/win32-msvc2003/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::DataPath) + "/win32-msvc2005/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::DataPath) + "/win32-msvc2008/" + file))))
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::HostDataPath) + "/win32-msvc.net/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::HostDataPath) + "/win32-msvc2002/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::HostDataPath) + "/win32-msvc2003/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::HostDataPath) + "/win32-msvc2005/" + file))) &&
|
||||
!exists((ret = QString(QLibraryInfo::location(QLibraryInfo::HostDataPath) + "/win32-msvc2008/" + file))))
|
||||
return "";
|
||||
debug_msg(1, "Generator: MSVC.NET: Found template \'%s\'", ret.toLatin1().constData());
|
||||
return ret;
|
||||
|
@ -594,7 +594,7 @@ QStringList Option::mkspecPaths()
|
||||
ret << Option::mkfile::project_build_root + concat;
|
||||
if (!Option::mkfile::project_root.isEmpty())
|
||||
ret << Option::mkfile::project_root + concat;
|
||||
ret << QLibraryInfo::location(QLibraryInfo::DataPath) + concat;
|
||||
ret << QLibraryInfo::location(QLibraryInfo::HostDataPath) + concat;
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -46,6 +46,7 @@
|
||||
#include <qstring.h>
|
||||
#include <qstringlist.h>
|
||||
#include <qfile.h>
|
||||
#include <qlibraryinfo.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
@ -219,28 +220,6 @@ private:
|
||||
inline QString fixEnvVariables(const QString &x) { return Option::fixString(x, Option::FixEnvVars); }
|
||||
inline QStringList splitPathList(const QString &paths) { return paths.split(Option::dirlist_sep); }
|
||||
|
||||
// this is a stripped down version of the one found in QtCore
|
||||
class QLibraryInfo
|
||||
{
|
||||
public:
|
||||
enum LibraryLocation
|
||||
{
|
||||
PrefixPath,
|
||||
DocumentationPath,
|
||||
HeadersPath,
|
||||
LibrariesPath,
|
||||
BinariesPath,
|
||||
PluginsPath,
|
||||
DataPath,
|
||||
TranslationsPath,
|
||||
SettingsPath,
|
||||
ExamplesPath,
|
||||
ImportsPath,
|
||||
TestsPath
|
||||
};
|
||||
static QString location(LibraryLocation);
|
||||
};
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // OPTION_H
|
||||
|
@ -591,7 +591,7 @@ QStringList qmake_feature_paths(QMakeProperty *prop=0)
|
||||
}
|
||||
for(QStringList::Iterator concat_it = concat.begin();
|
||||
concat_it != concat.end(); ++concat_it)
|
||||
feature_roots << (QLibraryInfo::location(QLibraryInfo::DataPath) +
|
||||
feature_roots << (QLibraryInfo::location(QLibraryInfo::HostDataPath) +
|
||||
mkspecs_concat + (*concat_it));
|
||||
return feature_roots;
|
||||
}
|
||||
@ -1435,7 +1435,7 @@ QMakeProject::resolveSpec(QString *spec, const QString &qmakespec)
|
||||
if (*spec == "default") {
|
||||
#ifdef Q_OS_UNIX
|
||||
char buffer[1024];
|
||||
int l = readlink(qmakespec.toLatin1(), buffer, 1023);
|
||||
int l = readlink(qmakespec.toLatin1().constData(), buffer, 1023);
|
||||
if (l != -1) {
|
||||
buffer[l] = '\0';
|
||||
*spec = QString::fromLatin1(buffer);
|
||||
@ -1988,7 +1988,7 @@ QMakeProject::doProjectExpand(QString func, QList<QStringList> args_list,
|
||||
if(args.count() > 1)
|
||||
singleLine = (args[1].toLower() == "true");
|
||||
QString output;
|
||||
FILE *proc = QT_POPEN(args[0].toLatin1(), "r");
|
||||
FILE *proc = QT_POPEN(args[0].toLatin1().constData(), "r");
|
||||
while(proc && !feof(proc)) {
|
||||
int read_in = int(fread(buff, 1, 255, proc));
|
||||
if(!read_in)
|
||||
@ -3061,19 +3061,19 @@ QStringList &QMakeProject::values(const QString &_var, QHash<QString, QStringLis
|
||||
place[var] = QStringList(Option::fixPathToTargetOS(
|
||||
!Option::qmake_abslocation.isEmpty()
|
||||
? Option::qmake_abslocation
|
||||
: QLibraryInfo::location(QLibraryInfo::BinariesPath) + "/qmake",
|
||||
: QLibraryInfo::location(QLibraryInfo::HostBinariesPath) + "/qmake",
|
||||
false));
|
||||
}
|
||||
#if defined(Q_OS_WIN32) && defined(Q_CC_MSVC)
|
||||
else if(var.startsWith(QLatin1String("QMAKE_TARGET."))) {
|
||||
QString ret, type = var.mid(13);
|
||||
if(type == "arch") {
|
||||
QString paths = qgetenv("PATH");
|
||||
QString vcBin64 = qgetenv("VCINSTALLDIR");
|
||||
QString paths = QString::fromLocal8Bit(qgetenv("PATH"));
|
||||
QString vcBin64 = QString::fromLocal8Bit(qgetenv("VCINSTALLDIR"));
|
||||
if (!vcBin64.endsWith('\\'))
|
||||
vcBin64.append('\\');
|
||||
vcBin64.append("bin\\amd64");
|
||||
QString vcBinX86_64 = qgetenv("VCINSTALLDIR");
|
||||
QString vcBinX86_64 = QString::fromLocal8Bit(qgetenv("VCINSTALLDIR"));
|
||||
if (!vcBinX86_64.endsWith('\\'))
|
||||
vcBinX86_64.append('\\');
|
||||
vcBinX86_64.append("bin\\x86_amd64");
|
||||
|
@ -49,8 +49,48 @@
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
static const struct {
|
||||
const char *name;
|
||||
QLibraryInfo::LibraryLocation loc;
|
||||
bool raw;
|
||||
} propList[] = {
|
||||
{ "QT_SYSROOT", QLibraryInfo::SysrootPath, true },
|
||||
{ "QT_INSTALL_PREFIX", QLibraryInfo::PrefixPath, false },
|
||||
{ "QT_INSTALL_DATA", QLibraryInfo::DataPath, false },
|
||||
{ "QT_INSTALL_DOCS", QLibraryInfo::DocumentationPath, false },
|
||||
{ "QT_INSTALL_HEADERS", QLibraryInfo::HeadersPath, false },
|
||||
{ "QT_INSTALL_LIBS", QLibraryInfo::LibrariesPath, false },
|
||||
{ "QT_INSTALL_BINS", QLibraryInfo::BinariesPath, false },
|
||||
{ "QT_INSTALL_TESTS", QLibraryInfo::TestsPath, false },
|
||||
{ "QT_INSTALL_PLUGINS", QLibraryInfo::PluginsPath, false },
|
||||
{ "QT_INSTALL_IMPORTS", QLibraryInfo::ImportsPath, false },
|
||||
{ "QT_INSTALL_TRANSLATIONS", QLibraryInfo::TranslationsPath, false },
|
||||
{ "QT_INSTALL_CONFIGURATION", QLibraryInfo::SettingsPath, false },
|
||||
{ "QT_INSTALL_EXAMPLES", QLibraryInfo::ExamplesPath, false },
|
||||
{ "QT_INSTALL_DEMOS", QLibraryInfo::ExamplesPath, false }, // Just backwards compat
|
||||
{ "QT_RAW_INSTALL_PREFIX", QLibraryInfo::PrefixPath, true },
|
||||
{ "QT_RAW_INSTALL_DATA", QLibraryInfo::DataPath, true },
|
||||
{ "QT_RAW_INSTALL_DOCS", QLibraryInfo::DocumentationPath, true },
|
||||
{ "QT_RAW_INSTALL_HEADERS", QLibraryInfo::HeadersPath, true },
|
||||
{ "QT_RAW_INSTALL_LIBS", QLibraryInfo::LibrariesPath, true },
|
||||
{ "QT_RAW_INSTALL_BINS", QLibraryInfo::BinariesPath, true },
|
||||
{ "QT_RAW_INSTALL_TESTS", QLibraryInfo::TestsPath, true },
|
||||
{ "QT_RAW_INSTALL_PLUGINS", QLibraryInfo::PluginsPath, true },
|
||||
{ "QT_RAW_INSTALL_IMPORTS", QLibraryInfo::ImportsPath, true },
|
||||
{ "QT_RAW_INSTALL_TRANSLATIONS", QLibraryInfo::TranslationsPath, true },
|
||||
{ "QT_RAW_INSTALL_CONFIGURATION", QLibraryInfo::SettingsPath, true },
|
||||
{ "QT_RAW_INSTALL_EXAMPLES", QLibraryInfo::ExamplesPath, true },
|
||||
{ "QT_HOST_PREFIX", QLibraryInfo::HostPrefixPath, true },
|
||||
{ "QT_HOST_DATA", QLibraryInfo::HostDataPath, true },
|
||||
{ "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true },
|
||||
};
|
||||
|
||||
QMakeProperty::QMakeProperty() : settings(0)
|
||||
{
|
||||
for (int i = 0; i < sizeof(propList)/sizeof(propList[0]); i++)
|
||||
m_values[QString::fromLatin1(propList[i].name)] = propList[i].raw
|
||||
? QLibraryInfo::rawLocation(propList[i].loc)
|
||||
: QLibraryInfo::location(propList[i].loc);
|
||||
}
|
||||
|
||||
QMakeProperty::~QMakeProperty()
|
||||
@ -78,32 +118,9 @@ QMakeProperty::keyBase(bool version) const
|
||||
QString
|
||||
QMakeProperty::value(QString v, bool just_check)
|
||||
{
|
||||
if(v == "QT_INSTALL_PREFIX")
|
||||
return QLibraryInfo::location(QLibraryInfo::PrefixPath);
|
||||
else if(v == "QT_INSTALL_DATA")
|
||||
return QLibraryInfo::location(QLibraryInfo::DataPath);
|
||||
else if(v == "QT_INSTALL_DOCS")
|
||||
return QLibraryInfo::location(QLibraryInfo::DocumentationPath);
|
||||
else if(v == "QT_INSTALL_HEADERS")
|
||||
return QLibraryInfo::location(QLibraryInfo::HeadersPath);
|
||||
else if(v == "QT_INSTALL_LIBS")
|
||||
return QLibraryInfo::location(QLibraryInfo::LibrariesPath);
|
||||
else if(v == "QT_INSTALL_BINS")
|
||||
return QLibraryInfo::location(QLibraryInfo::BinariesPath);
|
||||
else if(v == "QT_INSTALL_TESTS")
|
||||
return QLibraryInfo::location(QLibraryInfo::TestsPath);
|
||||
else if(v == "QT_INSTALL_PLUGINS")
|
||||
return QLibraryInfo::location(QLibraryInfo::PluginsPath);
|
||||
else if(v == "QT_INSTALL_IMPORTS")
|
||||
return QLibraryInfo::location(QLibraryInfo::ImportsPath);
|
||||
else if(v == "QT_INSTALL_TRANSLATIONS")
|
||||
return QLibraryInfo::location(QLibraryInfo::TranslationsPath);
|
||||
else if(v == "QT_INSTALL_CONFIGURATION")
|
||||
return QLibraryInfo::location(QLibraryInfo::SettingsPath);
|
||||
else if(v == "QT_INSTALL_EXAMPLES")
|
||||
return QLibraryInfo::location(QLibraryInfo::ExamplesPath);
|
||||
else if(v == "QT_INSTALL_DEMOS")
|
||||
return QLibraryInfo::location(QLibraryInfo::ExamplesPath);
|
||||
QString val = m_values.value(v);
|
||||
if (!val.isNull())
|
||||
return val;
|
||||
else if(v == "QMAKE_MKSPECS")
|
||||
return Option::mkspecPaths().join(Option::dirlist_sep);
|
||||
else if(v == "QMAKE_VERSION")
|
||||
@ -192,19 +209,8 @@ QMakeProperty::exec()
|
||||
}
|
||||
}
|
||||
QStringList specialProps;
|
||||
specialProps.append("QT_INSTALL_PREFIX");
|
||||
specialProps.append("QT_INSTALL_DATA");
|
||||
specialProps.append("QT_INSTALL_DOCS");
|
||||
specialProps.append("QT_INSTALL_HEADERS");
|
||||
specialProps.append("QT_INSTALL_LIBS");
|
||||
specialProps.append("QT_INSTALL_BINS");
|
||||
specialProps.append("QT_INSTALL_TESTS");
|
||||
specialProps.append("QT_INSTALL_PLUGINS");
|
||||
specialProps.append("QT_INSTALL_IMPORTS");
|
||||
specialProps.append("QT_INSTALL_TRANSLATIONS");
|
||||
specialProps.append("QT_INSTALL_CONFIGURATION");
|
||||
specialProps.append("QT_INSTALL_EXAMPLES");
|
||||
specialProps.append("QT_INSTALL_DEMOS");
|
||||
for (int i = 0; i < sizeof(propList)/sizeof(propList[0]); i++)
|
||||
specialProps.append(QString::fromLatin1(propList[i].name));
|
||||
specialProps.append("QMAKE_MKSPECS");
|
||||
specialProps.append("QMAKE_VERSION");
|
||||
#ifdef QT_VERSION_STR
|
||||
|
@ -44,6 +44,7 @@
|
||||
|
||||
#include <qglobal.h>
|
||||
#include <qstring.h>
|
||||
#include <qhash.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
@ -55,6 +56,9 @@ class QMakeProperty
|
||||
void initSettings();
|
||||
QString keyBase(bool =true) const;
|
||||
QString value(QString, bool just_check);
|
||||
|
||||
QHash<QString, QString> m_values;
|
||||
|
||||
public:
|
||||
QMakeProperty();
|
||||
~QMakeProperty();
|
||||
|
@ -98,7 +98,7 @@ CONFIG -= qt
|
||||
### installations ####
|
||||
|
||||
#qmake
|
||||
qmake.path=$$[QT_INSTALL_BINS]
|
||||
qmake.path = $$[QT_HOST_BINS]
|
||||
win32 {
|
||||
qmake.files=$$QT_BUILD_TREE/bin/qmake.exe
|
||||
} else {
|
||||
@ -107,18 +107,18 @@ win32 {
|
||||
INSTALLS += qmake
|
||||
|
||||
#syncqt
|
||||
syncqt.path=$$[QT_INSTALL_BINS]
|
||||
syncqt.path = $$[QT_HOST_BINS]
|
||||
syncqt.files=$$QT_BUILD_TREE/bin/syncqt
|
||||
win32:syncqt.files=$$QT_BUILD_TREE/bin/syncqt.bat
|
||||
INSTALLS += syncqt
|
||||
|
||||
#qtmodule-configtests
|
||||
configtests.path=$$[QT_INSTALL_BINS]
|
||||
configtests.path = $$[QT_HOST_BINS]
|
||||
configtests.files=$$QT_BUILD_TREE/bin/qtmodule-configtests
|
||||
INSTALLS += configtests
|
||||
|
||||
#mkspecs
|
||||
mkspecs.path=$$[QT_INSTALL_DATA]/mkspecs
|
||||
mkspecs.path = $$[QT_HOST_DATA]/mkspecs
|
||||
mkspecs.files=$$QT_BUILD_TREE/mkspecs/qconfig.pri $$QT_BUILD_TREE/mkspecs/qmodule.pri $$files($$QT_SOURCE_TREE/mkspecs/*)
|
||||
mkspecs.files -= $$QT_SOURCE_TREE/mkspecs/modules
|
||||
unix {
|
||||
|
@ -80,7 +80,7 @@ public:
|
||||
QFutureCallOutEvent()
|
||||
: QEvent(QEvent::FutureCallOut), callOutType(CallOutType(0)), index1(-1), index2(-1)
|
||||
{ }
|
||||
QFutureCallOutEvent(CallOutType callOutType, int index1 = -1)
|
||||
explicit QFutureCallOutEvent(CallOutType callOutType, int index1 = -1)
|
||||
: QEvent(QEvent::FutureCallOut), callOutType(callOutType), index1(index1), index2(-1)
|
||||
{ }
|
||||
QFutureCallOutEvent(CallOutType callOutType, int index1, int index2)
|
||||
|
@ -84,7 +84,7 @@ template <typename T> struct QAtomicOps: QGenericAtomicOps<QAtomicOps<T> >
|
||||
typedef T Type;
|
||||
|
||||
#ifndef __ia64__
|
||||
static T loadAcquire(T &_q_value)
|
||||
static T loadAcquire(const T &_q_value)
|
||||
{
|
||||
T tmp = _q_value;
|
||||
__sync_synchronize();
|
||||
|
@ -143,9 +143,9 @@ template <int size> struct QBasicAtomicOps: QGenericAtomicOps<QBasicAtomicOps<si
|
||||
static void orderedMemoryFence();
|
||||
|
||||
template <typename T> static inline
|
||||
T loadAcquire(T &_q_value)
|
||||
T loadAcquire(const T &_q_value)
|
||||
{
|
||||
return *static_cast<volatile T *>(&_q_value);
|
||||
return *static_cast<const volatile T *>(&_q_value);
|
||||
}
|
||||
|
||||
template <typename T> static inline
|
||||
|
@ -111,7 +111,7 @@ static bool qisalnum(register char c)
|
||||
static bool nameMatch(const QByteArray &name, const QByteArray &test)
|
||||
{
|
||||
// if they're the same, return a perfect score
|
||||
if (qstricmp(name, test) == 0)
|
||||
if (qstricmp(name.constData(), test.constData()) == 0)
|
||||
return true;
|
||||
|
||||
const char *n = name.constData();
|
||||
@ -510,7 +510,7 @@ static QTextCodec * ru_RU_hack(const char * i) {
|
||||
koi8r, latin5, i);
|
||||
}
|
||||
#if !defined(QT_NO_SETLOCALE)
|
||||
setlocale(LC_CTYPE, origlocale);
|
||||
setlocale(LC_CTYPE, origlocale.constData());
|
||||
#endif
|
||||
|
||||
return ru_RU_codec;
|
||||
@ -648,7 +648,7 @@ static void setupLocaleMapper()
|
||||
else if (try_locale_list(pt_154locales, lang))
|
||||
localeMapper = QTextCodec::codecForName("PT 154");
|
||||
else if (try_locale_list(probably_koi8_rlocales, lang))
|
||||
localeMapper = ru_RU_hack(lang);
|
||||
localeMapper = ru_RU_hack(lang.constData());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -578,16 +578,6 @@ class QDataStream;
|
||||
# else
|
||||
# define Q_SVG_EXPORT Q_DECL_IMPORT
|
||||
# endif
|
||||
# if defined(QT_BUILD_QTQUICK1_LIB)
|
||||
# define Q_QTQUICK1_EXPORT Q_DECL_EXPORT
|
||||
# else
|
||||
# define Q_QTQUICK1_EXPORT Q_DECL_IMPORT
|
||||
# endif
|
||||
# if defined(QT_BUILD_DECLARATIVE_LIB)
|
||||
# define Q_DECLARATIVE_EXPORT Q_DECL_EXPORT
|
||||
# else
|
||||
# define Q_DECLARATIVE_EXPORT Q_DECL_IMPORT
|
||||
# endif
|
||||
# if defined(QT_BUILD_OPENGL_LIB)
|
||||
# define Q_OPENGL_EXPORT Q_DECL_EXPORT
|
||||
# else
|
||||
@ -648,8 +638,6 @@ class QDataStream;
|
||||
# define Q_SQL_EXPORT Q_DECL_IMPORT
|
||||
# define Q_NETWORK_EXPORT Q_DECL_IMPORT
|
||||
# define Q_SVG_EXPORT Q_DECL_IMPORT
|
||||
# define Q_DECLARATIVE_EXPORT Q_DECL_IMPORT
|
||||
# define Q_QTQUICK1_EXPORT Q_DECL_IMPORT
|
||||
# define Q_CANVAS_EXPORT Q_DECL_IMPORT
|
||||
# define Q_OPENGL_EXPORT Q_DECL_IMPORT
|
||||
# define Q_MULTIMEDIA_EXPORT Q_DECL_IMPORT
|
||||
@ -682,8 +670,6 @@ class QDataStream;
|
||||
# define Q_SQL_EXPORT Q_DECL_EXPORT
|
||||
# define Q_NETWORK_EXPORT Q_DECL_EXPORT
|
||||
# define Q_SVG_EXPORT Q_DECL_EXPORT
|
||||
# define Q_DECLARATIVE_EXPORT Q_DECL_EXPORT
|
||||
# define Q_QTQUICK1_EXPORT Q_DECL_EXPORT
|
||||
# define Q_OPENGL_EXPORT Q_DECL_EXPORT
|
||||
# define Q_MULTIMEDIA_EXPORT Q_DECL_EXPORT
|
||||
# define Q_OPENVG_EXPORT Q_DECL_EXPORT
|
||||
@ -702,8 +688,6 @@ class QDataStream;
|
||||
# define Q_SQL_EXPORT
|
||||
# define Q_NETWORK_EXPORT
|
||||
# define Q_SVG_EXPORT
|
||||
# define Q_DECLARATIVE_EXPORT
|
||||
# define Q_QTQUICK1_EXPORT
|
||||
# define Q_OPENGL_EXPORT
|
||||
# define Q_MULTIMEDIA_EXPORT
|
||||
# define Q_OPENVG_EXPORT
|
||||
|
@ -46,11 +46,7 @@
|
||||
#include "qlibraryinfo.h"
|
||||
#include "qscopedpointer.h"
|
||||
|
||||
#if defined(QT_BUILD_QMAKE) || defined(QT_BOOTSTRAPPED)
|
||||
# define BOOTSTRAPPING
|
||||
#endif
|
||||
|
||||
#ifdef BOOTSTRAPPING
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
QT_BEGIN_NAMESPACE
|
||||
extern QString qmake_libraryInfoFile();
|
||||
QT_END_NAMESPACE
|
||||
@ -97,7 +93,7 @@ public:
|
||||
QLibrarySettings::QLibrarySettings()
|
||||
: settings(QLibraryInfoPrivate::findConfiguration())
|
||||
{
|
||||
#ifndef BOOTSTRAPPING
|
||||
#ifndef QT_BUILD_QMAKE
|
||||
qAddPostRoutine(QLibraryInfoPrivate::cleanup);
|
||||
#endif
|
||||
}
|
||||
@ -105,7 +101,7 @@ QLibrarySettings::QLibrarySettings()
|
||||
QSettings *QLibraryInfoPrivate::findConfiguration()
|
||||
{
|
||||
QString qtconfig = QLatin1String(":/qt/etc/qt.conf");
|
||||
#ifdef BOOTSTRAPPING
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
if(!QFile::exists(qtconfig))
|
||||
qtconfig = qmake_libraryInfoFile();
|
||||
#else
|
||||
@ -152,6 +148,8 @@ QSettings *QLibraryInfoPrivate::findConfiguration()
|
||||
\sa QSysInfo, {Using qt.conf}
|
||||
*/
|
||||
|
||||
#ifndef QT_BUILD_QMAKE
|
||||
|
||||
/*! \internal
|
||||
|
||||
You cannot create a QLibraryInfo, instead only the static functions are available to query
|
||||
@ -214,135 +212,82 @@ QLibraryInfo::isDebugBuild()
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif // QT_BUILD_QMAKE
|
||||
|
||||
static const struct {
|
||||
char key[14], value[13];
|
||||
} qtConfEntries[] = {
|
||||
{ "Prefix", "" },
|
||||
{ "Documentation", "doc" },
|
||||
{ "Headers", "include" },
|
||||
{ "Libraries", "lib" },
|
||||
{ "Binaries", "bin" },
|
||||
{ "Plugins", "plugins" },
|
||||
{ "Imports", "imports" },
|
||||
{ "Data", "" },
|
||||
{ "Translations", "translations" },
|
||||
{ "Examples", "" },
|
||||
{ "Tests", "tests" },
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
{ "Sysroot", "" },
|
||||
{ "HostPrefix", "" },
|
||||
{ "HostBinaries", "bin" },
|
||||
{ "HostData", "" },
|
||||
#endif
|
||||
};
|
||||
|
||||
/*!
|
||||
Returns the location specified by \a loc.
|
||||
|
||||
*/
|
||||
|
||||
QString
|
||||
QLibraryInfo::location(LibraryLocation loc)
|
||||
{
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
QString ret = rawLocation(loc);
|
||||
|
||||
// Automatically prepend the sysroot to target paths
|
||||
if (loc < SysrootPath || loc > LastHostPath) {
|
||||
QString sysroot = rawLocation(SysrootPath);
|
||||
if (!sysroot.isEmpty() && ret.length() > 2 && ret.at(1) == QLatin1Char(':')
|
||||
&& (ret.at(2) == QLatin1Char('/') || ret.at(2) == QLatin1Char('\\')))
|
||||
ret.replace(0, 2, sysroot); // Strip out the drive on Windows targets
|
||||
else
|
||||
ret.prepend(sysroot);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
QString
|
||||
QLibraryInfo::rawLocation(LibraryLocation loc)
|
||||
{
|
||||
#else
|
||||
# define rawLocation location
|
||||
#endif
|
||||
QString ret;
|
||||
if(!QLibraryInfoPrivate::configuration()) {
|
||||
const char *path = 0;
|
||||
switch (loc) {
|
||||
#ifdef QT_CONFIGURE_PREFIX_PATH
|
||||
case PrefixPath:
|
||||
path = QT_CONFIGURE_PREFIX_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_DOCUMENTATION_PATH
|
||||
case DocumentationPath:
|
||||
path = QT_CONFIGURE_DOCUMENTATION_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_HEADERS_PATH
|
||||
case HeadersPath:
|
||||
path = QT_CONFIGURE_HEADERS_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_LIBRARIES_PATH
|
||||
case LibrariesPath:
|
||||
path = QT_CONFIGURE_LIBRARIES_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_BINARIES_PATH
|
||||
case BinariesPath:
|
||||
path = QT_CONFIGURE_BINARIES_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_PLUGINS_PATH
|
||||
case PluginsPath:
|
||||
path = QT_CONFIGURE_PLUGINS_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_IMPORTS_PATH
|
||||
case ImportsPath:
|
||||
path = QT_CONFIGURE_IMPORTS_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_DATA_PATH
|
||||
case DataPath:
|
||||
path = QT_CONFIGURE_DATA_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_TRANSLATIONS_PATH
|
||||
case TranslationsPath:
|
||||
path = QT_CONFIGURE_TRANSLATIONS_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_SETTINGS_PATH
|
||||
case SettingsPath:
|
||||
if (loc >= 0 && loc < sizeof(qt_configure_prefix_path_strs)/sizeof(qt_configure_prefix_path_strs[0]))
|
||||
path = qt_configure_prefix_path_strs[loc] + 12;
|
||||
#ifndef Q_OS_WIN // On Windows we use the registry
|
||||
else if (loc == SettingsPath)
|
||||
path = QT_CONFIGURE_SETTINGS_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_EXAMPLES_PATH
|
||||
case ExamplesPath:
|
||||
path = QT_CONFIGURE_EXAMPLES_PATH;
|
||||
break;
|
||||
#endif
|
||||
#ifdef QT_CONFIGURE_TESTS_PATH
|
||||
case TestsPath:
|
||||
path = QT_CONFIGURE_TESTS_PATH;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (path)
|
||||
ret = QString::fromLocal8Bit(path);
|
||||
} else {
|
||||
QString key;
|
||||
QString defaultValue;
|
||||
switch(loc) {
|
||||
case PrefixPath:
|
||||
key = QLatin1String("Prefix");
|
||||
break;
|
||||
case DocumentationPath:
|
||||
key = QLatin1String("Documentation");
|
||||
defaultValue = QLatin1String("doc");
|
||||
break;
|
||||
case HeadersPath:
|
||||
key = QLatin1String("Headers");
|
||||
defaultValue = QLatin1String("include");
|
||||
break;
|
||||
case LibrariesPath:
|
||||
key = QLatin1String("Libraries");
|
||||
defaultValue = QLatin1String("lib");
|
||||
break;
|
||||
case BinariesPath:
|
||||
key = QLatin1String("Binaries");
|
||||
defaultValue = QLatin1String("bin");
|
||||
break;
|
||||
case PluginsPath:
|
||||
key = QLatin1String("Plugins");
|
||||
defaultValue = QLatin1String("plugins");
|
||||
break;
|
||||
case ImportsPath:
|
||||
key = QLatin1String("Imports");
|
||||
defaultValue = QLatin1String("imports");
|
||||
break;
|
||||
case DataPath:
|
||||
key = QLatin1String("Data");
|
||||
break;
|
||||
case TranslationsPath:
|
||||
key = QLatin1String("Translations");
|
||||
defaultValue = QLatin1String("translations");
|
||||
break;
|
||||
case SettingsPath:
|
||||
key = QLatin1String("Settings");
|
||||
break;
|
||||
case ExamplesPath:
|
||||
key = QLatin1String("Examples");
|
||||
break;
|
||||
case TestsPath:
|
||||
key = QLatin1String("Tests");
|
||||
defaultValue = QLatin1String("tests");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
if (loc >= 0 && loc < sizeof(qtConfEntries)/sizeof(qtConfEntries[0])) {
|
||||
key = QLatin1String(qtConfEntries[loc].key);
|
||||
defaultValue = QLatin1String(qtConfEntries[loc].value);
|
||||
}
|
||||
#ifndef Q_OS_WIN // On Windows we use the registry
|
||||
else if (loc == SettingsPath)
|
||||
key = QLatin1String("Settings");
|
||||
#endif
|
||||
|
||||
if(!key.isNull()) {
|
||||
QSettings *config = QLibraryInfoPrivate::configuration();
|
||||
@ -366,11 +311,19 @@ QLibraryInfo::location(LibraryLocation loc)
|
||||
|
||||
if (QDir::isRelativePath(ret)) {
|
||||
QString baseDir;
|
||||
if (loc == PrefixPath) {
|
||||
// we make the prefix path absolute to the executable's directory
|
||||
#ifdef BOOTSTRAPPING
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
if (loc == HostPrefixPath || loc == PrefixPath) {
|
||||
// We make the prefix path absolute to the executable's directory.
|
||||
// loc == PrefixPath while a sysroot is set would make no sense here.
|
||||
baseDir = QFileInfo(qmake_libraryInfoFile()).absolutePath();
|
||||
} else if (loc == SysrootPath) {
|
||||
// The sysroot is bare
|
||||
return ret;
|
||||
} else if (loc > SysrootPath && loc <= LastHostPath) {
|
||||
// We make any other host path absolute to the host prefix directory.
|
||||
baseDir = rawLocation(HostPrefixPath);
|
||||
#else
|
||||
if (loc == PrefixPath) {
|
||||
if (QCoreApplication::instance()) {
|
||||
#ifdef Q_OS_MAC
|
||||
CFBundleRef bundleRef = CFBundleGetMainBundle();
|
||||
@ -382,6 +335,7 @@ QLibraryInfo::location(LibraryLocation loc)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
// We make the prefix path absolute to the executable's directory.
|
||||
baseDir = QCoreApplication::applicationDirPath();
|
||||
} else {
|
||||
baseDir = QDir::currentPath();
|
||||
@ -389,7 +343,7 @@ QLibraryInfo::location(LibraryLocation loc)
|
||||
#endif
|
||||
} else {
|
||||
// we make any other path absolute to the prefix directory
|
||||
baseDir = location(PrefixPath);
|
||||
baseDir = rawLocation(PrefixPath);
|
||||
}
|
||||
ret = QDir::cleanPath(baseDir + QLatin1Char('/') + ret);
|
||||
}
|
||||
@ -413,9 +367,9 @@ QLibraryInfo::location(LibraryLocation loc)
|
||||
\value ImportsPath The location of installed QML extensions to import.
|
||||
\value DataPath The location of general Qt data.
|
||||
\value TranslationsPath The location of translation information for Qt strings.
|
||||
\value SettingsPath The location for Qt settings.
|
||||
\value ExamplesPath The location for examples upon install.
|
||||
\value TestsPath The location of installed Qt testcases.
|
||||
\value SettingsPath The location for Qt settings. Not applicable on Windows.
|
||||
|
||||
\sa location()
|
||||
*/
|
||||
@ -443,9 +397,9 @@ void qt_core_boilerplate()
|
||||
"Library path: %s\n"
|
||||
"Include path: %s\n",
|
||||
qt_configure_installation + 12,
|
||||
qt_configure_prefix_path_str + 12,
|
||||
qt_configure_libraries_path_str + 12,
|
||||
qt_configure_headers_path_str + 12);
|
||||
qt_configure_prefix_path_strs[QT_PREPEND_NAMESPACE(QLibraryInfo)::PrefixPath] + 12,
|
||||
qt_configure_prefix_path_strs[QT_PREPEND_NAMESPACE(QLibraryInfo)::LibrariesPath] + 12,
|
||||
qt_configure_prefix_path_strs[QT_PREPEND_NAMESPACE(QLibraryInfo)::HeadersPath] + 12);
|
||||
|
||||
QT_PREPEND_NAMESPACE(qDumpCPUFeatures)();
|
||||
|
||||
|
@ -66,20 +66,32 @@ public:
|
||||
|
||||
enum LibraryLocation
|
||||
{
|
||||
PrefixPath,
|
||||
PrefixPath = 0,
|
||||
DocumentationPath,
|
||||
HeadersPath,
|
||||
LibrariesPath,
|
||||
BinariesPath,
|
||||
PluginsPath,
|
||||
ImportsPath,
|
||||
DataPath,
|
||||
TranslationsPath,
|
||||
SettingsPath,
|
||||
ExamplesPath,
|
||||
ImportsPath,
|
||||
TestsPath
|
||||
TestsPath,
|
||||
// Insert new values above this line
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
// These are not subject to binary compatibility constraints
|
||||
SysrootPath,
|
||||
HostPrefixPath,
|
||||
HostBinariesPath,
|
||||
HostDataPath,
|
||||
LastHostPath = HostDataPath,
|
||||
#endif
|
||||
SettingsPath = 100
|
||||
};
|
||||
static QString location(LibraryLocation); // ### Qt 5: consider renaming it to path()
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
static QString rawLocation(LibraryLocation);
|
||||
#endif
|
||||
|
||||
private:
|
||||
QLibraryInfo();
|
||||
|
@ -49,15 +49,12 @@ QT_BEGIN_NAMESPACE
|
||||
|
||||
/*
|
||||
QTypeInfo - type trait functionality
|
||||
qIsDetached - data sharing functionality
|
||||
*/
|
||||
|
||||
/*
|
||||
The catch-all template.
|
||||
*/
|
||||
|
||||
template <typename T> inline bool qIsDetached(T &) { return true; }
|
||||
|
||||
template <typename T>
|
||||
class QTypeInfo
|
||||
{
|
||||
@ -161,6 +158,10 @@ public: \
|
||||
template<> \
|
||||
Q_DECLARE_TYPEINFO_BODY(TYPE, FLAGS)
|
||||
|
||||
/* Specialize QTypeInfo for QFlags<T> */
|
||||
template<typename T> class QFlags;
|
||||
template<typename T>
|
||||
Q_DECLARE_TYPEINFO_BODY(QFlags<T>, Q_PRIMITIVE_TYPE);
|
||||
|
||||
/*
|
||||
Specialize a shared type with:
|
||||
@ -184,7 +185,6 @@ QT_BEGIN_NAMESPACE
|
||||
#endif
|
||||
|
||||
#define Q_DECLARE_SHARED(TYPE) \
|
||||
template <> inline bool qIsDetached<TYPE>(TYPE &t) { return t.isDetached(); } \
|
||||
template <> inline void qSwap<TYPE>(TYPE &value1, TYPE &value2) \
|
||||
{ qSwap(value1.data_ptr(), value2.data_ptr()); } \
|
||||
Q_DECLARE_SHARED_STL(TYPE)
|
||||
|
@ -476,12 +476,12 @@ bool QFileSystemEngine::createDirectory(const QFileSystemEntry &entry, bool crea
|
||||
slash = dirName.length();
|
||||
}
|
||||
if (slash) {
|
||||
QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
||||
const QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
||||
QT_STATBUF st;
|
||||
if (QT_STAT(chunk, &st) != -1) {
|
||||
if (QT_STAT(chunk.constData(), &st) != -1) {
|
||||
if ((st.st_mode & S_IFMT) != S_IFDIR)
|
||||
return false;
|
||||
} else if (QT_MKDIR(chunk, 0777) != 0) {
|
||||
} else if (QT_MKDIR(chunk.constData(), 0777) != 0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -492,7 +492,7 @@ bool QFileSystemEngine::createDirectory(const QFileSystemEntry &entry, bool crea
|
||||
if (dirName.endsWith(QLatin1Char('/')))
|
||||
dirName.chop(1);
|
||||
#endif
|
||||
return (QT_MKDIR(QFile::encodeName(dirName), 0777) == 0);
|
||||
return (QT_MKDIR(QFile::encodeName(dirName).constData(), 0777) == 0);
|
||||
}
|
||||
|
||||
//static
|
||||
@ -501,12 +501,12 @@ bool QFileSystemEngine::removeDirectory(const QFileSystemEntry &entry, bool remo
|
||||
if (removeEmptyParents) {
|
||||
QString dirName = QDir::cleanPath(entry.filePath());
|
||||
for (int oldslash = 0, slash=dirName.length(); slash > 0; oldslash = slash) {
|
||||
QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
||||
const QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
||||
QT_STATBUF st;
|
||||
if (QT_STAT(chunk, &st) != -1) {
|
||||
if (QT_STAT(chunk.constData(), &st) != -1) {
|
||||
if ((st.st_mode & S_IFMT) != S_IFDIR)
|
||||
return false;
|
||||
if (::rmdir(chunk) != 0)
|
||||
if (::rmdir(chunk.constData()) != 0)
|
||||
return oldslash != 0;
|
||||
} else {
|
||||
return false;
|
||||
@ -515,7 +515,7 @@ bool QFileSystemEngine::removeDirectory(const QFileSystemEntry &entry, bool remo
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return rmdir(QFile::encodeName(entry.filePath())) == 0;
|
||||
return rmdir(QFile::encodeName(entry.filePath()).constData()) == 0;
|
||||
}
|
||||
|
||||
//static
|
||||
@ -623,7 +623,7 @@ QString QFileSystemEngine::tempPath()
|
||||
bool QFileSystemEngine::setCurrentPath(const QFileSystemEntry &path)
|
||||
{
|
||||
int r;
|
||||
r = QT_CHDIR(path.nativeFilePath());
|
||||
r = QT_CHDIR(path.nativeFilePath().constData());
|
||||
return r >= 0;
|
||||
}
|
||||
|
||||
|
@ -58,6 +58,7 @@
|
||||
#include <QtCore/qdatetime.h>
|
||||
#include <QtCore/qdir.h>
|
||||
#include <QtCore/qtimer.h>
|
||||
#include <QtCore/qhash.h>
|
||||
|
||||
#include "qfilesystemwatcher_p.h"
|
||||
|
||||
|
@ -1752,10 +1752,10 @@ bool QConfFileSettingsPrivate::readIniFile(const QByteArray &data,
|
||||
|
||||
iniSection = iniSection.trimmed();
|
||||
|
||||
if (qstricmp(iniSection, "general") == 0) {
|
||||
if (qstricmp(iniSection.constData(), "general") == 0) {
|
||||
currentSection.clear();
|
||||
} else {
|
||||
if (qstricmp(iniSection, "%general") == 0) {
|
||||
if (qstricmp(iniSection.constData(), "%general") == 0) {
|
||||
currentSection = QLatin1String(iniSection.constData() + 1);
|
||||
} else {
|
||||
currentSection.clear();
|
||||
@ -1912,7 +1912,7 @@ bool QConfFileSettingsPrivate::writeIniFile(QIODevice &device, const ParsedSetti
|
||||
|
||||
if (realSection.isEmpty()) {
|
||||
realSection = "[General]";
|
||||
} else if (qstricmp(realSection, "general") == 0) {
|
||||
} else if (qstricmp(realSection.constData(), "general") == 0) {
|
||||
realSection = "[%General]";
|
||||
} else {
|
||||
realSection.prepend('[');
|
||||
|
@ -42,6 +42,7 @@
|
||||
#include "qstandardpaths.h"
|
||||
#include <qdir.h>
|
||||
#include <qfile.h>
|
||||
#include <qhash.h>
|
||||
#include <qtextstream.h>
|
||||
#include <qcoreapplication.h>
|
||||
#include <private/qfilesystemengine_p.h>
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include <qjsonarray.h>
|
||||
#include <qjsonvalue.h>
|
||||
#include <qstringlist.h>
|
||||
#include <qvariant.h>
|
||||
#include <qdebug.h>
|
||||
|
||||
#include "qjsonwriter_p.h"
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include <qjsonvalue.h>
|
||||
#include <qjsonarray.h>
|
||||
#include <qstringlist.h>
|
||||
#include <qvariant.h>
|
||||
#include <qdebug.h>
|
||||
#include "qjsonwriter_p.h"
|
||||
#include "qjsonparser_p.h"
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include <qjsonarray.h>
|
||||
#include <qstringlist.h>
|
||||
#include <qdebug.h>
|
||||
#include <qvariant.h>
|
||||
#include "qjson_p.h"
|
||||
#include "qjsonwriter_p.h"
|
||||
|
||||
|
@ -288,7 +288,7 @@ public:
|
||||
MaxUser = 65535 // last user event id
|
||||
};
|
||||
|
||||
QEvent(Type type);
|
||||
explicit QEvent(Type type);
|
||||
virtual ~QEvent();
|
||||
inline Type type() const { return static_cast<Type>(t); }
|
||||
inline bool spontaneous() const { return spont; }
|
||||
@ -330,7 +330,7 @@ private:
|
||||
class Q_CORE_EXPORT QTimerEvent : public QEvent
|
||||
{
|
||||
public:
|
||||
QTimerEvent( int timerId );
|
||||
explicit QTimerEvent( int timerId );
|
||||
~QTimerEvent();
|
||||
int timerId() const { return id; }
|
||||
protected:
|
||||
@ -355,7 +355,7 @@ protected:
|
||||
class Q_CORE_EXPORT QDynamicPropertyChangeEvent : public QEvent
|
||||
{
|
||||
public:
|
||||
QDynamicPropertyChangeEvent(const QByteArray &name);
|
||||
explicit QDynamicPropertyChangeEvent(const QByteArray &name);
|
||||
~QDynamicPropertyChangeEvent();
|
||||
|
||||
inline QByteArray propertyName() const { return n; }
|
||||
|
@ -55,6 +55,7 @@
|
||||
|
||||
#include "QtCore/qabstracteventdispatcher.h"
|
||||
#include "QtCore/qt_windows.h"
|
||||
#include "QtCore/qhash.h"
|
||||
|
||||
#include "qabstracteventdispatcher_p.h"
|
||||
|
||||
@ -130,7 +131,7 @@ struct WinTimerInfo { // internal timer info
|
||||
class QZeroTimerEvent : public QTimerEvent
|
||||
{
|
||||
public:
|
||||
inline QZeroTimerEvent(int timerId)
|
||||
explicit inline QZeroTimerEvent(int timerId)
|
||||
: QTimerEvent(timerId)
|
||||
{ t = QEvent::ZeroTimerEvent; }
|
||||
};
|
||||
|
@ -565,6 +565,7 @@ template <class T> class QSet;
|
||||
template <class T> class QSharedPointer;
|
||||
template <class T1, class T2> class QMap;
|
||||
template <class T1, class T2> class QHash;
|
||||
template <class T1, class T2> struct QPair;
|
||||
typedef QList<QVariant> QVariantList;
|
||||
typedef QMap<QString, QVariant> QVariantMap;
|
||||
typedef QHash<QString, QVariant> QVariantHash;
|
||||
@ -586,6 +587,23 @@ struct QMetaTypeId< SINGLE_ARG_TEMPLATE<T> > \
|
||||
} \
|
||||
};
|
||||
|
||||
#define Q_DECLARE_METATYPE_TEMPLATE_2ARG(DOUBLE_ARG_TEMPLATE) \
|
||||
template<typename T, typename U> \
|
||||
struct QMetaTypeId< DOUBLE_ARG_TEMPLATE<T, U> > \
|
||||
{ \
|
||||
enum { \
|
||||
Defined = QMetaTypeId2<T>::Defined && QMetaTypeId2<U>::Defined \
|
||||
}; \
|
||||
static int qt_metatype_id() \
|
||||
{ \
|
||||
static QBasicAtomicInt metatype_id = Q_BASIC_ATOMIC_INITIALIZER(0); \
|
||||
if (!metatype_id.load()) \
|
||||
metatype_id.storeRelease(qRegisterMetaType< DOUBLE_ARG_TEMPLATE<T, U> >( QByteArray(QByteArray(#DOUBLE_ARG_TEMPLATE "<") + QMetaType::typeName(qMetaTypeId<T>()) + ", " + QMetaType::typeName(qMetaTypeId<U>()) + ">").constData(), \
|
||||
reinterpret_cast< DOUBLE_ARG_TEMPLATE<T, U> *>(quintptr(-1)))); \
|
||||
return metatype_id.loadAcquire(); \
|
||||
} \
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE_TEMPLATE_1ARG(QList)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_1ARG(QVector)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_1ARG(QQueue)
|
||||
@ -594,6 +612,10 @@ Q_DECLARE_METATYPE_TEMPLATE_1ARG(QSet)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_1ARG(QSharedPointer)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_1ARG(QLinkedList)
|
||||
|
||||
Q_DECLARE_METATYPE_TEMPLATE_2ARG(QHash)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_2ARG(QMap)
|
||||
Q_DECLARE_METATYPE_TEMPLATE_2ARG(QPair)
|
||||
|
||||
inline QMetaType::QMetaType(const ExtensionFlag extensionFlags, const QMetaTypeInterface *info,
|
||||
Creator creator,
|
||||
Deleter deleter,
|
||||
|
@ -69,6 +69,16 @@
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
struct QObjectPrivate::ExtraData
|
||||
{
|
||||
ExtraData() {}
|
||||
#ifndef QT_NO_USERDATA
|
||||
QVector<QObjectUserData *> userData;
|
||||
#endif
|
||||
QList<QByteArray> propertyNames;
|
||||
QList<QVariant> propertyValues;
|
||||
};
|
||||
|
||||
static int DIRECT_CONNECTION_ONLY = 0;
|
||||
|
||||
static int *queuedConnectionTypes(const QList<QByteArray> &typeNames)
|
||||
|
@ -60,7 +60,6 @@
|
||||
#include "QtCore/qlist.h"
|
||||
#include "QtCore/qvector.h"
|
||||
#include "QtCore/qreadwritelock.h"
|
||||
#include "QtCore/qvariant.h"
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
@ -98,16 +97,8 @@ class Q_CORE_EXPORT QObjectPrivate : public QObjectData
|
||||
{
|
||||
Q_DECLARE_PUBLIC(QObject)
|
||||
|
||||
struct ExtraData;
|
||||
public:
|
||||
struct ExtraData
|
||||
{
|
||||
ExtraData() {}
|
||||
#ifndef QT_NO_USERDATA
|
||||
QVector<QObjectUserData *> userData;
|
||||
#endif
|
||||
QList<QByteArray> propertyNames;
|
||||
QList<QVariant> propertyValues;
|
||||
};
|
||||
|
||||
typedef void (*StaticMetaCallFunction)(QObject *, QMetaObject::Call, int, void **);
|
||||
struct Connection
|
||||
|
@ -210,16 +210,16 @@ Q_CORE_EXPORT const char *qFlagLocation(const char *method);
|
||||
#ifndef QT_NO_DEBUG
|
||||
# define QLOCATION "\0" __FILE__ ":" QTOSTRING(__LINE__)
|
||||
# ifndef QT_NO_KEYWORDS
|
||||
# define METHOD(a) qFlagLocation("0"#a QLOCATION)
|
||||
# define METHOD(a) qFlagLocation("0" QTOSTRING(a) QLOCATION)
|
||||
# endif
|
||||
# define SLOT(a) qFlagLocation("1"#a QLOCATION)
|
||||
# define SIGNAL(a) qFlagLocation("2"#a QLOCATION)
|
||||
# define SLOT(a) qFlagLocation("1" QTOSTRING(a) QLOCATION)
|
||||
# define SIGNAL(a) qFlagLocation("2" QTOSTRING(a) QLOCATION)
|
||||
#else
|
||||
# ifndef QT_NO_KEYWORDS
|
||||
# define METHOD(a) "0"#a
|
||||
# define METHOD(a) "0" QTOSTRING(a)
|
||||
# endif
|
||||
# define SLOT(a) "1"#a
|
||||
# define SIGNAL(a) "2"#a
|
||||
# define SLOT(a) "1" QTOSTRING(a)
|
||||
# define SIGNAL(a) "2" QTOSTRING(a)
|
||||
#endif
|
||||
|
||||
#define QMETHOD_CODE 0 // member type codes
|
||||
|
@ -1696,7 +1696,7 @@ void QVariant::load(QDataStream &s)
|
||||
if (typeId == QVariant::UserType) {
|
||||
QByteArray name;
|
||||
s >> name;
|
||||
typeId = QMetaType::type(name);
|
||||
typeId = QMetaType::type(name.constData());
|
||||
if (!typeId) {
|
||||
s.setStatus(QDataStream::ReadCorruptData);
|
||||
return;
|
||||
|
@ -136,7 +136,7 @@ public:
|
||||
|
||||
// Atomic API, implemented in qatomic_XXX.h
|
||||
|
||||
T loadAcquire() { return Ops::loadAcquire(_q_value); }
|
||||
T loadAcquire() const { return Ops::loadAcquire(_q_value); }
|
||||
void storeRelease(T newValue) { Ops::storeRelease(_q_value, newValue); }
|
||||
|
||||
static bool isReferenceCountingNative() { return Ops::isReferenceCountingNative(); }
|
||||
@ -206,7 +206,7 @@ public:
|
||||
void store(Type newValue) { _q_value = newValue; }
|
||||
|
||||
// Atomic API, implemented in qatomic_XXX.h
|
||||
Type loadAcquire() { return Ops::loadAcquire(_q_value); }
|
||||
Type loadAcquire() const { return Ops::loadAcquire(_q_value); }
|
||||
void storeRelease(Type newValue) { Ops::storeRelease(_q_value, newValue); }
|
||||
|
||||
static bool isTestAndSetNative() { return Ops::isTestAndSetNative(); }
|
||||
|
@ -85,7 +85,7 @@ template <typename BaseClass> struct QGenericAtomicOps
|
||||
static void orderedMemoryFence() { }
|
||||
|
||||
template <typename T> static inline always_inline
|
||||
T load(T &_q_value)
|
||||
T load(const T &_q_value)
|
||||
{
|
||||
return _q_value;
|
||||
}
|
||||
@ -97,9 +97,9 @@ template <typename BaseClass> struct QGenericAtomicOps
|
||||
}
|
||||
|
||||
template <typename T> static inline always_inline
|
||||
T loadAcquire(T &_q_value)
|
||||
T loadAcquire(const T &_q_value)
|
||||
{
|
||||
T tmp = *static_cast<volatile T *>(&_q_value);
|
||||
T tmp = *static_cast<const volatile T *>(&_q_value);
|
||||
BaseClass::acquireMemoryFence();
|
||||
return tmp;
|
||||
}
|
||||
|
@ -343,7 +343,7 @@ int qstrcmp(const QByteArray &str1, const QByteArray &str2)
|
||||
{
|
||||
int l1 = str1.length();
|
||||
int l2 = str2.length();
|
||||
int ret = memcmp(str1, str2, qMin(l1, l2));
|
||||
int ret = memcmp(str1.constData(), str2.constData(), qMin(l1, l2));
|
||||
if (ret != 0)
|
||||
return ret;
|
||||
|
||||
@ -995,6 +995,8 @@ QByteArray &QByteArray::operator=(const char *str)
|
||||
/*! \fn QByteArray::operator const char *() const
|
||||
\fn QByteArray::operator const void *() const
|
||||
|
||||
\obsolete Use constData() instead.
|
||||
|
||||
Returns a pointer to the data stored in the byte array. The
|
||||
pointer can be used to access the bytes that compose the array.
|
||||
The data is '\\0'-terminated. The pointer remains valid as long
|
||||
@ -2751,7 +2753,7 @@ QDataStream &operator<<(QDataStream &out, const QByteArray &ba)
|
||||
out << (quint32)0xffffffff;
|
||||
return out;
|
||||
}
|
||||
return out.writeBytes(ba, ba.size());
|
||||
return out.writeBytes(ba.constData(), ba.size());
|
||||
}
|
||||
|
||||
/*! \relates QByteArray
|
||||
|
@ -207,8 +207,10 @@ public:
|
||||
void squeeze();
|
||||
|
||||
#ifndef QT_NO_CAST_FROM_BYTEARRAY
|
||||
operator const char *() const;
|
||||
operator const void *() const;
|
||||
#if QT_DEPRECATED_SINCE(5, 0)
|
||||
QT_DEPRECATED operator const char *() const { return constData(); }
|
||||
QT_DEPRECATED operator const void *() const { return constData(); }
|
||||
#endif
|
||||
#endif
|
||||
char *data();
|
||||
const char *data() const;
|
||||
@ -415,12 +417,6 @@ inline char QByteArray::operator[](uint i) const
|
||||
|
||||
inline bool QByteArray::isEmpty() const
|
||||
{ return d->size == 0; }
|
||||
#ifndef QT_NO_CAST_FROM_BYTEARRAY
|
||||
inline QByteArray::operator const char *() const
|
||||
{ return d->data(); }
|
||||
inline QByteArray::operator const void *() const
|
||||
{ return d->data(); }
|
||||
#endif
|
||||
inline char *QByteArray::data()
|
||||
{ detach(); return d->data(); }
|
||||
inline const char *QByteArray::data() const
|
||||
|
@ -65,7 +65,7 @@ public:
|
||||
Sha512
|
||||
};
|
||||
|
||||
QCryptographicHash(Algorithm method);
|
||||
explicit QCryptographicHash(Algorithm method);
|
||||
~QCryptographicHash();
|
||||
|
||||
void reset();
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user