|
Boost-Build : |
From: Juergen Hunold (hunold_at_[hidden])
Date: 2006-01-23 15:49:06
Hi !
The attached file contains a patch for improved Qt4 support.
Features (maybe commit message )
1. Better qmake compatibility by adding the necessary defines for each
Qt library. E.g. qmake defines QT_CORE_LIB when generating makefiles
for a project using QtCore, QT_GUI_LIB for QtGui and so on.
2. Added support for QtTestLib, the Qt Test Framework ( Qt 4.1)
3. Added support for QtAssistantClient, Qt Integrated Help System
4. Better readability by adding explicit comments (# usage-requirements)
and having one line per setting).
5. Add support for "moc-and-include header" by
5a. duplication of the "moccable-cpp" hack for headers.
5b. copy&change of "moc-h-generator" to "moc-inc-generator"
5c. renaming of the "moc.cpp" action to "moc.inc" and rearringing
documentation.
Remarks:
1. This might be needed on NT for dllexport/dllimport statements. Qt
defines QT_BUILD_CORE_LIB when building QtCore and QT_CORE_LIB when
using it, so this asymmetrie might be relevant. I can't spent any time
on NT right now, sorry.
2. QtTest has some cool features for testing Qt itself. And can be used
with Boost.Build V2 test runner ;-)
3. Was simply missing. I'm working on QtDesigner but need some time for
getting it right.
4. For me, lines like "alias a : : : : <define>a ;" are extremely hard
to read. I just get confused by the lots of colons, must always count
them and remember where i am. This smells of write-only code ;-)
alias a
: #sources
: #requirements
: #default-build
: #usage-requierements
<define>a
;
is much more readable.
Btw. Why can I write
project
: usage-requirements
<define>a
;
and get an error when trying something like
alias a
: usage-requirements
<define>a
;
as a more verbose alternative.
5. Needed to compile Qt4 itself.
Drop me a note for a tarball and qt4.jam patch to compile Qt-4.1.0 and
4.1.1-snapshots with V2 on Linux. Work in (slow) progress.
These hacks using "cast" are ugly, but I don't have the time to work on
a more qmake like approach.
Yours,
Jürgen
-- * Dipl.-Math. Jürgen Hunold ! Ingenieurgesellschaft für * voice: ++49 511 262926 57 ! Verkehrs- und Eisenbahnwesen mbH * fax : ++49 511 262926 99 ! Lister StraÃe 15 * hunold_at_[hidden] ! www.ive-mbh.de
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk