diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf index b11ab1a316d954557fb182e68c2a5dbd9ebef642..86e75827a9bee03d85c03b72c37e8e40ceeb8969 100644 --- a/mkspecs/features/qt_module.prf +++ b/mkspecs/features/qt_module.prf @@ -12,8 +12,8 @@ isEmpty(MODULE):MODULE = $$section($$list($$basename(_PRO_FILE_)), ., 0, 0) isEmpty(VERSION):VERSION = $$QT_VERSION # Compile as shared/DLL or static according to the option given to configure -# unless overridden -staticlib: CONFIG += static +# unless overridden. Host builds are always static +host_build|staticlib: CONFIG += static !static:!shared { contains(QT_CONFIG, static): \ CONFIG += static @@ -62,6 +62,11 @@ MODULE_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules-inst/qt_lib_$${MODULE}.pri module_config = "QT.$${MODULE}.CONFIG = $$MODULE_CONFIG" else: \ module_config = + !no_module_headers { + MODULE_INCLUDES = "\$\$QT_MODULE_INCLUDE_BASE \$\$QT_MODULE_INCLUDE_BASE/$$TARGET" + MODULE_PRIVATE_INCLUDES = "\$\$QT_MODULE_INCLUDE_BASE/$$TARGET/\$\$QT.$${MODULE}.VERSION \ + \$\$QT_MODULE_INCLUDE_BASE/$$TARGET/\$\$QT.$${MODULE}.VERSION/$$TARGET" + } MODULE_PRI_CONT = \ "QT.$${MODULE}.VERSION = $${VERSION}" \ "QT.$${MODULE}.MAJOR_VERSION = $$section(VERSION, ., 0, 0)" \ @@ -70,9 +75,8 @@ MODULE_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules-inst/qt_lib_$${MODULE}.pri "" \ "QT.$${MODULE}.name = $$TARGET" \ "QT.$${MODULE}.bins = \$\$QT_MODULE_BIN_BASE" \ - "QT.$${MODULE}.includes = \$\$QT_MODULE_INCLUDE_BASE \$\$QT_MODULE_INCLUDE_BASE/$$TARGET" \ - "QT.$${MODULE}.private_includes = \$\$QT_MODULE_INCLUDE_BASE/$$TARGET/\$\$QT.$${MODULE}.VERSION \ - \$\$QT_MODULE_INCLUDE_BASE/$$TARGET/\$\$QT.$${MODULE}.VERSION/$$TARGET" \ + "QT.$${MODULE}.includes = $$MODULE_INCLUDES" \ + "QT.$${MODULE}.private_includes = $$MODULE_PRIVATE_INCLUDES" \ "QT.$${MODULE}.sources = $$val_escape(_PRO_FILE_PWD_)" \ "QT.$${MODULE}.libs = \$\$QT_MODULE_LIB_BASE" \ "QT.$${MODULE}.plugins = \$\$QT_MODULE_PLUGIN_BASE" \ @@ -94,7 +98,7 @@ load(qt_module_fwdpri) INCLUDEPATH *= $$eval(QT.$${MODULE}.includes) $$eval(QT.$${MODULE}.private_includes) -load(qt_module_headers) +!no_module_headers: load(qt_module_headers) #other TEMPLATE = lib @@ -116,7 +120,8 @@ CONFIG += qmake_cache target_qt } # If Qt was configured with -debug-and-release then build the module the same way -if(win32|mac):!macx-xcode { +# - unless this is a host library +!host_build:if(win32|mac):!macx-xcode { contains(QT_CONFIG, debug_and_release):CONFIG += debug_and_release contains(QT_CONFIG, build_all):CONFIG += build_all } diff --git a/src/tools/bootstrap/bootstrap.pri b/src/tools/bootstrap/bootstrap.pri deleted file mode 100644 index 2b64b291b9dea7b7f71828c77772578ad577b634..0000000000000000000000000000000000000000 --- a/src/tools/bootstrap/bootstrap.pri +++ /dev/null @@ -1,65 +0,0 @@ -CONFIG += console qtinc -CONFIG -= qt -!build_pass:contains(QT_CONFIG, build_all):CONFIG += release -CONFIG -= app_bundle -CONFIG += exceptions_off - -DEFINES += \ - QT_BOOTSTRAPPED \ - QT_LITE_UNICODE \ - QT_NO_CAST_FROM_ASCII \ - QT_NO_CAST_TO_ASCII \ - QT_NO_CODECS \ - QT_NO_DATASTREAM \ - QT_NO_LIBRARY \ - QT_NO_QOBJECT \ - QT_NO_SYSTEMLOCALE \ - QT_NO_THREAD \ - QT_NO_UNICODETABLES \ - QT_NO_USING_NAMESPACE \ - QT_NO_DEPRECATED - -INCLUDEPATH += $$QT_BUILD_TREE/include \ - $$QT_BUILD_TREE/include/QtCore \ - $$QT_BUILD_TREE/include/QtCore/$$QT_VERSION \ - $$QT_BUILD_TREE/include/QtCore/$$QT_VERSION/QtCore -DEPENDPATH += $$INCLUDEPATH \ - $$QT_SOURCE_TREE/src/corelib/global \ - $$QT_SOURCE_TREE/src/corelib/kernel \ - $$QT_SOURCE_TREE/src/corelib/tools \ - $$QT_SOURCE_TREE/src/corelib/io \ - $$QT_SOURCE_TREE/src/corelib/codecs - -hpux-acc*|hpuxi-acc* { - LIBS += $$QT_BUILD_TREE/src/tools/bootstrap/libbootstrap.a -} else { - contains(CONFIG, debug_and_release_target) { - CONFIG(debug, debug|release) { - QMAKE_LIBDIR += $$QT_BUILD_TREE/src/tools/bootstrap/debug - } else { - QMAKE_LIBDIR += $$QT_BUILD_TREE/src/tools/bootstrap/release - } - } else { - QMAKE_LIBDIR += $$QT_BUILD_TREE/src/tools/bootstrap - } - LIBS += -lbootstrap -} -!contains(QT_CONFIG, zlib):!contains(QT_CONFIG, no-zlib):!cross_compile { - include($$PWD/../../3rdparty/zlib_dependency.pri) -} -win32:LIBS += -luser32 -lole32 -ladvapi32 - -mac { - CONFIG -= incremental - LIBS += -framework CoreServices -} - -# Make dummy "sis" and "freeze" target to keep recursive "make sis/freeze" working. -sis_target.target = sis -sis_target.commands = -sis_target.depends = first -QMAKE_EXTRA_TARGETS += sis_target -freeze_target.target = freeze -freeze_target.commands = -freeze_target.depends = first -QMAKE_EXTRA_TARGETS += freeze_target diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro index 07c4a10573dbda68943ff874579c22a06dd4d364..924d1406b15677589abfffe9a67c320a9d204a96 100644 --- a/src/tools/bootstrap/bootstrap.pro +++ b/src/tools/bootstrap/bootstrap.pro @@ -1,18 +1,12 @@ option(host_build) -TEMPLATE = lib -TARGET = bootstrap -CONFIG += static -CONFIG += console qtinc -CONFIG -= qt -CONFIG += exceptions_off -!build_pass:contains(QT_CONFIG, build_all):CONFIG += release -mac:CONFIG -= app_bundle incremental +TARGET = QtBootstrap +QT = +CONFIG += no_module_headers internal_module -DEFINES += \ +MODULE_DEFINES = \ QT_BOOTSTRAPPED \ QT_LITE_UNICODE \ - QT_NO_CAST_FROM_ASCII \ QT_NO_CAST_TO_ASCII \ QT_NO_CODECS \ QT_NO_DATASTREAM \ @@ -25,11 +19,22 @@ DEFINES += \ QT_NO_DEPRECATED \ QT_QMAKE_LOCATION=\\\"$$QMAKE_QMAKE\\\" -INCLUDEPATH += $$QT_BUILD_TREE/include \ - $$QT_BUILD_TREE/include/QtCore \ - $$QT_BUILD_TREE/include/QtCore/$$QT_VERSION \ - $$QT_BUILD_TREE/include/QtCore/$$QT_VERSION/QtCore \ - $$QT_BUILD_TREE/src/corelib/global +DEFINES += \ + $$MODULE_DEFINES \ + QT_NO_CAST_FROM_ASCII + +MODULE_CONFIG = console -app_bundle release +MODULE_PRIVATE_INCLUDES = \ + \$\$QT_MODULE_INCLUDE_BASE \ + \$\$QT_MODULE_INCLUDE_BASE/QtCore \ + \$\$QT_MODULE_INCLUDE_BASE/QtCore/$$QT_VERSION \ + \$\$QT_MODULE_INCLUDE_BASE/QtCore/$$QT_VERSION/QtCore + +qtProcessModuleFlags(CONFIG, MODULE_CONFIG) + +load(qt_module) + +INCLUDEPATH += $$QT_BUILD_TREE/src/corelib/global DEPENDPATH += $$INCLUDEPATH \ ../../corelib/global \ @@ -119,6 +124,8 @@ macx: { if(contains(QT_CONFIG, zlib)|cross_compile):include(../../3rdparty/zlib.pri) else:include(../../3rdparty/zlib_dependency.pri) +win32:LIBS += -luser32 -lole32 -ladvapi32 + lib.CONFIG = dummy_install INSTALLS += lib diff --git a/src/tools/moc/moc.pro b/src/tools/moc/moc.pro index 8b53578e23b19e8fa4398e0452e3cab888a06d27..c83f5f6f150fe5fab49a2fa1e445ecf082d04402 100644 --- a/src/tools/moc/moc.pro +++ b/src/tools/moc/moc.pro @@ -1,18 +1,16 @@ option(host_build) -TEMPLATE = app -TARGET = moc +TEMPLATE = app +TARGET = moc +QT = bootstrap-private -DEFINES += QT_MOC QT_NO_CAST_FROM_BYTEARRAY QT_NO_COMPRESS -DESTDIR = ../../../bin -INCLUDEPATH += $$OUT_PWD/../../corelib/global -DEPENDPATH += $$OUT_PWD/../../corelib/global -LIBS = -OBJECTS_DIR = . +DEFINES += QT_MOC QT_NO_CAST_FROM_ASCII QT_NO_CAST_FROM_BYTEARRAY QT_NO_COMPRESS +DESTDIR = ../../../bin + +INCLUDEPATH += $$QT_BUILD_TREE/src/corelib/global include(moc.pri) HEADERS += qdatetime_p.h SOURCES += main.cpp -include(../bootstrap/bootstrap.pri) target.path = $$[QT_HOST_BINS] INSTALLS += target diff --git a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro index 0fee3efbe4a39033c5de1f50fea4d39346d2c557..00328dfbc012bbd45e53746a6cdb9c1438cb992e 100644 --- a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro +++ b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro @@ -1,11 +1,14 @@ option(host_build) TEMPLATE = app TARGET = qdbuscpp2xml +QT = bootstrap-private DESTDIR = ../../../bin include(../moc/moc.pri) +DEFINES += QT_NO_CAST_FROM_ASCII + INCLUDEPATH += $$QT_BUILD_TREE/include \ $$QT_BUILD_TREE/include/QtDBus \ $$QT_BUILD_TREE/include/QtDBus/$$QT_VERSION \ @@ -26,8 +29,6 @@ SOURCES += qdbuscpp2xml.cpp \ $$QT_SOURCE_TREE/src/dbus/qdbus_symbols.cpp \ $$QT_SOURCE_TREE/src/dbus/qdbusunixfiledescriptor.cpp -include(../bootstrap/bootstrap.pri) - target.path = $$[QT_HOST_BINS] INSTALLS += target load(qt_targets) diff --git a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro index 1d5c4d2fc39f806f97e4a5e21a70d017e237fdc5..01f43c4d8a856199ab58f8e9c01a615ff876b2a6 100644 --- a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro +++ b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro @@ -1,10 +1,11 @@ option(host_build) TEMPLATE = app TARGET = qdbusxml2cpp +QT = bootstrap-private DESTDIR = ../../../bin -include(../bootstrap/bootstrap.pri) +DEFINES += QT_NO_CAST_FROM_ASCII INCLUDEPATH += $$QT_BUILD_TREE/include \ $$QT_BUILD_TREE/include/QtDBus \ diff --git a/src/tools/qdoc/qdoc.pro b/src/tools/qdoc/qdoc.pro index 0c3521c5d7bf1a70cbcd50b292ab86b2218fc06c..2cd51e796c45f0bf8d95d62b75c3f88f65236868 100644 --- a/src/tools/qdoc/qdoc.pro +++ b/src/tools/qdoc/qdoc.pro @@ -1,12 +1,11 @@ option(host_build) TEMPLATE = app TARGET = qdoc +QT = bootstrap-private DESTDIR = ../../../bin DEFINES += QDOC2_COMPAT -include(../bootstrap/bootstrap.pri) -DEFINES -= QT_NO_CAST_FROM_ASCII DEFINES += QT_NO_TRANSLATION INCLUDEPATH += $$QT_SOURCE_TREE/src/tools/qdoc \ diff --git a/src/tools/rcc/rcc.pro b/src/tools/rcc/rcc.pro index b224f98b611613f3d7b6214be4eb3734528d595c..1e2e57f2f96fc243c47c4422481ec1c3356920a3 100644 --- a/src/tools/rcc/rcc.pro +++ b/src/tools/rcc/rcc.pro @@ -1,14 +1,14 @@ option(host_build) TEMPLATE = app TARGET = rcc +QT = bootstrap-private DESTDIR = ../../../bin -DEFINES += QT_RCC +DEFINES += QT_RCC QT_NO_CAST_FROM_ASCII include(rcc.pri) HEADERS += ../../corelib/kernel/qcorecmdlineargs_p.h SOURCES += main.cpp -include(../bootstrap/bootstrap.pri) target.path = $$[QT_HOST_BINS] INSTALLS += target diff --git a/src/tools/uic/uic.pro b/src/tools/uic/uic.pro index d481168ac23b191fcbfd04abd8b3c35b2e7da9ca..34c3f2a33df8e2d41f7dda2cda544ebb39c7aee0 100644 --- a/src/tools/uic/uic.pro +++ b/src/tools/uic/uic.pro @@ -1,9 +1,10 @@ option(host_build) TEMPLATE = app TARGET = uic +QT = bootstrap-private DESTDIR = ../../../bin -DEFINES += QT_UIC +DEFINES += QT_UIC QT_NO_CAST_FROM_ASCII include(uic.pri) include(cpp/cpp.pri) @@ -19,8 +20,6 @@ SOURCES += main.cpp \ QMAKE_CXXFLAGS_RELEASE -= -O2 } -include(../bootstrap/bootstrap.pri) - target.path = $$[QT_HOST_BINS] INSTALLS += target load(qt_targets)