CMakeLists.txt
110 lines
| 3.4 KiB
| text/plain
|
TextLexer
/ src / CMakeLists.txt
Orochimarufan
|
r205 | project(PythonQt_Core) | ||
cmake_minimum_required(VERSION 2.8.10) | ||||
#----------------------------------------------------------------------------- | ||||
# Sources | ||||
set(SOURCES | ||||
PythonQtClassInfo.cpp | ||||
PythonQtClassWrapper.cpp | ||||
PythonQtConversion.cpp | ||||
PythonQt.cpp | ||||
PythonQtImporter.cpp | ||||
PythonQtInstanceWrapper.cpp | ||||
PythonQtMethodInfo.cpp | ||||
PythonQtMisc.cpp | ||||
PythonQtObjectPtr.cpp | ||||
PythonQtQFileImporter.cpp | ||||
PythonQtSignalReceiver.cpp | ||||
PythonQtSlot.cpp | ||||
PythonQtSignal.cpp | ||||
PythonQtStdDecorators.cpp | ||||
PythonQtStdIn.cpp | ||||
PythonQtStdOut.cpp | ||||
gui/PythonQtScriptingConsole.cpp | ||||
../generated_cpp${generated_cpp_suffix}/PythonQt_QtBindings.cpp | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_core_builtin/com_trolltech_qt_core_builtin0.cpp | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_core_builtin/com_trolltech_qt_core_builtin_init.cpp | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_gui_builtin/com_trolltech_qt_gui_builtin0.cpp | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_gui_builtin/com_trolltech_qt_gui_builtin_init.cpp | ||||
) | ||||
#----------------------------------------------------------------------------- | ||||
# List headers. This is list is used for the install command. | ||||
set(HEADERS | ||||
PythonQtClassInfo.h | ||||
PythonQtClassWrapper.h | ||||
PythonQtConversion.h | ||||
PythonQtCppWrapperFactory.h | ||||
PythonQtDoc.h | ||||
PythonQt.h | ||||
PythonQtImporter.h | ||||
PythonQtImportFileInterface.h | ||||
PythonQtInstanceWrapper.h | ||||
PythonQtMethodInfo.h | ||||
PythonQtMisc.h | ||||
PythonQtObjectPtr.h | ||||
PythonQtQFileImporter.h | ||||
PythonQtSignalReceiver.h | ||||
PythonQtSlot.h | ||||
PythonQtSignal.h | ||||
PythonQtStdDecorators.h | ||||
PythonQtStdIn.h | ||||
PythonQtStdOut.h | ||||
PythonQtSystem.h | ||||
PythonQtVariants.h | ||||
PythonQtPythonInclude.h | ||||
../generated_cpp${generated_cpp_suffix}/PythonQt_QtBindings.h | ||||
) | ||||
#----------------------------------------------------------------------------- | ||||
# Headers that should run through moc | ||||
set(SOURCES_MOC | ||||
PythonQt.h | ||||
PythonQtSignalReceiver.h | ||||
PythonQtStdDecorators.h | ||||
gui/PythonQtScriptingConsole.h | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_core_builtin/com_trolltech_qt_core_builtin0.h | ||||
../generated_cpp${generated_cpp_suffix}/com_trolltech_qt_gui_builtin/com_trolltech_qt_gui_builtin0.h | ||||
) | ||||
#----------------------------------------------------------------------------- | ||||
# Resources | ||||
set(SOURCES_QRC ) | ||||
#----------------------------------------------------------------------------- | ||||
# Build the library | ||||
Orochimarufan
|
r208 | set(PythonQt ${PythonQt_LibraryName}${PythonQt_LibrarySuffix} CACHE INTERNAL "") | ||
Orochimarufan
|
r205 | |||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}) | ||||
Orochimarufan
|
r208 | qt_wrap_cpp(GEN_MOC ${SOURCES_MOC}) | ||
qt_add_resources(GEN_QRC ${SOURCES_QRC}) | ||||
Orochimarufan
|
r205 | |||
Orochimarufan
|
r208 | add_library(${PythonQt} SHARED ${SOURCES} ${GEN_MOC} ${GEN_QRC} ${HEADERS}) | ||
Orochimarufan
|
r205 | if(PythonQt_Qt5) | ||
Orochimarufan
|
r208 | qt_use_modules(${PythonQt} Core Gui Widgets) | ||
Orochimarufan
|
r205 | else() | ||
Orochimarufan
|
r208 | qt_use_modules(${PythonQt} Core Gui) | ||
Orochimarufan
|
r205 | endif() | ||
Orochimarufan
|
r208 | target_link_libraries(${PythonQt} ${PYTHON_LIBRARIES}) | ||
Orochimarufan
|
r205 | |||
# | ||||
# That should solve linkage error on Mac when the project is used in a superbuild setup | ||||
# See http://blog.onesadcookie.com/2008/01/installname-magic.html | ||||
# | ||||
Orochimarufan
|
r208 | set_target_properties(${PythonQt} PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib") | ||
Orochimarufan
|
r205 | |||
#----------------------------------------------------------------------------- | ||||
# Install library (on windows, put the dll in 'bin' and the archive in 'lib') | ||||
Orochimarufan
|
r208 | install(TARGETS ${PythonQt} | ||
Orochimarufan
|
r205 | RUNTIME DESTINATION bin | ||
LIBRARY DESTINATION lib | ||||
ARCHIVE DESTINATION lib) | ||||
install(FILES ${headers} DESTINATION include/PythonQt) | ||||