aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/CMakeLists.txt
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2018-02-21 18:15:10 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2018-02-22 10:11:51 +0000
commit6c6991732355184698abeb12994149fe8b16727e (patch)
treec17d6415e004ef2afed61f89e189da4f5ee64f80 /sources/pyside2/CMakeLists.txt
parent011b6ad1987f0dee3035e9803ece9fb2c1a0a1b2 (diff)
Don't copy duplicate libraries on package installation
This change makes sure to resolve symlinks and copy only one file for every dynamic shared library used (vs 3 before -> 2 symlinks + 1 actual library). This avoids duplicate files, as well as saves space when creating wheel (e.g. no 3 copies of standalone WebEngine library). This filtering happens copying from CMake install dir into pyside_package_dir (the symlinks are still present in the CMake dir, but that shouldn't harm anybody, and might be useful for users of shiboken only for example). Task-number: PYSIDE-495 Change-Id: I0fe454e16c6b254a8682aa7b1c702ec01a3064f0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/pyside2/CMakeLists.txt')
-rw-r--r--sources/pyside2/CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/sources/pyside2/CMakeLists.txt b/sources/pyside2/CMakeLists.txt
index d7d17f27d..08ed52473 100644
--- a/sources/pyside2/CMakeLists.txt
+++ b/sources/pyside2/CMakeLists.txt
@@ -166,6 +166,7 @@ set(BINDING_API_MICRO_VERSION "0")
set(BINDING_API_RELEASE_LEVEL "alpha") # alpha, beta, rc, or final
set(BINDING_API_SERIAL 0) # leave as 0 when release level is final
set(BINDING_API_VERSION "${BINDING_API_MAJOR_VERSION}.${BINDING_API_MINOR_VERSION}.${BINDING_API_MICRO_VERSION}" CACHE STRING "PySide version" FORCE)
+set(PYSIDE_SO_VERSION ${BINDING_API_MAJOR_VERSION}.${BINDING_API_MINOR_VERSION})
if (BINDING_API_RELEASE_LEVEL STREQUAL "final")
set(BINDING_API_VERSION_FULL "${BINDING_API_MAJOR_VERSION}.${BINDING_API_MINOR_VERSION}.${BINDING_API_MICRO_VERSION}"
CACHE STRING "PySide version [full]" FORCE)
@@ -220,6 +221,11 @@ if(GIT_FOUND)
endif()
endif()
+# Used by setup.py to know which symlink to resolve and copy in to the final package, in order to
+# avoid resolving all symlinks and thus copying unnecessary duplicate files.
+set(config_py_shiboken_library_version "")
+set(config_py_pyside_library_version "")
+
include(PySideModules)
macro(COLLECT_MODULE_IF_FOUND shortname)