@@ -0,0 +1,24 | |||
|
1 | cmake_policy(SET CMP0007 OLD) | |
|
2 | ||
|
3 | if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") | |
|
4 | message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") | |
|
5 | endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") | |
|
6 | ||
|
7 | file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) | |
|
8 | string(REGEX REPLACE "\n" ";" files "${files}") | |
|
9 | list(REVERSE files) | |
|
10 | foreach (file ${files}) | |
|
11 | message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") | |
|
12 | if (EXISTS "$ENV{DESTDIR}${file}") | |
|
13 | execute_process( | |
|
14 | COMMAND @CMAKE_COMMAND@ -E remove "$ENV{DESTDIR}${file}" | |
|
15 | OUTPUT_VARIABLE rm_out | |
|
16 | RESULT_VARIABLE rm_retval | |
|
17 | ) | |
|
18 | if(NOT ${rm_retval} EQUAL 0) | |
|
19 | message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"") | |
|
20 | endif (NOT ${rm_retval} EQUAL 0) | |
|
21 | else (EXISTS "$ENV{DESTDIR}${file}") | |
|
22 | message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") | |
|
23 | endif (EXISTS "$ENV{DESTDIR}${file}") | |
|
24 | endforeach(file) |
@@ -0,0 +1,21 | |||
|
1 | # - Config file for the PythonQt package | |
|
2 | # It defines the following variables | |
|
3 | # PythonQt - the PythonQt core target (PythonQt PythonQt_3 PythonQt5 PythonQt5_3) | |
|
4 | # PythonQt_QtAll - the PythonQt QtAll target | |
|
5 | # PythonQt_QtAll_INCLUDE_DIRS - include directories for PythonQt | |
|
6 | # PythonQt_QtAll_LIBRARIES - libraries to link against | |
|
7 | ||
|
8 | set(PythonQt @PythonQt@) | |
|
9 | set(PythonQt_QtAll @PythonQt_QtAll@) | |
|
10 | ||
|
11 | # Compute paths | |
|
12 | get_filename_component(PYTHONQT_QTALL_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) | |
|
13 | set(PythonQt_QtAll_INCLUDE_DIRS "@INCLUDE_DIRS@") | |
|
14 | ||
|
15 | # Our library dependencies (contains definitions for IMPORTED targets) | |
|
16 | if(NOT TARGET @PythonQt_QtAll@) | |
|
17 | include("${PYTHONQT_QTALL_CMAKE_DIR}/@PythonQt_QtAll@Targets.cmake") | |
|
18 | endif() | |
|
19 | ||
|
20 | # These are IMPORTED targets created by @PythonQt_QtAll@Targets.cmake | |
|
21 | set(PythonQt_QtAll_LIBRARIES @PythonQt_QtAll@) |
@@ -0,0 +1,11 | |||
|
1 | set(PACKAGE_VERSION "@PythonQt_VERSION@") | |
|
2 | ||
|
3 | # Check whether the requested PACKAGE_FIND_VERSION is compatible | |
|
4 | if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}") | |
|
5 | set(PACKAGE_VERSION_COMPATIBLE FALSE) | |
|
6 | else() | |
|
7 | set(PACKAGE_VERSION_COMPATIBLE TRUE) | |
|
8 | if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}") | |
|
9 | set(PACKAGE_VERSION_EXACT TRUE) | |
|
10 | endif() | |
|
11 | endif() |
@@ -0,0 +1,22 | |||
|
1 | # - Config file for the PythonQt package | |
|
2 | # It defines the following variables | |
|
3 | # PythonQt - the PythonQt core target (PythonQt PythonQt_3 PythonQt5 PythonQt5_3) | |
|
4 | # PythonQt_INCLUDE_DIRS - include directories for PythonQt | |
|
5 | # PythonQt_LIBRARIES - libraries to link against | |
|
6 | ||
|
7 | set(PythonQt @PythonQt@) | |
|
8 | set(PythonQt_Qt5 @PythonQt_Qt5@) | |
|
9 | set(PythonQt_Python3 @PythonQt_Python3@) | |
|
10 | set(PythonQt_Python @PYTHON_VERSION@) | |
|
11 | ||
|
12 | # Compute paths | |
|
13 | get_filename_component(PYTHONQT_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) | |
|
14 | set(PythonQt_INCLUDE_DIRS "@INCLUDE_DIRS@") | |
|
15 | ||
|
16 | # Our library dependencies (contains definitions for IMPORTED targets) | |
|
17 | if(NOT TARGET @PythonQt@) | |
|
18 | include("${PYTHONQT_CMAKE_DIR}/@PythonQt@Targets.cmake") | |
|
19 | endif() | |
|
20 | ||
|
21 | # These are IMPORTED targets created by @PythonQt@Targets.cmake | |
|
22 | set(PythonQt_LIBRARIES @PythonQt@) |
@@ -0,0 +1,11 | |||
|
1 | set(PACKAGE_VERSION "@PythonQt_VERSION@") | |
|
2 | ||
|
3 | # Check whether the requested PACKAGE_FIND_VERSION is compatible | |
|
4 | if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}") | |
|
5 | set(PACKAGE_VERSION_COMPATIBLE FALSE) | |
|
6 | else() | |
|
7 | set(PACKAGE_VERSION_COMPATIBLE TRUE) | |
|
8 | if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}") | |
|
9 | set(PACKAGE_VERSION_EXACT TRUE) | |
|
10 | endif() | |
|
11 | endif() |
@@ -14,6 +14,10 else() | |||
|
14 | 14 | remove_definitions(-DPYTHONQT_DEBUG) |
|
15 | 15 | endif() |
|
16 | 16 | |
|
17 | if(NOT CMAKE_BUILD_TYPE) | |
|
18 | set(CMAKE_BUILD_TYPE Release) | |
|
19 | endif() | |
|
20 | ||
|
17 | 21 | #----------------------------------------------------------------------------- |
|
18 | 22 | # Qt |
|
19 | 23 | option(PythonQt_Qt5 "Use Qt 5.x (5.1+)" OFF) |
@@ -110,6 +114,12 else() | |||
|
110 | 114 | find_package(Python 2.6 REQUIRED) |
|
111 | 115 | endif() |
|
112 | 116 | |
|
117 | if(NOT ${PYTHON_VERSION} VERSION_LESS 3) | |
|
118 | set(PythonQt_Python3 ON) | |
|
119 | else() | |
|
120 | set(PythonQt_Python3 OFF) | |
|
121 | endif() | |
|
122 | ||
|
113 | 123 | include_directories(${PYTHON_INCLUDE_DIRS}) |
|
114 | 124 | add_definitions(-DPYTHONQT_USE_RELEASE_PYTHON_FALLBACK) |
|
115 | 125 | |
@@ -124,11 +134,11 if(PythonQt_Qt5) | |||
|
124 | 134 | set(PythonQt_LibraryName ${PythonQt_LibraryName}5) |
|
125 | 135 | endif() |
|
126 | 136 | |
|
127 | if(NOT ${PYTHON_VERSION} VERSION_LESS 3) | |
|
137 | if(PythonQt_Python3) | |
|
128 | 138 | set(PythonQt_LibraryName ${PythonQt_LibraryName}_3) |
|
129 | 139 | endif() |
|
130 | 140 | |
|
131 | if(${CMAKE_BUILD_TYPE} STREQUAL "Debug") | |
|
141 | if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") | |
|
132 | 142 | set(PythonQt_LibrarySuffix _d) |
|
133 | 143 | endif() |
|
134 | 144 | |
@@ -147,13 +157,23 add_dependencies(test PythonQtTest) | |||
|
147 | 157 | |
|
148 | 158 | #----------------------------------------------------------------------------- |
|
149 | 159 | # Extenseions (QtAll) |
|
150 |
add_subdirectory(extensions |
|
|
160 | add_subdirectory(extensions) | |
|
151 | 161 | # QtAll alias |
|
152 | 162 | add_custom_target(QtAll) |
|
153 | add_dependencies(QtAll PythonQt_QtAll) | |
|
163 | add_dependencies(QtAll ${PythonQt_QtAll}) | |
|
154 | 164 | |
|
155 | 165 | #----------------------------------------------------------------------------- |
|
156 | 166 | # Examples |
|
157 | 167 | include_directories(src) |
|
158 | 168 | include_directories(extensions/PythonQt_QtAll) |
|
159 | 169 | add_subdirectory(examples EXCLUDE_FROM_ALL) |
|
170 | ||
|
171 | #----------------------------------------------------------------------------- | |
|
172 | # uninstall target | |
|
173 | configure_file( | |
|
174 | "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" | |
|
175 | "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" | |
|
176 | IMMEDIATE @ONLY) | |
|
177 | ||
|
178 | add_custom_target(uninstall | |
|
179 | COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) |
@@ -27,6 +27,8 SET(DIRS | |||
|
27 | 27 | pygments |
|
28 | 28 | ) |
|
29 | 29 | |
|
30 | find_package(${PythonQt}) | |
|
31 | ||
|
30 | 32 | qt_wrap_cpp(GEN_MOC ${HEADERS}) |
|
31 | 33 | |
|
32 | 34 | add_executable(NicePyConsole ${SOURCES} ${GEN_MOC}) |
@@ -36,9 +38,7 else() | |||
|
36 | 38 | qt_use_modules(NicePyConsole Core Gui) |
|
37 | 39 | endif() |
|
38 | 40 | |
|
39 | get_property(PythonQt_lib TARGET ${PythonQt} PROPERTY LOCATION) | |
|
40 | get_property(PythonQt_QtAll_lib TARGET ${PythonQt_QtAll} PROPERTY LOCATION) | |
|
41 | target_link_libraries(NicePyConsole ${PythonQt_lib} ${PythonQt_QtAll_lib} ${PYTHON_LIBRARIES}) | |
|
41 | target_link_libraries(NicePyConsole ${PythonQt} ${PythonQt_QtAll} ${PYTHON_LIBRARIES}) | |
|
42 | 42 | |
|
43 | 43 | foreach(FILE ${FILES}) |
|
44 | 44 | SET(OUT "${CMAKE_CURRENT_BINARY_DIR}/${FILE}") |
@@ -138,6 +138,8 endforeach() | |||
|
138 | 138 | # Build |
|
139 | 139 | set(PythonQt_QtAll ${PythonQt_LibraryName}_QtAll${PythonQt_LibrarySuffix} CACHE INTERNAL "") |
|
140 | 140 | |
|
141 | find_package(${PythonQt}) | |
|
142 | ||
|
141 | 143 | include_directories(../../src) |
|
142 | 144 | add_definitions(-DPYTHONQT_QTALL_EXPORTS) |
|
143 | 145 | qt_wrap_cpp(GEN_MOC ${HEADERS}) |
@@ -151,10 +153,36 endif() | |||
|
151 | 153 | add_library(${PythonQt_QtAll} SHARED ${SOURCES} ${GEN_MOC}) |
|
152 | 154 | qt_use_modules(${PythonQt_QtAll} ${QT}) |
|
153 | 155 | |
|
154 | get_property(PythonQt_lib TARGET ${PythonQt} PROPERTY LOCATION) | |
|
155 | target_link_libraries(${PythonQt_QtAll} ${PythonQt_lib} ${PYTHON_LIBRARIES}) | |
|
156 | target_link_libraries(${PythonQt_QtAll} ${PythonQt} ${PYTHON_LIBRARIES}) | |
|
156 | 157 | |
|
157 | install(TARGETS ${PythonQt_QtAll} | |
|
158 | install(TARGETS ${PythonQt_QtAll} EXPORT ${PythonQt_QtAll}Targets COMPONENT QtAll | |
|
158 | 159 | RUNTIME DESTINATION bin |
|
159 | 160 | LIBRARY DESTINATION lib |
|
160 | 161 | ARCHIVE DESTINATION lib) |
|
162 | ||
|
163 | #----------------------------------------------------------------------------- | |
|
164 | # Export CMake Config | |
|
165 | ||
|
166 | if(WIN32 AND NOT CYGWIN) | |
|
167 | set(LIB_CMAKE_PATH "cmake") | |
|
168 | else() | |
|
169 | set(LIB_CMAKE_PATH "lib/cmake/${PythonQt_QtAll}") | |
|
170 | endif() | |
|
171 | ||
|
172 | export(TARGETS ${PythonQt_QtAll} ${PythonQt} FILE "${PROJECT_BINARY_DIR}/${PythonQt_QtAll}Targets.cmake") | |
|
173 | export(PACKAGE ${PythonQt_QtAll}) | |
|
174 | ||
|
175 | # build tree | |
|
176 | set(INCLUDE_DIRS "${PROJECT_SOURCE_DIR}" "${PROJECT_BINARY_DIR}") | |
|
177 | configure_file(PythonQt_QtAllConfig.cmake.in "${PROJECT_BINARY_DIR}/${PythonQt_QtAll}Config.cmake" @ONLY) | |
|
178 | # install tree | |
|
179 | set(INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include/PythonQt/QtAll") | |
|
180 | configure_file(PythonQt_QtAllConfig.cmake.in "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PythonQt_QtAll}Config.cmake" @ONLY) | |
|
181 | # both | |
|
182 | configure_file(PythonQt_QtAllConfigVersion.cmake.in "${PROJECT_BINARY_DIR}/${PythonQt_QtAll}ConfigVersion.cmake" @ONLY) | |
|
183 | ||
|
184 | install(EXPORT ${PythonQt_QtAll}Targets DESTINATION "${LIB_CMAKE_PATH}" COMPONENT QtAll-dev) | |
|
185 | install(FILES ${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PythonQt_QtAll}Config.cmake | |
|
186 | ${PROJECT_BINARY_DIR}/${PythonQt_QtAll}ConfigVersion.cmake | |
|
187 | DESTINATION "${LIB_CMAKE_PATH}" COMPONENT QtAll-dev) | |
|
188 |
@@ -86,7 +86,7 include_directories(${CMAKE_CURRENT_SOURCE_DIR}) | |||
|
86 | 86 | qt_wrap_cpp(GEN_MOC ${SOURCES_MOC}) |
|
87 | 87 | qt_add_resources(GEN_QRC ${SOURCES_QRC}) |
|
88 | 88 | |
|
89 |
add_library(${PythonQt} SHARED ${SOURCES} ${GEN_MOC} ${GEN_QRC} |
|
|
89 | add_library(${PythonQt} SHARED ${SOURCES} ${GEN_MOC} ${GEN_QRC}) | |
|
90 | 90 | if(PythonQt_Qt5) |
|
91 | 91 | qt_use_modules(${PythonQt} Core Gui Widgets) |
|
92 | 92 | else() |
@@ -103,8 +103,37 set_target_properties(${PythonQt} PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_P | |||
|
103 | 103 | #----------------------------------------------------------------------------- |
|
104 | 104 | # Install library (on windows, put the dll in 'bin' and the archive in 'lib') |
|
105 | 105 | |
|
106 | install(TARGETS ${PythonQt} | |
|
107 | RUNTIME DESTINATION bin | |
|
108 | LIBRARY DESTINATION lib | |
|
109 |
|
|
|
110 | install(FILES ${headers} DESTINATION include/PythonQt) | |
|
106 | set_target_properties(${PythonQt} PROPERTIES PUBLIC_HEADER "${HEADERS}") | |
|
107 | ||
|
108 | install(TARGETS ${PythonQt} EXPORT ${PythonQt}Targets COMPONENT core-dev | |
|
109 | RUNTIME DESTINATION bin COMPONENT core | |
|
110 | LIBRARY DESTINATION lib COMPONENT core | |
|
111 | ARCHIVE DESTINATION lib COMPONENT core | |
|
112 | PUBLIC_HEADER DESTINATION include/PythonQt) | |
|
113 | ||
|
114 | #----------------------------------------------------------------------------- | |
|
115 | # Export CMake Config | |
|
116 | ||
|
117 | if(WIN32 AND NOT CYGWIN) | |
|
118 | set(LIB_CMAKE_PATH "cmake") | |
|
119 | else() | |
|
120 | set(LIB_CMAKE_PATH "lib/cmake/${PythonQt}") | |
|
121 | endif() | |
|
122 | ||
|
123 | export(TARGETS ${PythonQt} FILE "${PROJECT_BINARY_DIR}/${PythonQt}Targets.cmake") | |
|
124 | export(PACKAGE ${PythonQt}) | |
|
125 | ||
|
126 | # build tree | |
|
127 | set(INCLUDE_DIRS "${PROJECT_SOURCE_DIR}" "${PROJECT_BINARY_DIR}") | |
|
128 | configure_file(PythonQtConfig.cmake.in "${PROJECT_BINARY_DIR}/${PythonQt}Config.cmake" @ONLY) | |
|
129 | # install tree | |
|
130 | set(INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include/PythonQt") | |
|
131 | configure_file(PythonQtConfig.cmake.in "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PythonQt}Config.cmake" @ONLY) | |
|
132 | # both | |
|
133 | configure_file(PythonQtConfigVersion.cmake.in "${PROJECT_BINARY_DIR}/${PythonQt}ConfigVersion.cmake" @ONLY) | |
|
134 | ||
|
135 | install(EXPORT ${PythonQt}Targets DESTINATION "${LIB_CMAKE_PATH}" COMPONENT core-dev) | |
|
136 | install(FILES ${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PythonQt}Config.cmake | |
|
137 | ${PROJECT_BINARY_DIR}/${PythonQt}ConfigVersion.cmake | |
|
138 | DESTINATION "${LIB_CMAKE_PATH}" COMPONENT core-dev) | |
|
139 |
General Comments 0
You need to be logged in to leave comments.
Login now