1#####################################################################
2# Main projectfile
3#####################################################################
4
5load(qt_parts)
6
7SUBDIRS += qmake/qmake-aux.pro doc
8
9cross_compile: CONFIG += nostrip
10
11confclean.depends += distclean
12confclean.commands = echo The confclean target is obsolete. Please use distclean instead.
13QMAKE_EXTRA_TARGETS += confclean
14
15qmake-clean.commands += (cd qmake && $(MAKE) clean)
16QMAKE_EXTRA_TARGETS += qmake-clean
17CLEAN_DEPS += qmake-clean
18
19# We don't distclean qmake, as it may be needed for rebuilding Makefiles as a
20# recursive distclean proceeds, including beyond qtbase.
21DISTCLEAN_DEPS += qmake-clean
22
23# Files created by configure.
24# config.status (and configure.cache, which is the same for Windows)
25# are omitted for convenience of rebuilds.
26QMAKE_DISTCLEAN += \
27    config.summary \
28    config.tests/.qmake.cache \
29    mkspecs/qconfig.pri \
30    mkspecs/qdevice.pri \
31    mkspecs/qmodule.pri \
32    src/corelib/global/qconfig.h \
33    src/corelib/global/qconfig_p.h \
34    src/corelib/global/qconfig.cpp \
35    bin/qt.conf
36
37CONFIG -= qt
38
39### installations ####
40
41#licheck
42licheck.path = $$[QT_HOST_BINS]
43licheck.files = $$PWD/bin/$$QT_LICHECK
44!isEmpty(QT_LICHECK): INSTALLS += licheck
45
46#fixqt4headers.pl
47fixqt4headers.path = $$[QT_HOST_BINS]
48fixqt4headers.files = $$PWD/bin/fixqt4headers.pl
49INSTALLS += fixqt4headers
50
51#syncqt
52syncqt.path = $$[QT_HOST_BINS]
53syncqt.files = $$PWD/bin/syncqt.pl
54INSTALLS += syncqt
55
56# If we are doing a prefix build, create a "module" pri which enables
57# qtPrepareTool() to find the non-installed syncqt.
58prefix_build|!equals(PWD, $$OUT_PWD) {
59
60    cmd = perl -w $$system_path($$PWD/bin/syncqt.pl)
61
62    TOOL_PRI = $$OUT_PWD/mkspecs/modules/qt_tool_syncqt.pri
63
64    TOOL_PRI_CONT = "QT_TOOL.syncqt.binary = $$val_escape(cmd)"
65    write_file($$TOOL_PRI, TOOL_PRI_CONT)|error("Aborting.")
66
67    # Then, inject the new tool into the current cache state
68    !contains(QMAKE_INTERNAL_INCLUDED_FILES, $$TOOL_PRI) { # before the actual include()!
69        added = $$TOOL_PRI
70        cache(QMAKE_INTERNAL_INCLUDED_FILES, add transient, added)
71    }
72    include($$TOOL_PRI)
73    cache(QT_TOOL.syncqt.binary, transient)
74
75}
76
77#mkspecs
78mkspecs.path = $$[QT_HOST_DATA]/mkspecs
79mkspecs.files = \
80    $$OUT_PWD/mkspecs/qconfig.pri $$OUT_PWD/mkspecs/qmodule.pri \
81    $$OUT_PWD/mkspecs/qdevice.pri \
82    $$files($$PWD/mkspecs/*)
83mkspecs.files -= $$PWD/mkspecs/modules $$PWD/mkspecs/modules-inst
84INSTALLS += mkspecs
85
86OTHER_FILES += \
87    configure \
88    header.BSD \
89    header.FDL \
90    header.LGPL \
91    header.LGPL-ONLY \
92    sync.profile
93