summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar.sletta@nokia.com>2011-05-04 10:08:23 +0200
committerGunnar Sletta <gunnar.sletta@nokia.com>2011-05-04 10:08:23 +0200
commit9c6347f24509bff1dc6b87493adf487c22092990 (patch)
tree4306abcc0a1b3c1266ed84fe4ec297f4d7c706ba
parent72395bc540c60d9966788817c08cd3e126a40f97 (diff)
parent99454287bffcfcf7b0c2c658bea95d8543d2b118 (diff)
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtbase-staging
-rw-r--r--.gitattributes1
-rw-r--r--.tag1
-rwxr-xr-xbin/syncqt30
-rwxr-xr-xconfigure4
-rw-r--r--configure.exebin1399808 -> 1471488 bytes
-rw-r--r--demos/shared/shared.pro1
-rw-r--r--mkspecs/features/designer.prf2
-rw-r--r--mkspecs/features/help.prf2
-rw-r--r--mkspecs/features/module.prf7
-rw-r--r--mkspecs/features/qt.prf18
-rw-r--r--mkspecs/features/qt_config.prf2
-rw-r--r--mkspecs/features/qt_functions.prf24
-rw-r--r--qmake/Makefile.unix2
-rw-r--r--qmake/Makefile.win324
-rw-r--r--qmake/Makefile.win32-g++4
-rw-r--r--qmake/Makefile.win32-g++-sh4
-rw-r--r--qmake/generators/makefile.cpp28
-rw-r--r--qmake/generators/makefile.h2
-rw-r--r--qmake/generators/win32/msvc_nmake.cpp9
-rw-r--r--qmake/generators/win32/msvc_nmake.h2
-rw-r--r--qmake/qmake.pro2
-rw-r--r--qtbase.pro6
-rw-r--r--src/corelib/corelib.pro6
-rw-r--r--src/corelib/io/qfilesystemengine_win.cpp1
-rw-r--r--src/dbus/dbus.pro7
-rw-r--r--src/gui/gui.pro6
-rw-r--r--src/modules/qt_core.pri10
-rw-r--r--src/modules/qt_dbus.pri10
-rw-r--r--src/modules/qt_gui.pri10
-rw-r--r--src/modules/qt_network.pri10
-rw-r--r--src/modules/qt_opengl.pri10
-rw-r--r--src/modules/qt_openvg.pri10
-rw-r--r--src/modules/qt_sql.pri10
-rw-r--r--src/modules/qt_testlib.pri10
-rw-r--r--src/modules/qt_uilib.pri13
-rw-r--r--src/modules/qt_uitools.pri10
-rw-r--r--src/modules/qt_xml.pri10
-rw-r--r--src/network/bearer/qnetworkconfigmanager_p.cpp14
-rw-r--r--src/network/bearer/qnetworkconfigmanager_p.h2
-rw-r--r--src/network/network.pro7
-rw-r--r--src/network/socket/qabstractsocket.cpp4
-rw-r--r--src/opengl/opengl.pro6
-rw-r--r--src/openvg/openvg.pro3
-rw-r--r--src/plugins/accessible/widgets/widgets.pro1
-rw-r--r--src/plugins/bearer/connman/connman.pro2
-rw-r--r--src/plugins/bearer/generic/generic.pro2
-rw-r--r--src/plugins/bearer/nativewifi/nativewifi.pro2
-rw-r--r--src/plugins/bearer/networkmanager/networkmanager.pro2
-rw-r--r--src/plugins/graphicssystems/opengl/opengl.pro2
-rw-r--r--src/plugins/graphicssystems/trace/trace.pro2
-rw-r--r--src/plugins/imageformats/jpeg/jpeg.pro2
-rw-r--r--src/plugins/sqldrivers/qsqldriverbase.pri2
-rw-r--r--src/qbase.pri3
-rw-r--r--src/qt_install.pri8
-rw-r--r--src/sql/sql.pro6
-rw-r--r--src/testlib/testlib.pro4
-rw-r--r--src/tools/bootstrap/bootstrap.pri4
-rw-r--r--src/tools/bootstrap/bootstrap.pro6
-rw-r--r--src/uitools/uitools.pro7
-rw-r--r--src/xml/xml.pro6
-rw-r--r--tests/auto/headersclean/headersclean.pro6
-rw-r--r--tools/configure/configure.pro2
-rw-r--r--tools/configure/configureapp.cpp5
63 files changed, 275 insertions, 123 deletions
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000..a3c6108370
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1 @@
+.tag ident
diff --git a/.tag b/.tag
new file mode 100644
index 0000000000..055c8729cd
--- /dev/null
+++ b/.tag
@@ -0,0 +1 @@
+$Id$
diff --git a/bin/syncqt b/bin/syncqt
index 45ac9d0fb0..3d25ecc817 100755
--- a/bin/syncqt
+++ b/bin/syncqt
@@ -558,8 +558,11 @@ sub locateSyncProfile
# check if this is an in-source build, and if so use that as the basedir too
$basedir = locateSyncProfile($out_basedir);
-$basedir = dirname($basedir) if ($basedir);
-$quoted_basedir = "\Q$basedir";
+if ($basedir) {
+ $basedir = dirname($basedir) ;
+ $basedir =~ s=\\=/=g;
+ $quoted_basedir = "\Q$basedir";
+}
# --------------------------------------------------------------------
# "main" function
@@ -624,6 +627,7 @@ while ( @ARGV ) {
die "Could not find a sync.profile for '$arg'\n" if (!$basedir);
$basedir = dirname($basedir);
$basedir =~ s=\\=/=g;
+ $quoted_basedir = "\Q$basedir";
$var = "ignore";
}
@@ -743,6 +747,21 @@ mkpath "$out_basedir/include/Qt", !$quiet;
foreach my $lib (@modules_to_sync) {
#iteration info
my $dir = $modules{$lib};
+ my $module_version = "";
+
+ if (-e "$modulepris{$lib}") {
+ my $content = fileContents($modulepris{$lib});
+ my @version_rows = grep(/QT\..*\.VERSION/, split('\n', $content));
+ if(@version_rows) {
+ # We only pick the first one, since each module need a separate .pri file
+ $module_version = $version_rows[0];
+ chomp $module_version;
+ $module_version =~ s/^\s*QT\..*\.VERSION\s*=\s*([^#]+).*$/$1/;
+ $module_version =~ s/\s+$//;
+ }
+ }
+ print "WARNING: Module $lib\'s pri missing QT.<module>.VERSION variable! Private headers not versioned!\n" if (!$module_version);
+
my $pathtoheaders = "";
$pathtoheaders = $moduleheaders{$lib} if ($moduleheaders{$lib});
@@ -762,6 +781,7 @@ foreach my $lib (@modules_to_sync) {
chomp $line;
if($line =~ /^ *QT *\+?= *([^\r\n]*)/) {
foreach(split(/ /, $1)) {
+ $_ =~ s/-private$//;
my $content = $mastercontent{$_};
$master_contents .= $content if ($content);
}
@@ -909,7 +929,11 @@ foreach my $lib (@modules_to_sync) {
}
}
} elsif ($create_private_headers) {
- @headers = ( "$out_basedir/include/$lib/private/$header" );
+ if ($module_version) {
+ @headers = ( "$out_basedir/include/$lib/$module_version/$lib/private/$header" );
+ } else {
+ @headers = ( "$out_basedir/include/$lib/private/$header" );
+ }
}
foreach(@headers) { #sync them
$header_copies++ if(syncHeader($_, $iheader, $copy_headers && !$shadow, $ts));
diff --git a/configure b/configure
index b0cafbcab7..e6956fbda9 100755
--- a/configure
+++ b/configure
@@ -4934,7 +4934,7 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ];
-e "s,@QT_INSTALL_BINS@,\$(INSTALL_ROOT)$QMAKE_BIN_DIR,g" \
-e "s,@QT_INSTALL_DATA@,\$(INSTALL_ROOT)$QMAKE_DATA_DIR,g" \
-e "s,@QMAKE_QTOBJS@,$EXTRA_OBJS,g" -e "s,@QMAKE_QTSRCS@,$EXTRA_SRCS,g" \
- -e "s,@QMAKESPEC@,$adjqmakespec,g" "$in_mkfile" >>"$mkfile"
+ -e "s,@QMAKESPEC@,$adjqmakespec,g" -e "s,@QT_VERSION@,$QT_VERSION,g" "$in_mkfile" >>"$mkfile"
if "$WHICH" makedepend >/dev/null 2>&1 && grep 'depend:' "$mkfile" >/dev/null 2>&1; then
(cd "$outpath/qmake" && "$MAKE" -f "$mkfile" depend) >/dev/null 2>&1
@@ -8514,7 +8514,7 @@ CACHEFILE="$outpath/.qmake.cache"
[ -f "$CACHEFILE.tmp" ] && rm -f "$CACHEFILE.tmp"
cat >>"$CACHEFILE.tmp" <<EOF
include(\$\$PWD/mkspecs/qmodule.pri)
-CONFIG += $QMAKE_CONFIG dylib create_prl link_prl depend_includepath fix_output_dirs QTDIR_build
+CONFIG += $QMAKE_CONFIG dylib create_prl link_prl depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build
QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOURCE_TREE
QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc
diff --git a/configure.exe b/configure.exe
index e30778119a..9ccd3af81d 100644
--- a/configure.exe
+++ b/configure.exe
Binary files differ
diff --git a/demos/shared/shared.pro b/demos/shared/shared.pro
index b2a338e7f3..88d7fbedab 100644
--- a/demos/shared/shared.pro
+++ b/demos/shared/shared.pro
@@ -11,6 +11,7 @@ build_all:!build_pass {
CONFIG += release
}
TARGET = demo_shared
+QT += gui-private
SOURCES += \
arthurstyle.cpp\
diff --git a/mkspecs/features/designer.prf b/mkspecs/features/designer.prf
index fa40caab3f..63a7e76a34 100644
--- a/mkspecs/features/designer.prf
+++ b/mkspecs/features/designer.prf
@@ -4,4 +4,4 @@ qt:load(qt)
plugin:DEFINES += QDESIGNER_EXPORT_WIDGETS
-qtAddLibrary(QtDesigner)
+qtAddLibrary(QtDesigner, true)
diff --git a/mkspecs/features/help.prf b/mkspecs/features/help.prf
index d8ba8c3537..c96ecae8fe 100644
--- a/mkspecs/features/help.prf
+++ b/mkspecs/features/help.prf
@@ -1,3 +1,3 @@
QT += xml sql
-qtAddModule(help)
+qtAddModule(help, true)
diff --git a/mkspecs/features/module.prf b/mkspecs/features/module.prf
new file mode 100644
index 0000000000..248f7f516a
--- /dev/null
+++ b/mkspecs/features/module.prf
@@ -0,0 +1,7 @@
+!isEmpty(MODULE_PRI) {
+ pritarget.path = $$[QT_INSTALL_DATA]/mkspecs/modules
+ pritarget.files = $$MODULE_PRI
+ INSTALLS = pritarget
+} else {
+ warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects")
+}
diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf
index e30a2fdd27..c611096147 100644
--- a/mkspecs/features/qt.prf
+++ b/mkspecs/features/qt.prf
@@ -134,7 +134,16 @@ QT = $$resolve_depends($$QT, "QT.")
QT_DEPENDS=
+unset(using_privates)
for(QTLIB, $$list($$lower($$unique(QT)))) {
+ # Figure out if we're wanting to use the private headers of a module
+ contains(QTLIB, .*-private) {
+ QTLIB ~= s/-private//
+ use_private = UsePrivate
+ } else {
+ use_private = NoPrivate
+ }
+
isEmpty(QT.$${QTLIB}.name) {
message("Warning: unknown QT module: $$QTLIB")
next()
@@ -144,14 +153,21 @@ for(QTLIB, $$list($$lower($$unique(QT)))) {
warning($$TARGET cannot have a QT of $$QTLIB)
next()
}
- qtAddModule($$QTLIB)
+ qtAddModule($$QTLIB, $$use_private)
QT_DEPENDS += $$eval(QT.$${QTLIB}.depends)
+ isEqual(use_private, UsePrivate):using_privates = true
}
# add include paths for all .depends, since module/application might need f.ex. template specializations etc.
QT_DEPENDS -= $$QT
for(QTLIB, $$list($$lower($$unique(QT_DEPENDS)))):INCLUDEPATH += $$INCLUDEPATH $$eval(QT.$${QTLIB}.includes)
+!isEmpty(using_privates):!no_private_qt_headers_warning:if(!debug_and_release|!build_pass) {
+ message("This project is using private headers and will therefore be tied to this specific Qt module build version.")
+ message("Running this project against other versions of the Qt modules may crash at any arbitrary point.")
+ message("This is not a bug, but a result of using Qt internals. You have been warned!")
+}
+
qt_compat {
!qt_compat_no_warning:QTDIR_build:warning(***USE of COMPAT inside of QTDIR!**) #just for us
INCLUDEPATH *= $$QMAKE_INCDIR_QT/Qt
diff --git a/mkspecs/features/qt_config.prf b/mkspecs/features/qt_config.prf
index 5afd82c84a..071bb6c237 100644
--- a/mkspecs/features/qt_config.prf
+++ b/mkspecs/features/qt_config.prf
@@ -12,7 +12,7 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) {
} else {
debug(1, "Loaded .qconfig.pri from ($$QMAKE_QT_CONFIG)")
for(dir, $$list($$unique($$list($$dirname(QMAKE_QT_CONFIG) \
- $$split($$list($$[QMAKE_MKSPECS]), $$DIRLIST_SEPARATOR))))) {
+ $$replace($$list($$split($$list($$(QMAKEPATH)), $$DIRLIST_SEPARATOR)), $, /mkspecs))))) {
debug(1, "Loading modules from $${dir}")
for(mod, $$list($$files($$dir/modules/qt_*.pri))) {
# For installed Qt these paths will be common for all modules
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
index b16c84864f..50a85d86ce 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
@@ -102,6 +102,16 @@ defineTest(qtAddModule) {
INCLUDEPATH -= $$MODULE_INCLUDES
INCLUDEPATH = $$MODULE_INCLUDES $$INCLUDEPATH
+ isEqual(2, UsePrivate) { # Tests function parameter 2 ($$2) being equal to 'UsePrivate'
+ # This adds both
+ # <module privates include path>/
+ # and <module privates include path>/<module name>
+ # since we have code using both #include <QtCore/private/foo> and #include <private/foo>
+ # Both need to be supported with the new private includes structure
+ MODULE_INCLUDES_PRIVATES = $$eval(QT.$${1}.private_includes)
+ INCLUDEPATH -= $$MODULE_INCLUDES_PRIVATES $$MODULE_INCLUDES_PRIVATES/$$MODULE_NAME
+ INCLUDEPATH = $$MODULE_INCLUDES_PRIVATES $$MODULE_INCLUDES_PRIVATES/$$MODULE_NAME $$INCLUDEPATH
+ }
unset(LINKAGE)
mac {
@@ -140,12 +150,16 @@ defineTest(qtAddModule) {
}
isEmpty(LINKAGE):LINKAGE = -l$${MODULE_NAME}$${QT_LIBINFIX}
}
- !isEmpty(QMAKE_LSB) {
- QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT
- QMAKE_LFLAGS *= -L/opt/lsb/lib
- QMAKE_LFLAGS *= --lsb-shared-libs=$${MODULE_NAME}$${QT_LIBINFIX}
+ # Only link to this module if a libs directory is set, else this is just a module
+ # to give access to sources or include files, and not for linking.
+ !isEmpty(MODULE_LIBS) {
+ !isEmpty(QMAKE_LSB) {
+ QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT
+ QMAKE_LFLAGS *= -L/opt/lsb/lib
+ QMAKE_LFLAGS *= --lsb-shared-libs=$${MODULE_NAME}$${QT_LIBINFIX}
+ }
+ LIBS += $$LINKAGE
}
- LIBS += $$LINKAGE
export(CONFIG)
export(DEFINES)
export(LIBS)
diff --git a/qmake/Makefile.unix b/qmake/Makefile.unix
index 9dbe035fc2..c522779981 100644
--- a/qmake/Makefile.unix
+++ b/qmake/Makefile.unix
@@ -1,5 +1,6 @@
SOURCE_PATH = @SOURCE_PATH@
BUILD_PATH = @BUILD_PATH@
+QT_VERSION = @QT_VERSION@
QTOBJS = @QMAKE_QTOBJS@
QTSRCS = @QMAKE_QTSRCS@
QMAKESPEC = @QMAKESPEC@
@@ -76,6 +77,7 @@ DEPEND_SRC=project.cpp property.cpp meta.cpp main.cpp generators/makefile.cpp ge
CPPFLAGS = -g -I. -Igenerators -Igenerators/unix -Igenerators/win32 \
-Igenerators/mac -Igenerators/symbian -Igenerators/integrity \
-I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore \
+ -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION) -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION)/QtCore \
-I$(BUILD_PATH)/src/corelib/global -I$(BUILD_PATH)/src/corelib/xml \
-I$(SOURCE_PATH)/tools/shared \
-DQT_NO_PCRE \
diff --git a/qmake/Makefile.win32 b/qmake/Makefile.win32
index 6fd393993e..56ccf3d565 100644
--- a/qmake/Makefile.win32
+++ b/qmake/Makefile.win32
@@ -32,8 +32,8 @@ CFLAGS_BARE = -c -Fo./ \
-W3 -nologo -O2 \
$(CFLAGS_EXTRA) \
-I. -Igenerators -Igenerators\unix -Igenerators\win32 -Igenerators\mac -Igenerators\symbian -Igenerators\integrity \
- -I$(BUILD_PATH)\include -I$(BUILD_PATH)\include\QtCore \
- -I$(SOURCE_PATH)\include -I$(SOURCE_PATH)\include\QtCore \
+ -I$(BUILD_PATH)\include -I$(BUILD_PATH)\include\QtCore -I$(BUILD_PATH)\include\QtCore\$(QT_VERSION) -I$(BUILD_PATH)\include\QtCore\$(QT_VERSION)\QtCore \
+ -I$(SOURCE_PATH)\include -I$(SOURCE_PATH)\include\QtCore -I$(SOURCE_PATH)\include\QtCore\$(QT_VERSION) -I$(SOURCE_PATH)\include\QtCore\$(QT_VERSION)\QtCore \
-I$(BUILD_PATH)\src\corelib\global \
-I$(BUILD_PATH)\src\corelib\xml \
-I$(SOURCE_PATH)\mkspecs\$(QMAKESPEC) \
diff --git a/qmake/Makefile.win32-g++ b/qmake/Makefile.win32-g++
index d40dc29a9b..05d7a154d6 100644
--- a/qmake/Makefile.win32-g++
+++ b/qmake/Makefile.win32-g++
@@ -16,8 +16,8 @@ CFLAGS = -c -o$@ -O \
-I. -Igenerators -Igenerators/unix \
-Igenerators/win32 -Igenerators/mac \
-Igenerators/symbian -Igenerators/integrity \
- -I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore \
- -I$(SOURCE_PATH)/include -I$(SOURCE_PATH)/include/QtCore \
+ -I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION) -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION)/QtCore \
+ -I$(SOURCE_PATH)/include -I$(SOURCE_PATH)/include/QtCore -I$(SOURCE_PATH)/include/QtCore/$(QT_VERSION) -I$(SOURCE_PATH)/include/QtCore/$(QT_VERSION)/QtCore \
-I$(BUILD_PATH)/src/corelib/global \
-I$(BUILD_PATH)/src/corelib/xml \
-I$(SOURCE_PATH)/mkspecs/win32-g++ \
diff --git a/qmake/Makefile.win32-g++-sh b/qmake/Makefile.win32-g++-sh
index 49ccfbcc77..b691470cca 100644
--- a/qmake/Makefile.win32-g++-sh
+++ b/qmake/Makefile.win32-g++-sh
@@ -16,8 +16,8 @@ CFLAGS = -c -o$@ -O \
-I. -Igenerators -Igenerators/unix \
-Igenerators/win32 -Igenerators/mac \
-Igenerators/symbian -Igenerators/integrity \
- -I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore \
- -I$(SOURCE_PATH)/include -I$(SOURCE_PATH)/include/QtCore \
+ -I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION) -I$(BUILD_PATH)/include/QtCore/$(QT_VERSION)/QtCore \
+ -I$(SOURCE_PATH)/include -I$(SOURCE_PATH)/include/QtCore -I$(SOURCE_PATH)/include/QtCore/$(QT_VERSION) -I$(SOURCE_PATH)/include/QtCore/$(QT_VERSION)/QtCore \
-I$(BUILD_PATH)/src/corelib/global \
-I$(BUILD_PATH)/src/corelib/xml \
-I$(SOURCE_PATH)/mkspecs/win32-g++ \
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
index 61e7ac55ca..47ae384ba9 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
@@ -2376,6 +2376,14 @@ MakefileGenerator::writeSubDirs(QTextStream &t)
qDeleteAll(targets);
}
+void MakefileGenerator::writeSubMakeCall(QTextStream &t, const QString &callPrefix,
+ const QString &makeArguments, const QString &callPostfix)
+{
+ t << callPrefix
+ << "$(MAKE)" << makeArguments
+ << callPostfix << endl;
+}
+
void
MakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::SubTarget*> targets, int flags)
{
@@ -2499,9 +2507,7 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::SubT
t << " " << valList(subtarget->depends);
if(project->isEmpty("QMAKE_NOFORCE"))
t << " FORCE";
- t << out_directory_cdin
- << "$(MAKE)" << makefilein
- << out_directory_cdout << endl;
+ writeSubMakeCall(t, out_directory_cdin, makefilein, out_directory_cdout);
}
for(int suffix = 0; suffix < targetSuffixes.size(); ++suffix) {
@@ -2521,9 +2527,7 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::SubT
t << " " << targets.at(target-1)->target << "-" << targetSuffixes.at(suffix) << "-ordered ";
if(project->isEmpty("QMAKE_NOFORCE"))
t << " FORCE";
- t << out_directory_cdin
- << "$(MAKE)" << makefilein << " " << s
- << out_directory_cdout << endl;
+ writeSubMakeCall(t, out_directory_cdin, makefilein, out_directory_cdout);
}
t << subtarget->target << "-" << targetSuffixes.at(suffix) << ": " << mkfile;
if(!subtarget->depends.isEmpty())
@@ -2531,9 +2535,7 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::SubT
"-"+targetSuffixes.at(suffix));
if(project->isEmpty("QMAKE_NOFORCE"))
t << " FORCE";
- t << out_directory_cdin
- << "$(MAKE)" << makefilein << " " << s
- << out_directory_cdout << endl;
+ writeSubMakeCall(t, out_directory_cdin, makefilein, out_directory_cdout);
}
}
t << endl;
@@ -2671,12 +2673,10 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QList<MakefileGenerator::SubT
//write the commands
if(!out_directory.isEmpty()) {
- t << out_directory_cdin
- << "$(MAKE)" << makefilein << " " << sub_targ
- << out_directory_cdout << endl;
+ writeSubMakeCall(t, out_directory_cdin, makefilein + " " + sub_targ,
+ out_directory_cdout);
} else {
- t << "\n\t"
- << "$(MAKE)" << makefilein << " " << sub_targ << endl;
+ writeSubMakeCall(t, "\n\t", makefilein + " " + sub_targ, QString());
}
}
}
diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h
index e0ef52d251..417370ab65 100644
--- a/qmake/generators/makefile.h
+++ b/qmake/generators/makefile.h
@@ -127,6 +127,8 @@ protected:
SubTargetsNoFlags=0x00
};
QList<MakefileGenerator::SubTarget*> findSubDirsSubTargets() const;
+ virtual void writeSubMakeCall(QTextStream &t, const QString &outDirectory_cdin,
+ const QString &makeFileIn, const QString &outDirectory_cdout);
void writeSubTargets(QTextStream &t, QList<SubTarget*> subtargets, int flags);
//extra compiler interface
diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp
index c55806d002..e0e2fe0e79 100644
--- a/qmake/generators/win32/msvc_nmake.cpp
+++ b/qmake/generators/win32/msvc_nmake.cpp
@@ -85,6 +85,15 @@ NmakeMakefileGenerator::writeMakefile(QTextStream &t)
return false;
}
+void NmakeMakefileGenerator::writeSubMakeCall(QTextStream &t, const QString &callPrefix,
+ const QString &makeArguments, const QString &callPostfix)
+{
+ // Pass MAKEFLAGS as environment variable to sub-make calls.
+ // Unlike other make tools nmake doesn't do this automatically.
+ t << "\n\t@set MAKEFLAGS=$(MAKEFLAGS)";
+ Win32MakefileGenerator::writeSubMakeCall(t, callPrefix, makeArguments, callPostfix);
+}
+
QString NmakeMakefileGenerator::getPdbTarget()
{
return QString(project->first("TARGET") + project->first("TARGET_VERSION_EXT") + ".pdb");
diff --git a/qmake/generators/win32/msvc_nmake.h b/qmake/generators/win32/msvc_nmake.h
index 8954655672..689cc19479 100644
--- a/qmake/generators/win32/msvc_nmake.h
+++ b/qmake/generators/win32/msvc_nmake.h
@@ -57,6 +57,8 @@ class NmakeMakefileGenerator : public Win32MakefileGenerator
void init();
protected:
+ virtual void writeSubMakeCall(QTextStream &t, const QString &callPrefix,
+ const QString &makeArguments, const QString &callPostfix);
virtual QString getPdbTarget();
virtual QString defaultInstall(const QString &t);
virtual QStringList &findDependencies(const QString &file);
diff --git a/qmake/qmake.pro b/qmake/qmake.pro
index b602afa198..ac52bd8dd0 100644
--- a/qmake/qmake.pro
+++ b/qmake/qmake.pro
@@ -27,6 +27,8 @@ INCLUDEPATH += . \
generators/symbian \
$$QT_SOURCE_TREE/include \
$$QT_SOURCE_TREE/include/QtCore \
+ $$QT_SOURCE_TREE/include/QtCore/$$QT_VERSION \
+ $$QT_SOURCE_TREE/include/QtCore/$$QT_VERSION/QtCore \
$$QT_SOURCE_TREE/qmake
VPATH += $$QT_SOURCE_TREE/tools/shared
diff --git a/qtbase.pro b/qtbase.pro
index d3ca3e1d9a..7e334501ae 100644
--- a/qtbase.pro
+++ b/qtbase.pro
@@ -122,6 +122,12 @@ win32 {
}
INSTALLS += qmake
+#syncqt
+syncqt.path=$$[QT_INSTALL_BINS]
+syncqt.files=$$QT_BUILD_TREE/bin/syncqt
+win32:syncqt.files=$$QT_BUILD_TREE/bin/syncqt.bat
+INSTALLS += syncqt
+
#mkspecs
mkspecs.path=$$[QT_INSTALL_DATA]/mkspecs
mkspecs.files=$$QT_BUILD_TREE/mkspecs/qconfig.pri $$files($$QT_SOURCE_TREE/mkspecs/*)
diff --git a/src/corelib/corelib.pro b/src/corelib/corelib.pro
index 4efb1b9a22..a31d1e5b7f 100644
--- a/src/corelib/corelib.pro
+++ b/src/corelib/corelib.pro
@@ -1,7 +1,11 @@
-MODULE = core
TARGET = QtCore
QPRO_PWD = $$PWD
QT =
+
+CONFIG += module
+MODULE = core # not corelib, as per project file
+MODULE_PRI = ../modules/qt_core.pri
+
DEFINES += QT_BUILD_CORE_LIB QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x67000000
irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp
index 82c6ebad05..1dbc40f3ed 100644
--- a/src/corelib/io/qfilesystemengine_win.cpp
+++ b/src/corelib/io/qfilesystemengine_win.cpp
@@ -583,6 +583,7 @@ QString QFileSystemEngine::owner(const QFileSystemEntry &entry, QAbstractFileEng
}
}
#else
+ Q_UNUSED(entry);
Q_UNUSED(own);
#endif
return name;
diff --git a/src/dbus/dbus.pro b/src/dbus/dbus.pro
index 08c9ea1fb2..e73fa05a74 100644
--- a/src/dbus/dbus.pro
+++ b/src/dbus/dbus.pro
@@ -1,8 +1,11 @@
TARGET = QtDBus
QPRO_PWD = $$PWD
-QT = core \
+QT = core-private \
xml
-CONFIG += link_pkgconfig
+
+CONFIG += link_pkgconfig module
+MODULE_PRI = ../modules/qt_dbus.pri
+
DEFINES += QT_BUILD_DBUS_LIB \
DBUS_API_SUBJECT_TO_CHANGE
QMAKE_CXXFLAGS += $$QT_CFLAGS_DBUS
diff --git a/src/gui/gui.pro b/src/gui/gui.pro
index 8f72fead8d..072553a05c 100644
--- a/src/gui/gui.pro
+++ b/src/gui/gui.pro
@@ -1,6 +1,10 @@
TARGET = QtGui
QPRO_PWD = $$PWD
-QT = core
+QT = core-private
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_gui.pri
+
DEFINES += QT_BUILD_GUI_LIB QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x65000000
irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
diff --git a/src/modules/qt_core.pri b/src/modules/qt_core.pri
index 9636fb2500..bf013432a5 100644
--- a/src/modules/qt_core.pri
+++ b/src/modules/qt_core.pri
@@ -1,12 +1,12 @@
-QT_CORE_VERSION = $$QT_VERSION
-QT_CORE_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_CORE_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_CORE_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.core.VERSION = 4.8.0
+QT.core.MAJOR_VERSION = 4
+QT.core.MINOR_VERSION = 8
+QT.core.PATCH_VERSION = 0
QT.core.name = QtCore
QT.core.bins = $$QT_MODULE_BIN_BASE
QT.core.includes = $$QT_MODULE_INCLUDE_BASE/QtCore
-QT.core.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCore/private
+QT.core.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCore/$$QT.core.VERSION
QT.core.sources = $$QT_MODULE_BASE/src/corelib
QT.core.libs = $$QT_MODULE_LIB_BASE
QT.core.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_dbus.pri b/src/modules/qt_dbus.pri
index 13c9914f0d..9aefab9b82 100644
--- a/src/modules/qt_dbus.pri
+++ b/src/modules/qt_dbus.pri
@@ -1,12 +1,12 @@
-QT_DBUS_VERSION = $$QT_VERSION
-QT_DBUS_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_DBUS_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_DBUS_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.dbus.VERSION = 4.8.0
+QT.dbus.MAJOR_VERSION = 4
+QT.dbus.MINOR_VERSION = 8
+QT.dbus.PATCH_VERSION = 0
QT.dbus.name = QtDBus
QT.dbus.bins = $$QT_MODULE_BIN_BASE
QT.dbus.includes = $$QT_MODULE_INCLUDE_BASE/QtDBus
-QT.dbus.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDBus/private
+QT.dbus.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDBus/$$QT.dbus.VERSION
QT.dbus.sources = $$QT_MODULE_BASE/src/dbus
QT.dbus.libs = $$QT_MODULE_LIB_BASE
QT.dbus.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_gui.pri b/src/modules/qt_gui.pri
index 444f5c4804..1ef3697db6 100644
--- a/src/modules/qt_gui.pri
+++ b/src/modules/qt_gui.pri
@@ -1,11 +1,11 @@
-QT_GUI_VERSION = $$QT_VERSION
-QT_GUI_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_GUI_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_GUI_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.gui.VERSION = 4.8.0
+QT.gui.MAJOR_VERSION = 4
+QT.gui.MINOR_VERSION = 8
+QT.gui.PATCH_VERSION = 0
QT.gui.name = QtGui
QT.gui.includes = $$QT_MODULE_INCLUDE_BASE/QtGui
-QT.gui.private_includes = $$QT_MODULE_INCLUDE_BASE/QtGui/private
+QT.gui.private_includes = $$QT_MODULE_INCLUDE_BASE/QtGui/$$QT.gui.VERSION
QT.gui.sources = $$QT_MODULE_BASE/src/gui
QT.gui.libs = $$QT_MODULE_LIB_BASE
QT.gui.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_network.pri b/src/modules/qt_network.pri
index f54afd21a0..44326c2b2d 100644
--- a/src/modules/qt_network.pri
+++ b/src/modules/qt_network.pri
@@ -1,12 +1,12 @@
-QT_CORE_VERSION = $$QT_VERSION
-QT_NETWORK_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_NETWORK_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_NETWORK_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.network.VERSION = 4.8.0
+QT.network.MAJOR_VERSION = 4
+QT.network.MINOR_VERSION = 8
+QT.network.PATCH_VERSION = 0
QT.network.name = QtNetwork
QT.network.bins = $$QT_MODULE_BIN_BASE
QT.network.includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork
-QT.network.private_includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork/private
+QT.network.private_includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork/$$QT.network.VERSION
QT.network.sources = $$QT_MODULE_BASE/src/network
QT.network.libs = $$QT_MODULE_LIB_BASE
QT.network.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_opengl.pri b/src/modules/qt_opengl.pri
index 4d9a7029ef..b767a3ce12 100644
--- a/src/modules/qt_opengl.pri
+++ b/src/modules/qt_opengl.pri
@@ -1,12 +1,12 @@
-QT_OPENGL_VERSION = $$QT_VERSION
-QT_OPENGL_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_OPENGL_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_OPENGL_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.opengl.VERSION = 4.8.0
+QT.opengl.MAJOR_VERSION = 4
+QT.opengl.MINOR_VERSION = 8
+QT.opengl.PATCH_VERSION = 0
QT.opengl.name = QtOpenGL
QT.opengl.bins = $$QT_MODULE_BIN_BASE
QT.opengl.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL
-QT.opengl.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL/private
+QT.opengl.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL/$$QT.opengl.VERSION
QT.opengl.sources = $$QT_MODULE_BASE/src/opengl
QT.opengl.libs = $$QT_MODULE_LIB_BASE
QT.opengl.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_openvg.pri b/src/modules/qt_openvg.pri
index 1261fd99c2..2ff477c013 100644
--- a/src/modules/qt_openvg.pri
+++ b/src/modules/qt_openvg.pri
@@ -1,12 +1,12 @@
-QT_OPENVG_VERSION = $$QT_VERSION
-QT_OPENVG_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_OPENVG_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_OPENVG_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.openvg.VERSION = 4.8.0
+QT.openvg.MAJOR_VERSION = 4
+QT.openvg.MINOR_VERSION = 8
+QT.openvg.PATCH_VERSION = 0
QT.openvg.name = QtOpenVG
QT.openvg.bins = $$QT_MODULE_BIN_BASE
QT.openvg.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG
-QT.openvg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG/private
+QT.openvg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG/$$QT.openvg.VERSION
QT.openvg.sources = $$QT_MODULE_BASE/src/openvg
QT.openvg.libs = $$QT_MODULE_LIB_BASE
QT.openvg.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_sql.pri b/src/modules/qt_sql.pri
index e7ca42a513..14d2422989 100644
--- a/src/modules/qt_sql.pri
+++ b/src/modules/qt_sql.pri
@@ -1,12 +1,12 @@
-QT_SQL_VERSION = $$QT_VERSION
-QT_SQL_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_SQL_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_SQL_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.sql.VERSION = 4.8.0
+QT.sql.MAJOR_VERSION = 4
+QT.sql.MINOR_VERSION = 8
+QT.sql.PATCH_VERSION = 0
QT.sql.name = QtSql
QT.sql.bins = $$QT_MODULE_BIN_BASE
QT.sql.includes = $$QT_MODULE_INCLUDE_BASE/QtSql
-QT.sql.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSql/private
+QT.sql.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSql/$$QT.sql.VERSION
QT.sql.sources = $$QT_MODULE_BASE/src/sql
QT.sql.libs = $$QT_MODULE_LIB_BASE
QT.sql.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_testlib.pri b/src/modules/qt_testlib.pri
index 6ef7939164..9fd9b2e446 100644
--- a/src/modules/qt_testlib.pri
+++ b/src/modules/qt_testlib.pri
@@ -1,12 +1,12 @@
-QT_TEST_VERSION = $$QT_VERSION
-QT_TEST_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_TEST_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_TEST_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.testlib.VERSION = 4.8.0
+QT.testlib.MAJOR_VERSION = 4
+QT.testlib.MINOR_VERSION = 8
+QT.testlib.PATCH_VERSION = 0
QT.testlib.name = QtTest
QT.testlib.bins = $$QT_MODULE_BIN_BASE
QT.testlib.includes = $$QT_MODULE_INCLUDE_BASE/QtTest
-QT.testlib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtTest/private
+QT.testlib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtTest/$$QT.testlib.VERSION
QT.testlib.sources = $$QT_MODULE_BASE/src/testlib
QT.testlib.libs = $$QT_MODULE_LIB_BASE
QT.testlib.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_uilib.pri b/src/modules/qt_uilib.pri
index 7e1dc7ccd2..5973216921 100644
--- a/src/modules/qt_uilib.pri
+++ b/src/modules/qt_uilib.pri
@@ -1,14 +1,13 @@
-QT_UILIB_VERSION = $$QT_VERSION
-QT_UILIB_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_UILIB_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_UILIB_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.uilib.VERSION = 4.8.0
+QT.uilib.MAJOR_VERSION = 4
+QT.uilib.MINOR_VERSION = 8
+QT.uilib.PATCH_VERSION = 0
-QT.uilib.name =
+QT.uilib.name = QtUiLib
QT.uilib.bins = $$QT_MODULE_BIN_BASE
QT.uilib.includes = $$QT_MODULE_INCLUDE_BASE/QtDesigner
-QT.uilib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDesigner/private
+QT.uilib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDesigner/$$QT.uilib.VERSION
QT.uilib.sources = $$QT_MODULE_BASE/tools/uilib
-QT.uilib.libs = $$QT_MODULE_LIB_BASE
QT.uilib.plugins = $$QT_MODULE_PLUGIN_BASE
QT.uilib.imports = $$QT_MODULE_IMPORT_BASE
QT.uilib.depends = xml
diff --git a/src/modules/qt_uitools.pri b/src/modules/qt_uitools.pri
index d221007684..d30c8b845b 100644
--- a/src/modules/qt_uitools.pri
+++ b/src/modules/qt_uitools.pri
@@ -1,12 +1,12 @@
-QT_UITOOLS_VERSION = $$QT_VERSION
-QT_UITOOLS_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_UITOOLS_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_UITOOLS_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.uitools.VERSION = 4.8.0
+QT.uitools.MAJOR_VERSION = 4
+QT.uitools.MINOR_VERSION = 8
+QT.uitools.PATCH_VERSION = 0
QT.uitools.name = QtUiTools
QT.uitools.bins = $$QT_MODULE_BIN_BASE
QT.uitools.includes = $$QT_MODULE_INCLUDE_BASE/QtUiTools
-QT.uitools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtUiTools/private
+QT.uitools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtUiTools/$$QT.uitools.VERSION
QT.uitools.sources = $$QT_MODULE_BASE/src/uitools
QT.uitools.libs = $$QT_MODULE_LIB_BASE
QT.uitools.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/modules/qt_xml.pri b/src/modules/qt_xml.pri
index 0ede3d2ddf..e7db6365eb 100644
--- a/src/modules/qt_xml.pri
+++ b/src/modules/qt_xml.pri
@@ -1,12 +1,12 @@
-QT_XML_VERSION = $$QT_VERSION
-QT_XML_MAJOR_VERSION = $$QT_MAJOR_VERSION
-QT_XML_MINOR_VERSION = $$QT_MINOR_VERSION
-QT_XML_PATCH_VERSION = $$QT_PATCH_VERSION
+QT.xml.VERSION = 4.8.0
+QT.xml.MAJOR_VERSION = 4
+QT.xml.MINOR_VERSION = 8
+QT.xml.PATCH_VERSION = 0
QT.xml.name = QtXml
QT.xml.bins = $$QT_MODULE_BIN_BASE
QT.xml.includes = $$QT_MODULE_INCLUDE_BASE/QtXml
-QT.xml.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXml/private
+QT.xml.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXml/$$QT.xml.VERSION
QT.xml.sources = $$QT_MODULE_BASE/src/xml
QT.xml.libs = $$QT_MODULE_LIB_BASE
QT.xml.plugins = $$QT_MODULE_PLUGIN_BASE
diff --git a/src/network/bearer/qnetworkconfigmanager_p.cpp b/src/network/bearer/qnetworkconfigmanager_p.cpp
index c108ad34cf..e9b6703dd9 100644
--- a/src/network/bearer/qnetworkconfigmanager_p.cpp
+++ b/src/network/bearer/qnetworkconfigmanager_p.cpp
@@ -60,7 +60,7 @@ Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader,
#endif
QNetworkConfigurationManagerPrivate::QNetworkConfigurationManagerPrivate()
- : QObject(), mutex(QMutex::Recursive), forcedPolling(0), firstUpdate(true)
+ : QObject(), pollTimer(0), mutex(QMutex::Recursive), forcedPolling(0), firstUpdate(true)
{
qRegisterMetaType<QNetworkConfiguration>("QNetworkConfiguration");
qRegisterMetaType<QNetworkConfigurationPrivatePointer>("QNetworkConfigurationPrivatePointer");
@@ -442,9 +442,19 @@ void QNetworkConfigurationManagerPrivate::startPolling()
{
QMutexLocker locker(&mutex);
+ if(!pollTimer) {
+ pollTimer = new QTimer(this);
+ pollTimer->setInterval(10000);
+ pollTimer->setSingleShot(true);
+ connect(pollTimer, SIGNAL(timeout()), this, SLOT(pollEngines()));
+ }
+
+ if(pollTimer->isActive())
+ return;
+
foreach (QBearerEngine *engine, sessionEngines) {
if (engine->requiresPolling() && (forcedPolling || engine->configurationsInUse())) {
- QTimer::singleShot(10000, this, SLOT(pollEngines()));
+ pollTimer->start();
break;
}
}
diff --git a/src/network/bearer/qnetworkconfigmanager_p.h b/src/network/bearer/qnetworkconfigmanager_p.h
index 81f38c5183..abc4b9b4fa 100644
--- a/src/network/bearer/qnetworkconfigmanager_p.h
+++ b/src/network/bearer/qnetworkconfigmanager_p.h
@@ -64,6 +64,7 @@
QT_BEGIN_NAMESPACE
class QBearerEngine;
+class QTimer;
class Q_NETWORK_EXPORT QNetworkConfigurationManagerPrivate : public QObject
{
@@ -107,6 +108,7 @@ private Q_SLOTS:
private:
void startPolling();
+ QTimer *pollTimer;
private:
mutable QMutex mutex;
diff --git a/src/network/network.pro b/src/network/network.pro
index 948922b8c1..fc5d08d936 100644
--- a/src/network/network.pro
+++ b/src/network/network.pro
@@ -1,7 +1,10 @@
# Qt network module
-
TARGET = QtNetwork
QPRO_PWD = $$PWD
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_network.pri
+
DEFINES += QT_BUILD_NETWORK_LIB QT_NO_USING_NAMESPACE
#DEFINES += QLOCALSERVER_DEBUG QLOCALSOCKET_DEBUG
#DEFINES += QNETWORKDISKCACHE_DEBUG
@@ -10,7 +13,7 @@ DEFINES += QT_BUILD_NETWORK_LIB QT_NO_USING_NAMESPACE
#DEFINES += QABSTRACTSOCKET_DEBUG QNATIVESOCKETENGINE_DEBUG
#DEFINES += QTCPSOCKETENGINE_DEBUG QTCPSOCKET_DEBUG QTCPSERVER_DEBUG QSSLSOCKET_DEBUG
#DEFINES += QUDPSOCKET_DEBUG QUDPSERVER_DEBUG
-QT = core
+QT = core-private
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x64000000
unix|win32-g++*:QMAKE_PKGCONFIG_REQUIRES = QtCore
diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp
index 7af71ccc8b..cfb141398c 100644
--- a/src/network/socket/qabstractsocket.cpp
+++ b/src/network/socket/qabstractsocket.cpp
@@ -1877,7 +1877,7 @@ bool QAbstractSocket::waitForReadyRead(int msecs)
}
Q_ASSERT(d->socketEngine);
- forever {
+ do {
bool readyToRead = false;
bool readyToWrite = false;
if (!d->socketEngine->waitForReadOrWrite(&readyToRead, &readyToWrite, true, !d->writeBuffer.isEmpty(),
@@ -1904,7 +1904,7 @@ bool QAbstractSocket::waitForReadyRead(int msecs)
if (state() != ConnectedState)
return false;
- }
+ } while (qt_timeout_value(msecs, stopWatch.elapsed()) > 0);
return false;
}
diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro
index e7c1c446de..849bd9ebc7 100644
--- a/src/opengl/opengl.pro
+++ b/src/opengl/opengl.pro
@@ -1,6 +1,10 @@
TARGET = QtOpenGL
QPRO_PWD = $$PWD
-QT = core gui
+QT = core-private gui-private
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_opengl.pri
+
DEFINES += QT_BUILD_OPENGL_LIB
DEFINES += QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x63000000
diff --git a/src/openvg/openvg.pro b/src/openvg/openvg.pro
index e185949bef..5451c2d04e 100644
--- a/src/openvg/openvg.pro
+++ b/src/openvg/openvg.pro
@@ -2,6 +2,9 @@ TARGET = QtOpenVG
QT += core \
gui
+CONFIG += module
+MODULE_PRI = ../modules/qt_openvg.pri
+
DEFINES+=QT_BUILD_OPENVG_LIB
contains(QT_CONFIG, shivavg) {
diff --git a/src/plugins/accessible/widgets/widgets.pro b/src/plugins/accessible/widgets/widgets.pro
index 092f3ca32c..8329bce963 100644
--- a/src/plugins/accessible/widgets/widgets.pro
+++ b/src/plugins/accessible/widgets/widgets.pro
@@ -2,6 +2,7 @@ TARGET = qtaccessiblewidgets
include(../../qpluginbase.pri)
include (../qaccessiblebase.pri)
+QT += core-private gui-private
DESTDIR = $$QT.gui.plugins/accessible
QTDIR_build:REQUIRES += "contains(QT_CONFIG, accessibility)"
diff --git a/src/plugins/bearer/connman/connman.pro b/src/plugins/bearer/connman/connman.pro
index 3ac54c3769..f57a0c930b 100644
--- a/src/plugins/bearer/connman/connman.pro
+++ b/src/plugins/bearer/connman/connman.pro
@@ -1,7 +1,7 @@
TARGET = qconnmanbearer
include(../../qpluginbase.pri)
-QT = core network dbus
+QT = core network-private dbus
HEADERS += qconnmanservice_linux_p.h \
qofonoservice_linux_p.h \
diff --git a/src/plugins/bearer/generic/generic.pro b/src/plugins/bearer/generic/generic.pro
index 94ab36ce59..94fefaf6c2 100644
--- a/src/plugins/bearer/generic/generic.pro
+++ b/src/plugins/bearer/generic/generic.pro
@@ -1,7 +1,7 @@
TARGET = qgenericbearer
include(../../qpluginbase.pri)
-QT = core network
+QT = core-private network-private
HEADERS += qgenericengine.h \
../qnetworksession_impl.h \
diff --git a/src/plugins/bearer/nativewifi/nativewifi.pro b/src/plugins/bearer/nativewifi/nativewifi.pro
index 6df346cd46..ba02f37d23 100644
--- a/src/plugins/bearer/nativewifi/nativewifi.pro
+++ b/src/plugins/bearer/nativewifi/nativewifi.pro
@@ -1,7 +1,7 @@
TARGET = qnativewifibearer
include(../../qpluginbase.pri)
-QT = core network
+QT = core-private network-private
HEADERS += qnativewifiengine.h \
platformdefs.h \
diff --git a/src/plugins/bearer/networkmanager/networkmanager.pro b/src/plugins/bearer/networkmanager/networkmanager.pro
index b3e088344d..a9de1561fd 100644
--- a/src/plugins/bearer/networkmanager/networkmanager.pro
+++ b/src/plugins/bearer/networkmanager/networkmanager.pro
@@ -1,7 +1,7 @@
TARGET = qnmbearer
include(../../qpluginbase.pri)
-QT = core network dbus
+QT = core network-private dbus
HEADERS += qnmdbushelper.h \
qnetworkmanagerservice.h \
diff --git a/src/plugins/graphicssystems/opengl/opengl.pro b/src/plugins/graphicssystems/opengl/opengl.pro
index fb3cb5331a..30c88271b6 100644
--- a/src/plugins/graphicssystems/opengl/opengl.pro
+++ b/src/plugins/graphicssystems/opengl/opengl.pro
@@ -1,7 +1,7 @@
TARGET = qglgraphicssystem
include(../../qpluginbase.pri)
-QT += opengl
+QT += core-private gui-private opengl-private
DESTDIR = $$QT.gui.plugins/graphicssystems
diff --git a/src/plugins/graphicssystems/trace/trace.pro b/src/plugins/graphicssystems/trace/trace.pro
index 0958a86973..b31beb35f8 100644
--- a/src/plugins/graphicssystems/trace/trace.pro
+++ b/src/plugins/graphicssystems/trace/trace.pro
@@ -1,7 +1,7 @@
TARGET = qtracegraphicssystem
include(../../qpluginbase.pri)
-QT += network
+QT += core-private gui-private network
DESTDIR = $$QT.gui.plugins/graphicssystems
symbian:TARGET.UID3 = 0x2002130E
diff --git a/src/plugins/imageformats/jpeg/jpeg.pro b/src/plugins/imageformats/jpeg/jpeg.pro
index 3a0e8754c0..1e6c24d061 100644
--- a/src/plugins/imageformats/jpeg/jpeg.pro
+++ b/src/plugins/imageformats/jpeg/jpeg.pro
@@ -1,6 +1,8 @@
TARGET = qjpeg
include(../../qpluginbase.pri)
+QT += core-private
+
QTDIR_build:REQUIRES = "!contains(QT_CONFIG, no-jpeg)"
include(../../../gui/image/qjpeghandler.pri)
diff --git a/src/plugins/sqldrivers/qsqldriverbase.pri b/src/plugins/sqldrivers/qsqldriverbase.pri
index 64f55fda78..7399c659da 100644
--- a/src/plugins/sqldrivers/qsqldriverbase.pri
+++ b/src/plugins/sqldrivers/qsqldriverbase.pri
@@ -1,5 +1,5 @@
include(../qpluginbase.pri)
-QT = core sql
+QT = core sql-private
DESTDIR = $$QT.sql.plugins/sqldrivers
target.path += $$[QT_INSTALL_PLUGINS]/sqldrivers
diff --git a/src/qbase.pri b/src/qbase.pri
index 4ff17630c5..6336aa9f5c 100644
--- a/src/qbase.pri
+++ b/src/qbase.pri
@@ -4,6 +4,9 @@ isEmpty(MODULE):MODULE = $$section($$list($$basename(_PRO_FILE_)), ., 0, 0)
isEmpty(TARGET):error("You must set TARGET before include()'ing $${_FILE_}")
MODULE_INCLUDES = $$eval(QT.$${MODULE}.includes)
+MODULE_PRIVATE_INCLUDES = $$eval(QT.$${MODULE}.private_includes)
+INCLUDEPATH *= $$MODULE_PRIVATE_INCLUDES
+INCLUDEPATH *= $$MODULE_PRIVATE_INCLUDES/$$TARGET
INCLUDEPATH *= $$MODULE_INCLUDES $$MODULE_INCLUDES/.. #just for today to have some compat
!isEmpty(RCC_DIR): INCLUDEPATH += $$RCC_DIR
isEmpty(QT_ARCH):!isEmpty(ARCH):QT_ARCH=$$ARCH #another compat that will rot for change #215700
diff --git a/src/qt_install.pri b/src/qt_install.pri
index 268bb864f6..17b41af1ce 100644
--- a/src/qt_install.pri
+++ b/src/qt_install.pri
@@ -31,11 +31,9 @@ qt_install_headers {
targ_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET
INSTALLS += targ_headers
- contains(QT_CONFIG,private_tests) {
- private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES
- private_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET/private
- INSTALLS += private_headers
- }
+ private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES
+ private_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET/$$eval(QT.$${MODULE}.VERSION)/private
+ INSTALLS += private_headers
}
embedded|qpa: equals(TARGET, QtGui) {
diff --git a/src/sql/sql.pro b/src/sql/sql.pro
index 81aa3c06c9..f1bdd6bda1 100644
--- a/src/sql/sql.pro
+++ b/src/sql/sql.pro
@@ -1,6 +1,10 @@
TARGET = QtSql
QPRO_PWD = $$PWD
-QT = core
+QT = core-private
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_sql.pri
+
DEFINES += QT_BUILD_SQL_LIB
DEFINES += QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x62000000
diff --git a/src/testlib/testlib.pro b/src/testlib/testlib.pro
index c25d23db12..311c79379b 100644
--- a/src/testlib/testlib.pro
+++ b/src/testlib/testlib.pro
@@ -1,6 +1,10 @@
TARGET = QtTest
QPRO_PWD = $$PWD
QT = core
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_testlib.pri
+
INCLUDEPATH += .
unix:!embedded:QMAKE_PKGCONFIG_DESCRIPTION = Qt \
Unit \
diff --git a/src/tools/bootstrap/bootstrap.pri b/src/tools/bootstrap/bootstrap.pri
index f48c8c12ff..50c1af1775 100644
--- a/src/tools/bootstrap/bootstrap.pri
+++ b/src/tools/bootstrap/bootstrap.pri
@@ -29,7 +29,11 @@ win32:DEFINES += QT_NODLL
INCLUDEPATH += $$QT_BUILD_TREE/include \
$$QT_BUILD_TREE/include/QtCore \
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION \
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION/QtCore \
$$QT_BUILD_TREE/include/QtXml \
+ $$QT_BUILD_TREE/include/QtXml/$$QT.xml.VERSION \
+ $$QT_BUILD_TREE/include/QtXml/$$QT.xml.VERSION/QtXml \
$$QT_SOURCE_TREE/src/xml
DEPENDPATH += $$INCLUDEPATH \
$$QT_SOURCE_TREE/src/corelib/global \
diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro
index 50ae2cff16..6ff948c8e8 100644
--- a/src/tools/bootstrap/bootstrap.pro
+++ b/src/tools/bootstrap/bootstrap.pro
@@ -32,7 +32,11 @@ win32:DEFINES += QT_NODLL
INCLUDEPATH += $$QT_BUILD_TREE/include \
$$QT_BUILD_TREE/include/QtCore \
- $$QT_BUILD_TREE/include/QtXml
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION \
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION/QtCore \
+ $$QT_BUILD_TREE/include/QtXml \
+ $$QT_BUILD_TREE/include/QtXml/$$QT.xml.VERSION \
+ $$QT_BUILD_TREE/include/QtXml/$$QT.xml.VERSION/QtXml \
DEPENDPATH += $$INCLUDEPATH \
../../corelib/global \
diff --git a/src/uitools/uitools.pro b/src/uitools/uitools.pro
index 32c4501375..0af26d9375 100644
--- a/src/uitools/uitools.pro
+++ b/src/uitools/uitools.pro
@@ -1,9 +1,12 @@
-MODULE = uitools
QPRO_PWD = $$PWD
TEMPLATE = lib
TARGET = $$qtLibraryTarget(QtUiTools)
QT = core xml
-CONFIG += qt staticlib
+
+CONFIG += qt staticlib # Not adding module here, since the module pri's are only used for building
+MODULE_PRI = ../modules/qt_uitools.pri \
+ ../modules/qt_uilib.pri
+
DESTDIR = $$QMAKE_LIBDIR_QT
symbian {
diff --git a/src/xml/xml.pro b/src/xml/xml.pro
index 019153ce85..68bb20b009 100644
--- a/src/xml/xml.pro
+++ b/src/xml/xml.pro
@@ -1,6 +1,10 @@
TARGET = QtXml
QPRO_PWD = $$PWD
-QT = core
+QT = core-private
+
+CONFIG += module
+MODULE_PRI = ../modules/qt_xml.pri
+
DEFINES += QT_BUILD_XML_LIB QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x61000000
diff --git a/tests/auto/headersclean/headersclean.pro b/tests/auto/headersclean/headersclean.pro
index d9b6ae3e2a..0f976ffb95 100644
--- a/tests/auto/headersclean/headersclean.pro
+++ b/tests/auto/headersclean/headersclean.pro
@@ -1,7 +1,9 @@
load(qttest_p4)
SOURCES += tst_headersclean.cpp
-QT = core network xml sql uitools
+QT = core network xml sql
+CONFIG += uitools
contains(QT_CONFIG,dbus): QT += dbus
contains(QT_CONFIG,opengl): QT += opengl
-contains(QT_CONFIG,openvg): QT += openvg \ No newline at end of file
+contains(QT_CONFIG,openvg): QT += openvg
+
diff --git a/tools/configure/configure.pro b/tools/configure/configure.pro
index 124564667c..81458fc1bd 100644
--- a/tools/configure/configure.pro
+++ b/tools/configure/configure.pro
@@ -28,6 +28,8 @@ INCLUDEPATH += \
$$QT_SOURCE_TREE/src/corelib/global \
$$QT_BUILD_TREE/include \
$$QT_BUILD_TREE/include/QtCore \
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION \
+ $$QT_BUILD_TREE/include/QtCore/$$QT.core.VERSION/QtCore \
$$QT_SOURCE_TREE/tools/shared
HEADERS = configureapp.h environment.h tools.h\
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index 9c2ce2cfb4..3f9d97c1ac 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -2913,7 +2913,7 @@ void Configure::generateCachefile()
for (QStringList::Iterator var = qmakeVars.begin(); var != qmakeVars.end(); ++var) {
cacheStream << (*var) << endl;
}
- cacheStream << "CONFIG += " << qmakeConfig.join(" ") << " incremental msvc_mp create_prl link_prl depend_includepath QTDIR_build" << endl;
+ cacheStream << "CONFIG += " << qmakeConfig.join(" ") << " incremental msvc_mp create_prl link_prl depend_includepath no_private_qt_headers_warning QTDIR_build" << endl;
cacheStream.flush();
cacheFile.close();
@@ -3648,7 +3648,8 @@ void Configure::buildQmake()
stream << "#AutoGenerated by configure.exe" << endl
<< "BUILD_PATH = " << QDir::convertSeparators(buildPath) << endl
<< "SOURCE_PATH = " << QDir::convertSeparators(sourcePath) << endl;
- stream << "QMAKESPEC = " << dictionary["QMAKESPEC"] << endl;
+ stream << "QMAKESPEC = " << dictionary["QMAKESPEC"] << endl
+ << "QT_VERSION = " << QT_VERSION_STR << endl;
if (dictionary["EDITION"] == "OpenSource" ||
dictionary["QT_EDITION"].contains("OPENSOURCE"))