169a40d511
this moves us another step towards the "outer" configure doing just minimal bootstrapping of qmake. a challenge here was that so far, qmake itself needed qconfig.cpp. this was replaced by usage of a qt.conf file instead of compiled-in values. however, to make the executable still self-contained, that qt.conf is embedded into it (by simple appending of a fixed signature and the text file). the qmake with the embedded qt.conf is not used for the qt build itself, which instead relies on the qt.conf in bin/ as before. however, due to the missing built-in values, this file now needs to contain more information than before. but except for a minimal version that is needed to start up qmake/configure at all, that file is now also generated with qmake. as some of the newly set up properties are subsequently used by configure itself, qmake gains a (deliberately undocumented) function to reload the qt.conf after it's fully populated. unlike the old implementations, this one doesn't emit redundant qt.conf entries which match the hard-coded fallbacks. omitting them leads to leaner files which are more comprehensible. Started-by: Paolo Angelelli <paolo.angelelli@qt.io> Change-Id: I4526ef64b3c89d9851e10f83965fe479ed7f39f6 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
30 lines
836 B
INI
30 lines
836 B
INI
option(host_build)
|
|
TEMPLATE = aux
|
|
|
|
# qmake documentation
|
|
QMAKE_DOCS = $$PWD/doc/qmake.qdocconf
|
|
|
|
# qmake binary
|
|
win32: EXTENSION = .exe
|
|
|
|
!build_pass {
|
|
qmake_exe.target = $$OUT_PWD/qmake$$EXTENSION
|
|
qmake_exe.depends = ../bin/qmake$$EXTENSION builtin-qt.conf
|
|
equals(QMAKE_DIR_SEP, /): \
|
|
qmake_exe.commands = cat ../bin/qmake$$EXTENSION builtin-qt.conf > qmake$$EXTENSION && chmod +x qmake$$EXTENSION
|
|
else: \
|
|
qmake_exe.commands = copy /B ..\bin\qmake$$EXTENSION + builtin-qt.conf qmake$$EXTENSION
|
|
QMAKE_EXTRA_TARGETS += qmake_exe
|
|
|
|
QMAKE_CLEAN += builtin-qt.conf
|
|
QMAKE_DISTCLEAN += qmake$$EXTENSION
|
|
|
|
first.depends += qmake_exe
|
|
QMAKE_EXTRA_TARGETS += first
|
|
}
|
|
|
|
qmake.path = $$[QT_HOST_BINS]
|
|
qmake.files = $$OUT_PWD/qmake$$EXTENSION
|
|
qmake.CONFIG = no_check_exist executable
|
|
INSTALLS += qmake
|