summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure59
-rw-r--r--dist/changes-5.0.0150
-rw-r--r--mkspecs/features/qt_module.prf7
-rw-r--r--mkspecs/features/qt_module_fwdpri.prf1
-rw-r--r--mkspecs/features/win32/thread.prf22
-rw-r--r--mkspecs/features/win32/thread_off.prf2
-rw-r--r--src/plugins/platforms/xcb/qxcbscreen.cpp44
-rw-r--r--src/plugins/platforms/xcb/qxcbscreen.h2
-rw-r--r--tools/configure/configureapp.cpp98
-rw-r--r--tools/configure/configureapp.h1
10 files changed, 169 insertions, 217 deletions
diff --git a/configure b/configure
index 2fbe7a1006..faf8a6d380 100755
--- a/configure
+++ b/configure
@@ -861,7 +861,6 @@ PLATFORM=$QMAKESPEC
QT_CROSS_COMPILE=no
OPT_CONFIRM_LICENSE=no
OPT_SHADOW=maybe
-OPT_FAST=auto
OPT_VERBOSE=no
OPT_HELP=
CFG_SILENT=no
@@ -2015,13 +2014,6 @@ while [ "$#" -gt 0 ]; do
UNKNOWN_OPT=yes
fi
;;
- fast)
- if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
- OPT_FAST="$VAL"
- else
- UNKNOWN_OPT=yes
- fi
- ;;
rpath)
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
CFG_RPATH="$VAL"
@@ -2305,14 +2297,6 @@ if [ ! -d "${outpath}/lib/fonts" ]; then
fi
fi
-if [ "$OPT_FAST" = "auto" ]; then
- if [ '!' -z "$AWK" ] && [ "$CFG_DEV" = "yes" ]; then
- OPT_FAST=yes
- else
- OPT_FAST=no
- fi
-fi
-
# find a make command
if [ -z "$MAKE" ]; then
MAKE=
@@ -3099,12 +3083,6 @@ Configure options:
-fully-process ..... Generate Makefiles for the entire Qt tree.
-dont-process ...... Do not generate any Makefiles.
- * -no-fast ........... Configure Qt normally by generating Makefiles for all
- project files.
- -fast .............. Configure Qt quickly by generating Makefiles only for
- library and subdirectory targets. All other Makefiles
- are created as wrappers, which will in turn run qmake.
-
-no-largefile ...... Disables large file support.
+ -largefile ......... Enables Qt to access files larger than 4 GB.
@@ -6375,43 +6353,6 @@ if [ "$CFG_PROCESS" != "no" ]; then
else
"$outpath/bin/qmake" "$relpath"
fi
-
- if [ "$OPT_FAST" = "yes" ]; then
- PART_ROOTS=
- for part in $CFG_BUILD_PARTS; do
- case "$part" in
- examples|tests) PART_ROOTS="$PART_ROOTS $part" ;;
- esac
- done
- if [ "x$PART_ROOTS" != "x" ]; then
- echo
- echo "Creating stub makefiles. Please wait..."
- QMAKE="$outpath/bin/qmake"
- [ "$CFG_DEBUG_RELEASE" = "no" ] && first_tgt="first_target: first" || first_tgt=
- (cd "$relpath" && find $PART_ROOTS -name '*.pro') | grep -v /testdata/ | while read p; do
- d=${p%/*}
- test -f "$outpath/$d/Makefile" && continue
- echo " for $relpath/$p"
-
- mkdir -p "$outpath/$d" || exit
- cat > "$outpath/$d/Makefile" <<EOF || exit
-# $outpath/$d/Makefile: generated by configure
-#
-# WARNING: This makefile will be replaced with a real makefile.
-# All changes made to this file will be lost.
-
-QMAKE = "$QMAKE"
-
-$first_tgt
-all clean install qmake first Makefile: FORCE
- \$(QMAKE) $QMAKE_SWITCHES "$relpath/$p"
- \$(MAKE) \$@
-FORCE:
-EOF
- done || exit
- echo "Done"
- fi
- fi
fi
#-------------------------------------------------------------------------------
diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0
index 8ce7ee4ee9..6d58c21133 100644
--- a/dist/changes-5.0.0
+++ b/dist/changes-5.0.0
@@ -11,6 +11,8 @@ information about a particular change.
* Source incompatible changes *
****************************************************************************
+- The Qt 3 support module and all related code was removed.
+
- QAtomicInt's and QAtomicPointer's non-atomic convenience methods
(i.e., operator=, operator int / operator T*, operator!, operator==,
operator!= and operator->) have been removed as they did implicit
@@ -282,23 +284,6 @@ information about a particular change.
- QIconEngineV2 was merged into QIconEngine
You might need to adjust your code if it used a QIconEngine.
-- 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.
- * load()/include() with a target namespace and infile()/$$fromfile() now start with
- an entirely pristine context.
- * 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_INSTALL_.../raw 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.
- * The -(no-)exception flags in configure have been removed. Qt modules are now compiled
- without exceptions by default, as they do not use them and can neither handle them
- properly. Qt Core still has exceptions enabled to correctly throw bad_alloc exceptions
- in our tool classes.
- Whether code should be compiled with exception support enabled or disabled can be
- controlled by a CONFIG += exceptions/exceptions_off setting in the .pro file.
-
- QTextCodecPlugin has been removed since it is no longer used. All text codecs
are now built into QtCore.
@@ -919,9 +904,66 @@ Qt for Windows CE
- Build System
- * Remove qttest_p4.prf file. From now on we should explicitly enable the
- things from it which we want. Autotest .pro files should stop using
- 'load(qttest_p4)' and start using 'CONFIG+=testcase' instead.
+ * Qt has been split into numerous repositories. Configure covers mostly only qtbase's options.
+ * Qt will now install CMake configuration files for all its libraries.
+
+- configure
+
+ * The Mac OS X -dwarf2 configure argument has been removed. DWARF2 is always
+ used on Mac OS X now.
+ * The following options have been added: (-no)-force-asserts, (-no)-strip, (-no)-gui &
+ (-no)-widgets, -device & -device-option, -archdatadir, -libexecdir & -qmldir,
+ and numerous changes relating to specific Qt features and dependencies.
+ * Configure will no longer call "qmake -recursive" by default, as the subsequent
+ build invokes qmake as needed. Use -fully-process to restore the old behavior.
+
+- qmake
+
+ * default_pre.prf is now evaluated per subproject & build pass, symmetrically
+ to default_post.prf.
+ * .qmake.conf files (.qmake.cache equivalent in source tree) are read now.
+ * Project-specific mkspecs/ and features/ directories are supported now.
+ QMAKEPATH and QMAKEFEATURES can be set in .qmake.{config,cache} to specifiy their
+ location, and qmake will find them in the project's top-level directory automatically.
+ * Mixing host and target subprojects is now supported. "default-host" makespec
+ was added; option(host_build) enables its use.
+ * QMAKE_MOC_OPTIONS variable is now available for passing additional parameters
+ to the moc.
+ * The CROSS_COMPILE variable and property can be used to parametrize the device
+ and mingw makespecs.
+ * QMAKE_RPATHLINKDIR (complementary to QMAKE_RPATHDIR) is now understood.
+ * The "aux" TEMPLATE was added. Does not work with vcproj and xcode output files.
+ * The properties QT_INSTALL_ARCHDATA, QT_INSTALL_LIBEXECS, QT_INSTALL_QML,
+ QMAKE_SPEC & QMAKE_XSPEC were added. QT_INSTALL_DEMOS is obsolete.
+ * The following functions have been added: $$sort_depends, $$resolve_depends,
+ $$enumerate_vars, $$reverse, $$val_escape, $$format_number, $$shadowed,
+ $$clean_path, $$system_path, $$shell_path, $$absolute_path, $$relative_path,
+ $$system_quote, $$shell_quote, cache, write_file, touch, mkpath & log.
+ defined can now query variables; $$cat and $$system support more splitting modes.
+ qtCompileTest (available from configure.prf) was added.
+ * Removed qttest_p4.prf. Use CONFIG+=testcase and other flags instead.
+ * QMAKE_SUBSTITUTES can now copy files verbatim.
+ * MSVC desktop builds now use -Zc:wchar_t.
+ * The following variables were added: QMAKESPEC, _QMAKE_CONF_ & _QMAKE_SUPER_CACHE_.
+ * QDBUSXML2CPP_{INTERFACES,ADAPTORS}_{HEADER,SOURCE}_FLAGS are now understood,
+ and DBUS_{INTERFACES,ADAPTORS} support file groups with individual flags now.
+ * QT_PRIVATE and PKGCONFIG_PRIVATE (analogous to LIBS_PRIVATE resp. PKGCONFIG) are now understood.
+ * INSTALLS entries now support copying with subdirectory (e.g., entry.base = $$dirname(PWD)).
+ * Defining QTPLUGIN in dynamically linked projects does not hurt any more.
+ * CONFIG+=import_plugins will now cause plugin imports for QTPLUGIN being auto-generated.
+ * Debug info generation can now be enabled also for release builds (CONFIG+=force_debug_info).
+ * The following CONFIG flags have been deprecated in favor of QT module entries:
+ qtestlib, qdbus, help, designer, uitools, qaxserver & qaxcontainer (the leading 'q'
+ was stripped from the affected modules).
+ * The IN_PWD alias for PWD was deprecated.
+ * QMAKE_{DIST,}CLEAN support normalized path separators now.
+ * CONFIG+=depend_includepath is on by default now. DEPENDPATH is unnecessary in most projects.
+ * Makespecs should be adjusted in the following ways:
+ * The QMAKE_INCDIR_QT, QMAKE_LIBDIR_QT, QMAKE_MOC, QMAKE_UIC, QMAKE_IDC, TEMPLATE & QT
+ variables should not be defined any more. Furthermore, QMAKE_LIBS_X11SM is obsolete.
+ * The qt, warn_on, release, & link_prl CONFIG flags should not be set any more.
+ * The QMAKE_PLATFORM & QMAKE_COMPILER variables should be defined now.
+ Several other variables should be defined by including files from mkspecs/common/.
- Assistant
@@ -932,6 +974,11 @@ Qt for Windows CE
- Linguist
+ * The integration with Mac OS' document handling was improved
+ * lupdate can now treat other .ts files as sources
+ * lupdate's CODECFORTR is deprecated and will be removed soon. All source code
+ written with Qt is expected to use UTF-8 encoding.
+
- rcc
@@ -944,20 +991,6 @@ Qt for Windows CE
- uic
-- uic3
-
-
-- qmake
-
-* QMAKE_MOC_OPTIONS variable is now available for passing additional parameters
- to the moc.
-
-
-- configure
-
- * The Mac OS X -dwarf2 configure argument has been removed. DWARF2 is always
- used on Mac OS X now.
-
- qtconfig
@@ -1006,6 +1039,10 @@ Qt for Windows CE
in the URL by themselves. Now, it will return "%25", like
QUrl::toEncoded().
+- QLibraryInfo
+
+ * location() always returns paths with normalized separators now.
+
- QVariant
* Definition of QVariant::UserType changed. Currently it is the same as
@@ -1037,3 +1074,48 @@ Qt for Windows CE
* The static function QMessageBox::question has changed the default argument
for buttons. Before the default was to have an Ok button. That is changed
to having a yes and a no button.
+
+- qmake & configure
+
+ * The project file parser has been rewritten from scratch. Invalid syntax will be
+ rejected more aggressively, and interpretation may have changed in some corner cases.
+ * 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.
+ * load()/include() with a target namespace and infile()/$$fromfile() now start with
+ an entirely pristine context.
+ * 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_INSTALL_.../raw and the sysroot as QT_SYSROOT.
+ The new QT_HOST_... properties can be used to refer to the Qt host tools.
+ -no-gcc-sysroot can be used for non-standard sysroot configurations.
+ * The QMAKE_MKSPECS property became unavailable at the command line. Query QT_HOST_DATA instead.
+ * The TEMPLATE_PREFIX variable is gone. Use contains(TEMPLATE, vc.*) instead.
+ * The "default" makespec symlink/directory is gone. Use qmake -query QMAKE_XSPEC instead.
+ * DEPENDPATH does not end up in VPATH any more. Some SOURCES may not be found any more.
+ * Several functions and built-in variables were modified to return normalized paths.
+ * The -(no-)exception flags in configure have been removed. Qt modules are now compiled
+ without exceptions by default, as they do not use them and can neither handle them
+ properly. Qt Core still has exceptions enabled to correctly throw bad_alloc exceptions
+ in our tool classes.
+ Whether code should be compiled with exception support enabled or disabled can be
+ controlled by a CONFIG += exceptions/exceptions_off setting in the .pro file.
+ * The -no/-stl configure options are gone. Qt always uses the STL now.
+ * The -no/-fast configure options are gone.
+ * The -prefix-install configure option is gone. Use -prefix, etc. instead.
+ * The -make option of the Windows configure was renamed to -make-tool.
+ -make now complements -no-make, like in the Unix version.
+ * The object_with_source CONFIG flag was removed. Use object_parallel_to_source instead.
+ * Support for universal binaries on Mac OS has been removed.
+ * The processor architecture handling changed significantly. This affects the -arch & -*-endian
+ configure options, the QT_ARCH qmake variable, and more.
+ * No "make_default" make targets will be generated any more. Use "make_first" instead.
+ * The "qmake" make targets are non-recursive now. Use "qmake_all" to recurse.
+ * load() with paths relative to the current project is not supported any more.
+ Use include() instead.
+ * Persistent qmake properties are not versioned any more. Also, the vendor changed to
+ "QtProject", so old settings are lost.
+ * Support for the Borland toolchain was removed. Numerous obsolete makespecs were culled.
+ * setcepaths.bat is gone. QMake-generated Makefiles are self-contained now.
+ * moc_dir, rcc_dir and some other tool variables are not defined in Qt's .pc files any more;
+ the generic host_bins is defined instead.
+
diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
index 159733e02e..19cdc2a26a 100644
--- a/mkspecs/features/qt_module.prf
+++ b/mkspecs/features/qt_module.prf
@@ -51,6 +51,10 @@ MODULE_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules-inst/qt_lib_$${MODULE}.pri
!build_pass {
# Create a module .pri file
+ unix:!static: \
+ module_rpath = "QT.$${MODULE}.rpath = $$[QT_INSTALL_LIBS/raw]"
+ else: \
+ module_rpath =
!isEmpty(QT_FOR_PRIVATE) {
contains(QT_FOR_PRIVATE, .*-private$):error("QT_FOR_PRIVATE may not contain *-private.")
module_privdep = "QT.$${MODULE}.private_depends = $$QT_FOR_PRIVATE"
@@ -82,10 +86,9 @@ MODULE_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules-inst/qt_lib_$${MODULE}.pri
"QT.$${MODULE}.bins = \$\$QT_MODULE_BIN_BASE" \
"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}.libexecs = \$\$QT_MODULE_LIBEXEC_BASE" \
- "QT.$${MODULE}.rpath = $$[QT_INSTALL_LIBS/raw]" \
+ $$module_rpath \
"QT.$${MODULE}.plugins = \$\$QT_MODULE_PLUGIN_BASE" \
"QT.$${MODULE}.imports = \$\$QT_MODULE_IMPORT_BASE" \
"QT.$${MODULE}.qml = \$\$QT_MODULE_QML_BASE" \
diff --git a/mkspecs/features/qt_module_fwdpri.prf b/mkspecs/features/qt_module_fwdpri.prf
index ce0b09d616..58b016803e 100644
--- a/mkspecs/features/qt_module_fwdpri.prf
+++ b/mkspecs/features/qt_module_fwdpri.prf
@@ -59,7 +59,6 @@
# Create a forwarding module .pri file
MODULE_FWD_PRI_CONT = \
- "QT_MODULE_BASE = $$MODULE_BASE_DIR" \
"QT_MODULE_BIN_BASE = $$MODULE_BASE_OUTDIR/bin" \
"QT_MODULE_INCLUDE_BASE = $$MODULE_BASE_OUTDIR/include" \
"QT_MODULE_IMPORT_BASE = $$MODULE_BASE_OUTDIR/imports" \
diff --git a/mkspecs/features/win32/thread.prf b/mkspecs/features/win32/thread.prf
deleted file mode 100644
index fc832a0990..0000000000
--- a/mkspecs/features/win32/thread.prf
+++ /dev/null
@@ -1,22 +0,0 @@
-CONFIG -= thread_off
-
-# #### These need to go
-debug {
- contains(DEFINES, QT_DLL) {
- QMAKE_CFLAGS += $$QMAKE_CFLAGS_MT_DLLDBG
- QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_MT_DLLDBG
- } else {
- QMAKE_CFLAGS += $$QMAKE_CFLAGS_MT_DBG
- QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_MT_DBG
- }
-} else {
- contains(DEFINES, QT_DLL) {
- QMAKE_CFLAGS += $$QMAKE_CFLAGS_MT_DLL
- QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_MT_DLL
- } else {
- QMAKE_CFLAGS += $$QMAKE_CFLAGS_MT
- QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_MT
- }
-}
-
-QMAKE_LIBS += $$QMAKE_LIBS_RTMT
diff --git a/mkspecs/features/win32/thread_off.prf b/mkspecs/features/win32/thread_off.prf
deleted file mode 100644
index 436a2c8166..0000000000
--- a/mkspecs/features/win32/thread_off.prf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG -= thread
-QMAKE_LIBS += $$QMAKE_LIBS_RT
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
index 4f0c3ba6bb..fc80662c46 100644
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
@@ -66,6 +66,7 @@ QXcbScreen::QXcbScreen(QXcbConnection *connection, xcb_screen_t *scr,
, m_orientation(Qt::PrimaryOrientation)
, m_number(number)
, m_refreshRate(60)
+ , m_forcedDpi(-1)
{
if (connection->hasXRandr())
xcb_randr_select_input(xcb_connection(), screen()->root, true);
@@ -82,6 +83,9 @@ QXcbScreen::QXcbScreen(QXcbConnection *connection, xcb_screen_t *scr,
if (m_availableGeometry.isEmpty())
m_availableGeometry = QRect(QPoint(), m_virtualSize);
+ readXResources();
+
+
#ifdef Q_XCB_DEBUG
qDebug();
qDebug("Screen output %s of xcb screen %d:", m_outputName.toUtf8().constData(), m_number);
@@ -243,6 +247,9 @@ QImage::Format QXcbScreen::format() const
QDpi QXcbScreen::logicalDpi() const
{
+ if (m_forcedDpi > 0)
+ return QDpi(m_forcedDpi, m_forcedDpi);
+
return QDpi(Q_MM_PER_INCH * m_virtualSize.width() / m_virtualSizeMillimeters.width(),
Q_MM_PER_INCH * m_virtualSize.height() / m_virtualSizeMillimeters.height());
}
@@ -474,4 +481,41 @@ QPixmap QXcbScreen::grabWindow(WId window, int x, int y, int width, int height)
return result;
}
+void QXcbScreen::readXResources()
+{
+ int offset = 0;
+ QByteArray resources;
+ while(1) {
+ xcb_get_property_reply_t *reply =
+ xcb_get_property_reply(xcb_connection(),
+ xcb_get_property_unchecked(xcb_connection(), false, screen()->root,
+ XCB_ATOM_RESOURCE_MANAGER,
+ XCB_ATOM_STRING, offset/4, 8192), NULL);
+ bool more = false;
+ if (reply && reply->format == 8 && reply->type == XCB_ATOM_STRING) {
+ resources += QByteArray((const char *)xcb_get_property_value(reply), xcb_get_property_value_length(reply));
+ offset += xcb_get_property_value_length(reply);
+ more = reply->bytes_after != 0;
+ }
+
+ if (reply)
+ free(reply);
+
+ if (!more)
+ break;
+ }
+
+ QList<QByteArray> split = resources.split('\n');
+ for (int i = 0; i < split.size(); ++i) {
+ const QByteArray &r = split.at(i);
+ if (r.startsWith("Xft.dpi:\t")) {
+ bool ok;
+ int dpi = r.mid(sizeof("Xft.dpi:")).toInt(&ok);
+ if (ok)
+ m_forcedDpi = dpi;
+ break;
+ }
+ }
+}
+
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/xcb/qxcbscreen.h b/src/plugins/platforms/xcb/qxcbscreen.h
index d9eee464dc..96d30cde8b 100644
--- a/src/plugins/platforms/xcb/qxcbscreen.h
+++ b/src/plugins/platforms/xcb/qxcbscreen.h
@@ -96,6 +96,7 @@ public:
void updateGeometry(xcb_timestamp_t timestamp);
void updateRefreshRate();
+ void readXResources();
private:
xcb_screen_t *m_screen;
xcb_randr_crtc_t m_crtc;
@@ -114,6 +115,7 @@ private:
QMap<xcb_visualid_t, xcb_visualtype_t> m_visuals;
QXcbCursor *m_cursor;
int m_refreshRate;
+ int m_forcedDpi;
};
QT_END_NAMESPACE
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index 88f7acfb5b..df0f82532e 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -210,7 +210,6 @@ Configure::Configure(int& argc, char** argv)
dictionary[ "BUILD_QMAKE" ] = "yes";
dictionary[ "VCPROJFILES" ] = "yes";
dictionary[ "QMAKE_INTERNAL" ] = "no";
- dictionary[ "FAST" ] = "no";
dictionary[ "PROCESS" ] = "partial";
dictionary[ "WIDGETS" ] = "yes";
dictionary[ "RTTI" ] = "yes";
@@ -802,11 +801,6 @@ void Configure::parseCmdLine()
dictionary[ "NATIVE_GESTURES" ] = "no";
#if !defined(EVAL)
// Others ---------------------------------------------------
- else if (configCmdLine.at(i) == "-fast")
- dictionary[ "FAST" ] = "yes";
- else if (configCmdLine.at(i) == "-no-fast")
- dictionary[ "FAST" ] = "no";
-
else if (configCmdLine.at(i) == "-widgets")
dictionary[ "WIDGETS" ] = "yes";
else if (configCmdLine.at(i) == "-no-widgets")
@@ -1649,11 +1643,6 @@ bool Configure::displayHelp()
desc("LTCG", "yes", "-ltcg", "Use Link Time Code Generation. (Release builds only)");
desc("LTCG", "no", "-no-ltcg", "Do not use Link Time Code Generation.\n");
- desc("FAST", "no", "-no-fast", "Configure Qt normally by generating Makefiles for all project files.");
- desc("FAST", "yes", "-fast", "Configure Qt quickly by generating Makefiles only for library and "
- "subdirectory targets. All other Makefiles are created as wrappers "
- "which will in turn run qmake.\n");
-
desc( "-make <part>", "Add part to the list of parts to be built at make time");
for (int i=0; i<defaultBuildParts.size(); ++i)
desc( "", qPrintable(QString(" %1").arg(defaultBuildParts.at(i))), false, ' ');
@@ -1790,7 +1779,7 @@ bool Configure::displayHelp()
desc("PROCESS", "partial", "-process", "Generate top-level Makefiles/Project files.");
desc("PROCESS", "full", "-fully-process", "Generate Makefiles/Project files for the entire Qt\ntree.");
- desc("PROCESS", "no", "-dont-process", "Do not generate Makefiles/Project files. This will override -no-fast if specified.\n");
+ desc("PROCESS", "no", "-dont-process", "Do not generate Makefiles/Project files.\n");
desc("RTTI", "no", "-no-rtti", "Do not compile runtime type information.");
desc("RTTI", "yes", "-rtti", "Compile runtime type information.");
@@ -3755,43 +3744,6 @@ void Configure::buildQmake()
}
#endif
-void Configure::findProjects(const QString& dirName)
-{
- if (dictionary[ "PROCESS" ] != "no") {
- QDir dir(dirName);
- QString entryName;
- int makeListNumber;
- ProjectType qmakeTemplate;
- const QFileInfoList &list = dir.entryInfoList(QStringList(QLatin1String("*.pro")),
- QDir::AllDirs | QDir::Files | QDir::NoDotAndDotDot);
- for (int i = 0; i < list.size(); ++i) {
- const QFileInfo &fi = list.at(i);
- if (fi.fileName() != "qmake.pro") {
- entryName = dirName + "/" + fi.fileName();
- if (fi.isDir()) {
- findProjects(entryName);
- } else {
- qmakeTemplate = projectType(fi.absoluteFilePath());
- switch (qmakeTemplate) {
- case Lib:
- case Subdirs:
- makeListNumber = 1;
- break;
- default:
- makeListNumber = 2;
- break;
- }
- makeList[makeListNumber].append(new MakeItem(sourceDir.relativeFilePath(fi.absolutePath()),
- fi.fileName(),
- "Makefile",
- qmakeTemplate));
- }
- }
-
- }
- }
-}
-
void Configure::appendMakeItem(int inList, const QString &item)
{
QString dir;
@@ -3813,9 +3765,8 @@ void Configure::generateMakefiles()
if (spec != "win32-msvc.net" && !spec.startsWith("win32-msvc2") && !spec.startsWith(QLatin1String("wince")))
dictionary[ "VCPROJFILES" ] = "no";
- int i = 0;
QString pwd = QDir::currentPath();
- if (dictionary["FAST"] != "yes") {
+ {
QString dirName;
bool generate = true;
bool doDsp = (dictionary["VCPROJFILES"] == "yes");
@@ -3848,51 +3799,6 @@ void Configure::generateMakefiles()
dictionary[ "DONE" ] = "error";
}
}
- } else {
- findProjects(sourcePath);
- for (i=0; i<3; i++) {
- for (int j=0; j<makeList[i].size(); ++j) {
- MakeItem *it=makeList[i][j];
- if (it->directory == "tools/configure")
- continue; // don't overwrite our own Makefile
-
- QString dirPath = it->directory + '/';
- QString projectName = it->proFile;
- QString makefileName = buildPath + "/" + dirPath + it->target;
-
- // For shadowbuilds, we need to create the path first
- QDir buildPathDir(buildPath);
- if (sourcePath != buildPath && !buildPathDir.exists(dirPath))
- buildPathDir.mkpath(dirPath);
-
- QStringList args;
-
- args << QDir::toNativeSeparators(buildPath + "/bin/qmake.exe");
- args << sourcePath + "/" + dirPath + projectName;
-
- cout << "For " << qPrintable(QDir::toNativeSeparators(dirPath + projectName)) << endl;
- args << "-o";
- args << it->target;
-
- QDir::setCurrent(dirPath);
-
- QFile file(makefileName);
- if (!file.open(QFile::WriteOnly | QFile::Text)) {
- printf("failed on dirPath=%s, makefile=%s\n",
- qPrintable(QDir::toNativeSeparators(dirPath)),
- qPrintable(QDir::toNativeSeparators(makefileName)));
- continue;
- }
- QTextStream txt(&file);
- txt << "all:\n";
- txt << "\t" << args.join(' ') << "\n";
- txt << "\t$(MAKE) -$(MAKEFLAGS) -f " << it->target << "\n";
- txt << "first: all\n";
- txt << "qmake: FORCE\n";
- txt << "\t" << args.join(' ') << "\n";
- txt << "FORCE:\n";
- }
- }
}
QDir::setCurrent(pwd);
} else {
diff --git a/tools/configure/configureapp.h b/tools/configure/configureapp.h
index dc79e3ff58..3f4987f689 100644
--- a/tools/configure/configureapp.h
+++ b/tools/configure/configureapp.h
@@ -85,7 +85,6 @@ public:
void generateSystemVars();
#endif
void showSummary();
- void findProjects( const QString& dirName );
QString firstLicensePath();
#if !defined(EVAL)