summaryrefslogtreecommitdiffstats
path: root/qmake/CMakeLists.txt
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2020-01-31 11:43:22 +0100
committerSimon Hausmann <simon.hausmann@qt.io>2020-02-03 15:01:53 +0000
commit4e7af2061e8c323b2a21f0549643a2cfab191664 (patch)
tree54c6046915aee4a91eb6178183c022b8e547d244 /qmake/CMakeLists.txt
parent6251963ecd26bfc480b2871e26b6df4d7ab88cee (diff)
parent3f386095adc6c280008c7e811e88f0215f1d862f (diff)
Merge remote-tracking branch 'origin/wip/cmake' into dev
This pulls the CMake port, which not only adds CMake files but also modifies existing code. A brief summary of "seemingly unrelated" changes: * configure.json was re-formatted to not use multi-line strings. That is an extension of the Qt JSON parser but not JSON compliant, which is needed for the configure.json-to-cmake conversion script (python). * Some moc inclusions were added due to CMake's slightly different way of handling moc. With the changes the files build with qmake and cmake. * Since CMake just grep's for the Q_OBJECT macro to determine whether to call moc (instead of doing pre-processing like qmake), the existing use of "Q_OBJECT" in our documentation was changed to \Q_OBJECT, which cmake doesn't see and which is now a qdoc macro. * QTestLib's qFindTestData was extended to also search in the source directory known at build time. What this change also brings is a new way of building modules in Coin by using YAML configuration files that describe the steps of building and testing in Coin specific terms. The platform configuration files in qt5 are instructed to use the old Coin built-in way of testing ("UseLegacyInstructions" feature) but for any configurations that do not have this, these yaml files in the coin/ sub-directory are used and shared across repositories. Change-Id: I1d832c3400e8d6945ad787024ba60e7440225c08
Diffstat (limited to 'qmake/CMakeLists.txt')
-rw-r--r--qmake/CMakeLists.txt217
1 files changed, 217 insertions, 0 deletions
diff --git a/qmake/CMakeLists.txt b/qmake/CMakeLists.txt
new file mode 100644
index 0000000000..ff50f507c5
--- /dev/null
+++ b/qmake/CMakeLists.txt
@@ -0,0 +1,217 @@
+# Generated from qmake.pro.
+
+#####################################################################
+## qmake Binary:
+#####################################################################
+
+qt_add_tool(qmake # special case
+ NO_QT # special case
+ TOOLS_TARGET Core # special case
+ # GUI # special case: remove this
+ SOURCES
+ ../src/corelib/codecs/qutfcodec.cpp ../src/corelib/codecs/qutfcodec_p.h
+ ../src/corelib/global/qendian.cpp # special case
+ ../src/corelib/global/qglobal.cpp ../src/corelib/global/qglobal.h
+ ../src/corelib/global/qlibraryinfo.cpp
+ ../src/corelib/global/qlogging.cpp
+ ../src/corelib/global/qmalloc.cpp
+ ../src/corelib/global/qnumeric.cpp ../src/corelib/global/qnumeric.h
+ ../src/corelib/global/qoperatingsystemversion.cpp # special case
+ ../src/corelib/global/qrandom.cpp # special case
+ ../src/corelib/io/qabstractfileengine.cpp ../src/corelib/io/qabstractfileengine_p.h
+ ../src/corelib/io/qbuffer.cpp ../src/corelib/io/qbuffer.h
+ ../src/corelib/io/qdebug.cpp # special case
+ ../src/corelib/io/qdir.cpp ../src/corelib/io/qdir.h ../src/corelib/io/qdir_p.h
+ ../src/corelib/io/qdiriterator.cpp ../src/corelib/io/qdiriterator.h
+ ../src/corelib/io/qfile.cpp ../src/corelib/io/qfile.h
+ ../src/corelib/io/qfiledevice.cpp
+ ../src/corelib/io/qfileinfo.cpp ../src/corelib/io/qfileinfo.h
+ ../src/corelib/io/qfilesystemengine.cpp
+ ../src/corelib/io/qfilesystementry.cpp
+ ../src/corelib/io/qfsfileengine.cpp
+ ../src/corelib/io/qfsfileengine_iterator.cpp
+ ../src/corelib/io/qiodevice.cpp ../src/corelib/io/qiodevice.h
+ ../src/corelib/io/qsettings.cpp
+ ../src/corelib/io/qtemporaryfile.cpp ../src/corelib/io/qtemporaryfile.h
+ ../src/corelib/kernel/qmetatype.cpp ../src/corelib/kernel/qmetatype.h
+ ../src/corelib/kernel/qsystemerror.cpp ../src/corelib/kernel/qsystemerror_p.h
+ ../src/corelib/kernel/qvariant.cpp
+ ../src/corelib/plugin/quuid.cpp ../src/corelib/plugin/quuid.h
+ ../src/corelib/serialization/qcborstreamwriter.cpp ../src/corelib/serialization/qcborstreamwriter.h
+ ../src/corelib/serialization/qcborvalue.cpp ../src/corelib/serialization/qcborvalue.h ../src/corelib/serialization/qcborvalue_p.h
+ ../src/corelib/serialization/qjson_p.h
+ ../src/corelib/serialization/qjsonarray.cpp ../src/corelib/serialization/qjsonarray.h
+ ../src/corelib/serialization/qjsoncbor.cpp
+ ../src/corelib/serialization/qjsondocument.cpp ../src/corelib/serialization/qjsondocument.h
+ ../src/corelib/serialization/qjsonobject.cpp ../src/corelib/serialization/qjsonobject.h
+ ../src/corelib/serialization/qjsonparser.cpp ../src/corelib/serialization/qjsonparser_p.h
+ ../src/corelib/serialization/qjsonvalue.cpp ../src/corelib/serialization/qjsonvalue.h
+ ../src/corelib/serialization/qjsonwriter_p.h
+ ../src/corelib/serialization/qtextstream.cpp ../src/corelib/serialization/qtextstream.h
+ ../src/corelib/serialization/qxmlstream.cpp ../src/corelib/serialization/qxmlstream.h
+ ../src/corelib/serialization/qxmlutils.cpp ../src/corelib/serialization/qxmlutils_p.h
+ ../src/corelib/tools/qarraydata.cpp ../src/corelib/tools/qarraydata.h
+ ../src/corelib/tools/qarraydataops.h
+ ../src/corelib/tools/qarraydatapointer.h
+ ../src/corelib/tools/qbitarray.cpp ../src/corelib/tools/qbitarray.h
+ ../src/corelib/text/qbytearray.cpp ../src/corelib/text/qbytearray.h
+ ../src/corelib/text/qbytearraylist.cpp ../src/corelib/text/qbytearraylist.h # special case
+ ../src/corelib/text/qbytearraymatcher.cpp ../src/corelib/text/qbytearraymatcher.h
+ ../src/corelib/text/qchar.h
+ ../src/corelib/tools/qcryptographichash.cpp ../src/corelib/tools/qcryptographichash.h
+ ../src/corelib/time/qcalendar.cpp ../src/corelib/time/qcalendar.h # special case
+ ../src/corelib/time/qcalendarbackend_p.h ../src/corelib/time/qcalendarmath_p.h # special case
+ ../src/corelib/time/qgregoriancalendar.cpp ../src/corelib/time/qgregoriancalendar_p.h # special case
+ ../src/corelib/time/qromancalendar.cpp ../src/corelib/time/qromancalendar_p.h # special case
+ ../src/corelib/time/qdatetime.cpp ../src/corelib/time/qdatetime.h ../src/corelib/time/qdatetime_p.h # special case
+ ../src/corelib/tools/qhash.cpp ../src/corelib/tools/qhash.h
+ ../src/corelib/tools/qlist.cpp ../src/corelib/tools/qlist.h
+ ../src/corelib/text/qlocale.cpp ../src/corelib/text/qlocale.h
+ ../src/corelib/text/qlocale_tools.cpp ../src/corelib/text/qlocale_tools_p.h
+ ../src/corelib/tools/qmap.cpp ../src/corelib/tools/qmap.h
+ ../src/corelib/text/qregexp.cpp ../src/corelib/text/qregexp.h
+ ../src/corelib/tools/qringbuffer.cpp # special case
+ ../src/corelib/text/qstring.cpp ../src/corelib/text/qstring.h
+ ../src/corelib/text/qstringlist.cpp ../src/corelib/text/qstringlist.h
+ ../src/corelib/text/qstringmatcher.h
+ ../src/corelib/tools/qvector.h
+ ../src/corelib/tools/qversionnumber.cpp ../src/corelib/tools/qversionnumber.h
+ ../src/corelib/text/qvsnprintf.cpp
+ cachekeys.h
+ generators/mac/pbuilder_pbx.cpp generators/mac/pbuilder_pbx.h
+ generators/makefile.cpp generators/makefile.h
+ generators/makefiledeps.cpp generators/makefiledeps.h
+ generators/metamakefile.cpp generators/metamakefile.h
+ generators/projectgenerator.cpp generators/projectgenerator.h
+ generators/unix/unixmake.cpp generators/unix/unixmake.h
+ generators/unix/unixmake2.cpp
+ generators/win32/mingw_make.cpp generators/win32/mingw_make.h
+ generators/win32/msbuild_objectmodel.cpp generators/win32/msbuild_objectmodel.h
+ generators/win32/msvc_nmake.cpp generators/win32/msvc_nmake.h
+ generators/win32/msvc_objectmodel.cpp generators/win32/msvc_objectmodel.h
+ generators/win32/msvc_vcproj.cpp generators/win32/msvc_vcproj.h
+ generators/win32/msvc_vcxproj.cpp generators/win32/msvc_vcxproj.h
+ generators/win32/winmakefile.cpp generators/win32/winmakefile.h
+ generators/xmloutput.cpp generators/xmloutput.h
+ library/ioutils.cpp library/ioutils.h
+ library/proitems.cpp library/proitems.h
+ library/qmake_global.h
+ library/qmakebuiltins.cpp
+ library/qmakeevaluator.cpp library/qmakeevaluator.h library/qmakeevaluator_p.h
+ library/qmakeglobals.cpp library/qmakeglobals.h
+ library/qmakeparser.cpp library/qmakeparser.h
+ library/qmakevfs.cpp library/qmakevfs.h
+ main.cpp
+ meta.cpp meta.h
+ option.cpp option.h
+ project.cpp project.h
+ property.cpp property.h
+ DEFINES
+ PROEVALUATOR_FULL
+ QT_BOOTSTRAPPED
+ QT_BUILD_QMAKE
+ QT_NO_FOREACH
+ QT_VERSION_STR="${PROJECT_VERSION}" # special case
+ QT_VERSION_MAJOR=${PROJECT_VERSION_MAJOR} # special case
+ QT_VERSION_MINOR=${PROJECT_VERSION_MINOR} # special case
+ QT_VERSION_PATCH=${PROJECT_VERSION_PATCH} # special case
+ INCLUDE_DIRECTORIES
+ # . # special case remove
+ generators
+ generators/mac
+ generators/unix
+ generators/win32
+ library
+ $<TARGET_PROPERTY:Qt::Core,INCLUDE_DIRECTORIES> # special case
+ "${PROJECT_BINARY_DIR}/src/corelib/global" # special case: for qconfig.cpp
+ PRECOMPILED_HEADER
+ "qmake_pch.h"
+)
+
+#### Keys ignored in scope 1:.:.:qmake.pro:<TRUE>:
+# _OPTION = "host_build"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmake CONDITION WIN32
+ SOURCES
+ ../src/corelib/global/qoperatingsystemversion_win.cpp
+ ../src/corelib/io/qfilesystemengine_win.cpp
+ ../src/corelib/io/qfilesystemiterator_win.cpp
+ ../src/corelib/io/qfsfileengine_win.cpp
+ ../src/corelib/io/qsettings_win.cpp
+ ../src/corelib/plugin/qsystemlibrary.cpp
+ ../src/corelib/text/qlocale_win.cpp # special case
+ library/registry.cpp # special case
+ DEFINES
+ UNICODE
+ _CRT_SECURE_NO_WARNINGS
+ _ENABLE_EXTENDED_ALIGNED_STORAGE
+ _SCL_SECURE_NO_WARNINGS
+ PUBLIC_LIBRARIES
+ advapi32
+ kernel32
+ netapi32
+ ole32
+)
+
+qt_extend_target(qmake CONDITION UNIX
+ SOURCES
+ ../src/corelib/io/qfilesystemengine_unix.cpp
+ ../src/corelib/io/qfilesystemiterator_unix.cpp
+ ../src/corelib/io/qfsfileengine_unix.cpp
+ ../src/corelib/kernel/qcore_unix.cpp
+ ../src/corelib/text/qlocale_unix.cpp
+)
+
+qt_extend_target(qmake CONDITION APPLE_OSX
+ SOURCES
+ ../src/corelib/kernel/qcore_foundation.mm # special case
+ ../src/corelib/kernel/qcore_mac.cpp # special case
+ ../src/corelib/global/qoperatingsystemversion_darwin.mm # special case
+ ../src/corelib/io/qsettings_mac.cpp # special case
+ PUBLIC_LIBRARIES
+ ${FWApplicationServices}
+ ${FWCoreServices}
+ ${FWFoundation}
+ COMPILE_OPTIONS
+ "-fconstant-cfstrings"
+)
+
+# special case big
+extend_target(qmake CONDITION WIN32
+ SOURCES
+ ../src/corelib/io/qfilesystemengine_win.cpp
+ ../src/corelib/io/qfilesystemiterator_win.cpp
+ ../src/corelib/io/qfsfileengine_win.cpp
+ ../src/corelib/text/qlocale_win.cpp
+ ../src/corelib/io/qsettings_win.cpp
+ # ../src/corelib/global/qoperatingsystemversion.cpp special case: remove this
+ ../src/corelib/plugin/qsystemlibrary.cpp
+ library/registry.cpp
+ DEFINES
+ UNICODE _ENABLE_EXTENDED_ALIGNED_STORAGE _CRT_SECURE_NO_WARNINGS _SCL_SECURE_NO_WARNINGS
+ LIBRARIES
+ ole32 advapi32 kernel32 netapi32
+)
+
+qt_extend_target(qmake CONDITION WIN32 AND mingw
+ PUBLIC_LIBRARIES
+ uuid
+)
+
+qt_extend_target(qmake CONDITION CLANG AND WIN32
+ COMPILE_OPTIONS
+ "-fms-compatibility-version=19.00.23506"
+ "-Wno-microsoft-enum-value"
+)
+
+# special case:
+set_target_properties(qmake PROPERTIES
+ AUTOMOC OFF
+ AUTORCC OFF
+ AUTOUIC OFF
+)
+
+qt_internal_add_link_flags_gc_sections(qmake PRIVATE) # special case