now we may get files with several mentions of the same lib/include dirs
on the same line, but that's essentially a non-issue.
Task-number: QTBUG-28336
Change-Id: I8204086420b82015f62090ae0a56908ce0cccee8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
this seems more generic, and allows for more substitutions inside the
generated files.
Change-Id: I7a2e37036f9f9f7dbf7f28f0976ef427dd28ee82
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
the "export location" of the linguist tools was just bogus, and lconvert
was missing anyway. the two dbus tools and qdoc were missing, too.
generally, it seems useless to report the paths of some random tools -
instead, just report the install location of the host binaries and let
users figure out the complete paths themselves - this should be ok, as
we decided that distributors are not supposed to do tool renaming any
more.
for the binary path just use the final location, as the files won't be
used before installation anyway. this allows us removing the scary
generic prefix replace from the pc file installs.
and as a side effect this also fixes debug_and_release builds of core
and widgets by not loading various prf files prematurely and thereby
messing up the dir replacement magic.
Task-number: QTBUG-28286
Change-Id: I99de419301fc07fb923959db4bd5cab9072d1c31
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
in particular for the meta Makefiles of debug_and_release.
the logic is as follows:
- the meta targets ('html_docs' in prepare_docs mode, and 'docs' always)
need to branch out asap, so they are implemented non-recursively in
every makefile.
- all other targets need to be fully recursive. the meta Makefile will
recurse only into one of debug or release, depending on the configure
option (it doesn't matter anyway).
Change-Id: I4e3f714cdda9c3a1021743148b5ee73379e3484d
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
there is no reason why something should break out of the system.
Change-Id: I081bffc0927b43ac4940d0200e32e1e60f6f2e97
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
complementary to QMAKE_RPATHDIR. this avoids that we need to sprinkle
linux/gcc specific code all over the place.
Task-number: QTBUG-27427
Change-Id: Iebafd1749d1a0d803704902473df8c743f074ddc
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
all modules have been migrated to auto-generation
Change-Id: Ie7b3ebfd735a22f8e0b0339909b6385508d7a6b3
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
turns out that some modules need a lot of work, so make it opt-in for
the time being.
Change-Id: I16365e3d96adab98a1bc748907dbd67488dfad5f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
instead of letting *every* qmake-based project have recursive check target,
let interested projects "subscribe" to it by adding CONFIG+=testcase_targets
in a central place (.qmake.conf, which Qt itself does via qt_build_config.prf).
Change-Id: Ib13fdd2d3a1adee0c5ad02b6b176a664c583bf9d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Add a 'd' to debug builds to allow both release and debug builds
to be used.
- Add .def-files for Debug
- Build all libraries debug/release
- Add description to README.qt
- Differentiate debug/release in qmake.conf.
Task-number: QTBUG-28196
Change-Id: Ib3081004a6ed2ad71d353244154684d2e0ebbc86
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
QAxServer projects must not link qtmain.lib.
This awful hack was adapted from the old qaxserver.prf
Change-Id: I78b4cbf6714bfbd88341449b9230f1989cff8a6f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
we directly expand $$TARGET on the same line, so just do the same with
$$VERSION
Change-Id: I3601bfcc835b13f63dce43d00cfe8d34ded60b21
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
we are assigning QT.*.VERSION from VERSION a moment earlier
Change-Id: Ie4d51f8835b8050755bc399a1a597967c8e3e499
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
it's confusing for the users if the examples' project files contain code
to install their own sources. also, this constitutes an enormous code
duplication, and lots of mistakes. consequently, automate it.
more or less as a side effect, this also removes the entirely meaningless
target installs in subdirs projects.
Task-number: QTBUG-28184
Change-Id: I9fc1367a06db9e2c46aeb67d68729a4f67163ef9
Reviewed-by: hjk <qthjk@ovi.com>
instead of letting *every* qmake-based project have recursive docs targets,
let qt modules "subscribe" to it explicitly by having load(qt_build_config)
in their .qmake.conf (which they already do).
Change-Id: I97b74591fd0c4bd5f8b08c5f550df9c7eef2f556
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
User applications are those that users run directly, whether it be for
development or not. The executable binaries that the user does not
usually run but is still required for proper functioning are called
"program executables" in Autoconf and they are placed in libexec.
This commit adds support for "program executables" in Qt by adding the
-libexecdir option to the configures, the qmake variable
QT_INSTALL_LIBEXECS (note the plural, to match all other properties),
and QLibraryInfo::LibraryExecutables.
At the time of this commit, the only expected "program executable" is
the QtWebProcess, the WebKit2 helper process from QtWebKit.
Change-Id: I66c3a3e0cf7f9d93b5f88f55f18e957faff608fc
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
- the old docs target becomes html_docs
- a new qch_docs target is added. the .qch files end up directly in
QT_INSTALL_DOCS, wihout any subdirectories in between
- the new docs target invokes html_docs and qch_docs
- respective un-/install targets are added as well. note that the
install targets don't depend on the build targets, as it's virtually
impossible to get the dependencies right throughout the hierarchy.
Change-Id: I07a2589db8252371e77cf925c47c4e59fbd1b2ca
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
On QNX e.g. you'll end up with a Qt configured without pkg-config support
by default. Once you try to compile e.g. QtWebKit which contains a check
like packagesExist(libudev) the system pkg-config (see default branch
of pkgConfigExecutable) will be called without any special config sysroot
or libdir. Thus libudev will be found in your system host, even though
it is not available for the cross compile target. This leads to compile
errors as described in https://bugs.webkit.org/show_bug.cgi?id=98032 .
Change-Id: If1474cb3b3f3b71fad7269e4aedd4e10f70a9b2a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Added prepare_docs to qt_build_config.prf (it was added
directly in configure in the source branch)
Conflicts:
configure
tools/configure/configureapp.cpp
Change-Id: I1337c69fc62b1c934e3e39b4409e4857440c9db8
This commits adds a -qmldir configuration option for the configures to
allow the user to change the default location (it defaults to
$archdatadir/qml).
It adds a QLibraryInfo::Qml2ImportsPath value for
QLibraryInfo::location, a qmake property of QT_INSTALL_QML and a qt.conf
configure location entry "Qml2Imports".
At the same time, it makes the qmake .prf files dealing with QML plugins
be the QML 2 version. Those files are new in Qt 5, so we have the option
to choose which version we want to use.
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-October/007136.html
Change-Id: I8c1c53e8685a5934ed0a9a42ba5663297b81a677
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
as a "side effect", this fixes the build of bootstrapped tools when
doing a debug build under msvc: qt.prf would add CONFIG+=release after
default_post.prf already loaded debug.prf.
Change-Id: Idd17cf28d358950fd90bb18ca7a8d67e06953bc1
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
This ensures that for example the platform plugins get properly
re-linked when the static platform-support lib changes.
Change-Id: Iad493d4de30d6f6977f80aa56d0b27d05e9e3770
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Change-Id: I3b277316b1befbb57613b465fc5bbedc6b2305f7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
the fallback path wouldn't account for a sysroot. as there is no clean
way to implement that, rather remove the fallback alltogether and make
the rpath a mandatory part of modules.
Change-Id: I6f2bd6e36889be2f61e17a579174380aa3c6622d
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Making a properly installed libQtBootstrap simplifies
our tools build process a little and in addition allows
other comand line tools to use the bootstrap lib and
link against it.
Initial-version-by: Lars Knoll
Change-Id: Iddf4568a5505bc24898ec1abf7e7022e19f0a454
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
the respective flags/defines need to be prefixed with a minus sign.
Change-Id: I8a3a46254f90d4ecdbd692a0eca635038691d078
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
this makes it possible to configure with -nomake tests, but have, e.g.,
QTSVG_BUILD_PARTS="libs tools examples tests" to enable tests
specifically in the svg module.
Change-Id: I925ab955ac32ec3e311c2a852a51b098fd4e0ea3
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
qmake automatically appends the library's major version number to the
DLL file name on Windows, as DLL naming doesn't include the version
number on a suffix like on Unix systems.
This flag makes it so qmake skips adding. This will allow us to insert
Qt's major version number at a different position.
Change-Id: I25d471038841fb0c5a34ef6b3bd6266aa33cebd1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
otherwise we may remove a user-provided setting.
Change-Id: If3217a3d92938fe2f3ac3740a645d3ace0ce9ab0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
it's basically an attribute of qtcore (and everything that depends on it).
Change-Id: I6eeefeb5df70764399d9f22dca9dbec1843b8d68
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
we now have qt_build_config.prf which can contain static code.
Change-Id: I3f0ae142fdc5ffb4e1d25e628e809ba15b5f0ac4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
the function is automatically performed by debug_and_release.prf,
regardless what we do with this flag.
Change-Id: Iddec69b35e0e905fdf4133ee240af37d3a8ada0b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>