summaryrefslogtreecommitdiffstats
path: root/qmake/CMakeLists.txt
blob: dc4c88f2a5f1035b32cc80b9c286d86252de12e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
install(DIRECTORY "${PROJECT_SOURCE_DIR}/mkspecs" DESTINATION ${INSTALL_DATADIR})

find_library(FWApplicationServices ApplicationServices)
find_library(FWCoreServices CoreServices)
find_library(FWFoundation Foundation)

add_qt_tool(qmake
    SOURCES
        meta.cpp
        option.cpp
        project.cpp
        property.cpp
        library/ioutils.cpp
        library/proitems.cpp
        library/qmakebuiltins.cpp
        library/qmakeevaluator.cpp
        library/qmakeglobals.cpp
        library/qmakeparser.cpp
        library/qmakevfs.cpp
        generators/mac/pbuilder_pbx.cpp
        generators/makefile.cpp
        generators/makefiledeps.cpp
        generators/metamakefile.cpp
        generators/projectgenerator.cpp
        generators/unix/unixmake2.cpp
        generators/unix/unixmake.cpp
        generators/win32/mingw_make.cpp
        generators/win32/msbuild_objectmodel.cpp
        generators/win32/msvc_nmake.cpp
        generators/win32/msvc_objectmodel.cpp
        generators/win32/msvc_vcproj.cpp
        generators/win32/msvc_vcxproj.cpp
        generators/win32/winmakefile.cpp
        generators/xmloutput.cpp

        ${PROJECT_SOURCE_DIR}/src/corelib/codecs/qtextcodec.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/codecs/qutfcodec.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qendian.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qglobal.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qlibraryinfo.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qlogging.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qmalloc.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qnumeric.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qoperatingsystemversion.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qrandom.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qabstractfileengine.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qbuffer.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qdebug.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qdir.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qdiriterator.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfile.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfiledevice.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfileinfo.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystemengine.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystementry.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfsfileengine.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfsfileengine_iterator.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qiodevice.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qsettings.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qtemporaryfile.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qmetatype.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qsystemerror.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qvariant.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/plugin/quuid.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qdatastream.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjsonarray.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjson.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjsondocument.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjsonobject.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjsonparser.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qjsonvalue.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qtextstream.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qxmlstream.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/serialization/qxmlutils.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qarraydata.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qbitarray.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qbytearray.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qbytearraymatcher.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qcryptographichash.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qdatetime.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qhash.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlinkedlist.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlist.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlocale.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlocale_tools.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qmap.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qregexp.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qringbuffer.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qstringbuilder.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qstring_compat.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qstring.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qstringlist.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qversionnumber.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qvsnprintf.cpp

        main.cpp
    DEFINES
        QT_VERSION_STR="${PROJECT_VERSION}"
        QT_VERSION_MAJOR=${PROJECT_VERSION_MAJOR}
        QT_VERSION_MINOR=${PROJECT_VERSION_MINOR}
        QT_VERSION_PATCH=${PROJECT_VERSION_PATCH}
        QT_BUILD_QMAKE QT_BOOTSTRAPPED PROEVALUATOR_FULL
        QT_NO_FOREACH
    INCLUDE_DIRECTORIES
        library
        generators
        generators/unix
        generators/win32
        generators/mac

        ${PROJECT_BINARY_DIR}/include
        ${PROJECT_BINARY_DIR}/include/QtCore
        ${PROJECT_BINARY_DIR}/include/QtCore/${PROJECT_VERSION}
        ${PROJECT_BINARY_DIR}/include/QtCore/${PROJECT_VERSION}/QtCore
        ${PROJECT_BINARY_DIR}/src/corelib/global
)

extend_target(qmake CONDITION UNIX
    SOURCES
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qcore_unix.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystemengine_unix.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystemiterator_unix.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfsfileengine_unix.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlocale_unix.cpp
)

extend_target(qmake CONDITION APPLE_OSX
    SOURCES
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qcore_foundation.mm
        ${PROJECT_SOURCE_DIR}/src/corelib/kernel/qcore_mac.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qoperatingsystemversion_darwin.mm
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qsettings_mac.cpp
    LIBRARIES
        ${FWApplicationServices} ${FWCoreServices} ${FWFoundation}
)
# TODO: Windows support, cf. qmake.pro
extend_target(qmake CONDITION WIN32
    SOURCES
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystemengine_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfilesystemiterator_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qfsfileengine_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/tools/qlocale_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/global/qoperatingsystemversion_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/io/qsettings_win.cpp
        ${PROJECT_SOURCE_DIR}/src/corelib/plugin/qsystemlibrary.cpp
        generators/win32/registry.cpp
    DEFINES
        UNICODE _ENABLE_EXTENDED_ALIGNED_STORAGE _CRT_SECURE_NO_WARNINGS _SCL_SECURE_NO_WARNINGS
    LIBRARIES
        ole32 advapi32 kernel32 netapi32
)

set_target_properties(qmake PROPERTIES
    AUTOMOC OFF
    AUTORCC OFF
    AUTOUIC OFF
)