summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* automatically add the module version headers to %classnamesOswald Buddenhagen2012-06-192-12/+2
| | | | | Change-Id: I7706a0d54e704320e9e1e480b387e46417739ccf Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* automatically add the version header to HEADERSOswald Buddenhagen2012-06-1913-24/+9
| | | | | Change-Id: I7c2e1d852ebdbc5cca7a3a31ab2b4c9ab9faffd9 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* factor out qt_module_headers.prfOswald Buddenhagen2012-06-192-3/+5
| | | | | | | this doesn't make too much sense as such, but the file will grow. Change-Id: Iceaecdc24f83b3dafb40c8d2f1b6cddafa2d70a1 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make sure that forwards for injected headers are not garbage-collectedOswald Buddenhagen2012-06-191-1/+16
| | | | | | | | | qmake-generated version headers don't exist yet at the time syncqt runs, so the forwarding headers would be deleted - just to be re-created a moment later, thus changing the timestamp for no good reason. Change-Id: I1b4c2f05f57c2315adf4b8dd726ea413ede1be5b Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* fix status output for generated headersOswald Buddenhagen2012-06-191-3/+9
| | | | | Change-Id: I92c250037eb1b1838998cddbaea6ca065153e86e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make headers.pri locality determination less convolutedOswald Buddenhagen2012-06-191-5/+1
| | | | | | | | | | the location is determined by syncqt rather precisely. no need to reverse-engineer config files. $$HEADERS_PRI doesn't seem used anywhere, so don't set it as a side effect. Change-Id: I54a63356c350c0ddae4c880bf374fcd127282429 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* generate fwd-pris in qt_module_config, not in syncqtOswald Buddenhagen2012-06-193-2/+69
| | | | | | | | the forwarding pri is loaded even if it was still created by syncqt, so a top-level qmake -r will still catch it even in the future. Change-Id: I2e4b556cd06eb88be9ee378662a2e6e1bff67ad7 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* bring statements into a somewhat logical orderOswald Buddenhagen2012-06-191-4/+4
| | | | | Change-Id: I7bfbcd414bd2c8ff82e210c075b88f1ca00d3b73 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove qt from CONFIG for non-artifact templatesOswald Buddenhagen2012-06-191-0/+2
| | | | | | | | | there is no point in adding Qt modules to SUBDIRS projects. as QT contains core and gui by default, the operations are relatively expensive, so skip them when they are unneeded. Change-Id: Ibe6447ff452e403cb040fabe245d248edbda0eaa Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* define have_target CONFIG flagOswald Buddenhagen2012-06-195-6/+8
| | | | | | | | | the check whether we are building a lib or an app (and thus have a target) is done by quite some feature files (and generally wrongly, as they do not account for the new aux target), so centralize it in default_post.prf. Change-Id: I868edbc4185be8a6c23ecd4a2c126024d73cdeb4 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* add possibility to install a module with no libraryOswald Buddenhagen2012-06-191-6/+8
| | | | | | | the declarative module is a fake, so there is no library to install. Change-Id: I0dcd39f3304e38adce9ea34e2268905525abd3d5 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make version fallback code saneOswald Buddenhagen2012-06-192-10/+2
| | | | | | | | the qt version is always set. otoh, we need to allow the module to override the own version. Change-Id: Ic3eb7dae59a5fb011cede09151553b652a0a1d78 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove some symbian cruftOswald Buddenhagen2012-06-193-14/+0
| | | | | | | | - Option::mmp_ext - references to dead QMAKE_INTERNAL_ET_PARSED_* variables Change-Id: I863605b23798cbca3f6c8ab5a154fd432f1f4dcc Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove last traces of js supportOswald Buddenhagen2012-06-193-28/+10
| | | | | | | | don't even complain about trying to use js-based feature files. we have been doing that for long enough. Change-Id: Ib58ec204322442c488e8d780989f26b1e32595ed Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove explicit RCC_DIR addition to INCLUDEPATHOswald Buddenhagen2012-06-192-4/+0
| | | | | | | | | | qrc_ files are generally not meant to be included, so there is not much point in doing this. qprintsupport was a notable exception - which broke on mac and thus needed a hack. just remove the qrc_ inclusion. Change-Id: If5115665f331a280869e800673bf7b81d3ab559a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qmake module path configurable separatelyOswald Buddenhagen2012-06-191-1/+4
| | | | | | | this is needed by webkit's creative directory layout. Change-Id: I2317162c11696d2820423d63563b10d3024a6cb6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* write forwarding pris to $outpath/mkspecs/modulesOswald Buddenhagen2012-06-193-15/+4
| | | | | | | | | | this makes qmake find them automatically now. consequently, also do not write QMAKE_EXTRA_MODULE_FORWARDS to .qmake.cache. still write the cache file, though, as otherwise a top-level cache would mess up the module root detection. Change-Id: I998b94fcc73ca3f8bf1af09a394ff8d40cf1fb76 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove useless variable assignmentOswald Buddenhagen2012-06-191-3/+0
| | | | | Change-Id: I3552305473cd0150d83c1e2a3c9fb0c4097244cc Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* rename QMAKE_SYNCQT_OUTDIR => MODULE_BASE_OUTDIROswald Buddenhagen2012-06-191-2/+2
| | | | | | | | | | | a variable name should not reflect the tool which uses it, but its purpose - especially, as the scope will be extended soon. this variable is used by webkit, which has a somewhat creative directory layout. Change-Id: Id3d3fad6ed9395cb967aeabc79e47a0ba17f5423 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make splitPathList() return an empty list for an empty stringOswald Buddenhagen2012-06-192-20/+10
| | | | | | | this makes the user code a bit cleaner Change-Id: I3713c73c5c19cf69341be65480917eda0b967b77 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qt_module_config.prf install the module pri fileOswald Buddenhagen2012-06-1915-19/+17
| | | | | | | | | absorb module.prf into qt_installs.prf, as that's where it belongs. add qt_install_module option and automatically set it in qt_module_config. make qt_installs use that option. Change-Id: I860616f3a29a456f7b88ddaffa09375400c8911e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qtAddLibrary() a noisy compat wrapper for qtAddModule()Oswald Buddenhagen2012-06-191-46/+10
| | | | | | | | it's used by people (in particular, qt creator), so it would be not nice to just delete it entirely. Change-Id: I6bd849d00ebfe3b9b126e01a6d1c6e7c6584d8ac Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* purge QMAKE_INCDIR_QT and QMAKE_LIBDIR_QTOswald Buddenhagen2012-06-1966-142/+4
| | | | | | | they are equivalent to QT_INSTALL_(HEADERS|LIBS)/get. Change-Id: Ic4b47f3ca7db55785b96f19020a2fa020a8d25bd Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* simplify code which determines how/where to create forwarding prisOswald Buddenhagen2012-06-191-29/+6
| | | | | | | | the qtbase install dir being a build dir is a necessary and sufficient condition for detecting a developer build. Change-Id: I3d98c789ac6fbe570980459edabb9a941bf1e5d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* move $QTDIR handling out of syncqtOswald Buddenhagen2012-06-192-8/+3
| | | | | | | | | instead, always pass -qtdir (which, btw, is a slight misnomer - it should be -qtdatadir) with the correct path. this centralizes the relevant logic in default_pre.prf. Change-Id: Icc788d3f3e5f7b68b444e63e181efdea3b4ef160 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* make use of $$[FOO/get] propertiesOswald Buddenhagen2012-06-196-52/+10
| | | | | | | | this cleans up a lot of hacks supporting the build of qt, including the last bits of $QTDIR. Change-Id: Id119886ed8097967dad6cf86ebd4e71d90c42841 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* introduce /get property variantsOswald Buddenhagen2012-06-197-14/+89
| | | | | | | | | | | | | | | properties are now split into a write location $$[FOO] and a read location $$[FOO/get]. the write locations are hard-coded and configurable via qt.conf/Paths as before, while the read locations are configured via qt.conf/EffectivePaths. this finally provides a clean solution to the problem that during the qt build itself tools and libraries need to be taken from somewhere else than they are installed to. Change-Id: I956c43bd082afd465e690fe75d0bee3c2c0f7c25 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* purge unused VcprojGenerator::findTemplate()Oswald Buddenhagen2012-06-192-17/+0
| | | | | | it looked fishy for years. now i know why. ;) Change-Id: I822cadecaf8d914f383f9f907b92507852e434b4
* don't generate make_default targetsOswald Buddenhagen2012-06-191-5/+3
| | | | | | | | | | | | make_first really means the same, as the default target is 'first' which immediately invokes make_first. as a nice side effect, this fixes ALL_DEPS not being used by the subdirs template's default target - make_default wasn't special-cased in the right place, while make_first is. Change-Id: I946cea3b2dae198eda61d31dbd19c6ccd15deac7 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$reverse() functionOswald Buddenhagen2012-06-192-1/+15
| | | | | | | | | returns the list with the order of the elements reversed. one can easily implement this with existing functions, but this is way faster and more readable. Change-Id: I12d306eb9fe58fc332622274ea6b658192529491 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* add $$shell_quote() functionOswald Buddenhagen2012-06-192-1/+79
| | | | | | | | to be used in system() calls and when assembling EXTRA_COMPILER and INSTALLS .commands by hand. Change-Id: Id706cd56aa267a9fb4b14e3416692b4716fafa5b Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$absolute_path() and $$relative_path()Oswald Buddenhagen2012-06-192-1/+24
| | | | | | | just exposes QDir::fooFilePath() wrapped into QDir::cleanPath() Change-Id: I7a7644084825fd8092a9910ac20f695c4d9351f6 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$native_path() functionOswald Buddenhagen2012-06-192-1/+11
| | | | | | | more or less QDir::toNativeSeparators(QDir::cleanPath()) Change-Id: I52deee1e8086559eda5833b387a0cf64d21cbcd9 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$clean_path() functionOswald Buddenhagen2012-06-192-1/+11
| | | | | | | just QDir::cleanPath() Change-Id: I2d51e2385939d8926c00f296537ab7f6757d9a79 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$format_number() functionOswald Buddenhagen2012-06-192-1/+89
| | | | | Change-Id: I04266c1f5fb72af94073f3f508cee59085e365b6 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$shadowed() functionOswald Buddenhagen2012-06-196-2/+43
| | | | | | | | | return the build directory corresponding to a given source directory. this is the identity function if not shadow-building. if input lies outside the source directory, return empty value. Change-Id: I2d2a6b1112bd19989fe29cfe19a12d39a0d208c1 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$val_escape() functionOswald Buddenhagen2012-06-192-1/+22
| | | | | | | | this quotes the elements of a variable in a way suitable for re-parsing as qmake code. Change-Id: I0e6ea2478c43b5aeff45f485a48ac8c86705dd4a Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add $$enumerate_vars() functionOswald Buddenhagen2012-06-191-1/+5
| | | | | | | this simply returns the keys of all variables in the context. Change-Id: I0092f827744fcd257dfb9e7ca664c87c6f1cc763 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make defined() support testing definedness of variablesOswald Buddenhagen2012-06-191-0/+2
| | | | | Change-Id: I58d2dd402d72ee5a19012a6b5a4ba111717d40cc Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add mkpath() functionOswald Buddenhagen2012-06-192-1/+19
| | | | | Change-Id: I8809b9ee4e85fbe8cec95641d659f237c5f51a26 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add log() functionOswald Buddenhagen2012-06-191-6/+13
| | | | | | | this is a literal print to stderr. Change-Id: Ib0a2f53373ebbc4e0bda07a38d656bce145b31cf Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add touch() functionOswald Buddenhagen2012-06-191-1/+74
| | | | | | | | | this is equivalent to unix "touch --no-create --reference <ref> <file>". QFile has no setLastModified() (even though QFileInfo has lastModified()), so the implementation is low-level. Change-Id: I6783e8f2613e168ad0c24e79e7384d5b2e4901ee Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add write_file() functionOswald Buddenhagen2012-06-192-2/+53
| | | | | | | | | this dumps the contents of a variable into a file. each element of the variable is considered a line; line terminators are added. all missing directories are automatically created. Change-Id: Idafeb873cea64e6705c894b3ab0ef21df69e7170 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add cache() functionOswald Buddenhagen2012-06-191-3/+222
| | | | | | | | | | | this function adds the current contents of the named variable to the cache. this comprises populating base_vars and appending an assignment to .qmake.cache. if no cache file exists yet, it will be created in the current output directory (and inherited by subdirs projects). if called without a variable name, only create the cache file if missing. Change-Id: I1e81c2238aa6a5817a6ebbfb022e2b995c349363 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* add "blob" and "lines" modes to $$cat() and $$system()Oswald Buddenhagen2012-06-191-25/+63
| | | | | | | this bypasses the otherwise done insane word splitting Change-Id: Ia9b8980bc0770de3999544a06d239f55fb34f801 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* rewrite fixPaths()Oswald Buddenhagen2012-06-191-41/+12
| | | | | | | | | now the phonon paths are actually normalized. just relying on File::Spec for the path relativization, so the code is much shorter. Change-Id: I69d6bac73e366ed0f754e1282a375871ce5559c4 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* remove dead variableOswald Buddenhagen2012-06-191-1/+0
| | | | | Change-Id: Ic37c2a0da6346f044df10c7d8b5ee1a95efcc29c Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* don't use abs_path on input argumentsOswald Buddenhagen2012-06-191-7/+5
| | | | | | | | | for one, the input paths are already absolute. second, if a path does not exists, abs_path will fail, which makes the fallback code which tries to create them rather pointless. Change-Id: Ie56ff09313e48e82e8bc8e8f06eca384644de464 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* move moc, rcc and uic CONFIG additions to the respective qt modulesOswald Buddenhagen2012-06-198-7/+6
| | | | | | | they don't belong into the global scope Change-Id: I27a3de5f706392b3c4a84035521bc3b4e4055740 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove last traces of qbase.pri, qt_targets.pri and qt_installs.priOswald Buddenhagen2012-06-195-6/+1
| | | | | | | qt_module_config.prf, qt_targets.prf and qt_installs.prf replace them Change-Id: I6fc670ce8540dbd9ddaec1632d486e43a7ebf14b Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>