summaryrefslogtreecommitdiffstats
path: root/qmake
diff options
context:
space:
mode:
Diffstat (limited to 'qmake')
-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
9 files changed, 37 insertions, 20 deletions
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