diff options
author | Kaiden Fey <kookie@spacekookie.de> | 2020-09-19 15:00:33 +0200 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2020-09-19 15:00:33 +0200 |
commit | e0800985dab8f8ebb4cebdfd7e361fd1fafdb2a7 (patch) | |
tree | 289f43c72dd1fffeec4eb18ced05ae91e50c179a /nixpkgs/pkgs/development/python-modules/pyside2-tools | |
parent | 5581b5521e14317c3507a6e8451a3f14996e5c4d (diff) | |
parent | 441a7da8080352881bb52f85e910d8855e83fc55 (diff) |
Merge commit '441a7da8080352881bb52f85e910d8855e83fc55'
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pyside2-tools')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pyside2-tools/default.nix | 15 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pyside2-tools/remove_hacky_binary_copying.patch | 50 |
2 files changed, 65 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pyside2-tools/default.nix b/nixpkgs/pkgs/development/python-modules/pyside2-tools/default.nix index a96ea5d32ff..9f1f94ffecb 100644 --- a/nixpkgs/pkgs/development/python-modules/pyside2-tools/default.nix +++ b/nixpkgs/pkgs/development/python-modules/pyside2-tools/default.nix @@ -6,6 +6,13 @@ stdenv.mkDerivation { inherit (pyside2) version src; + patches = [ + # Upstream has a crazy build system only geared towards producing binary + # wheels distributed via pypi. For this, they copy the `uic` and `rcc` + # binaries to the wheel. + ./remove_hacky_binary_copying.patch + ]; + postPatch = '' cd sources/pyside2-tools ''; @@ -18,8 +25,16 @@ stdenv.mkDerivation { "-DBUILD_TESTS=OFF" ]; + # The upstream build system consists of a `setup.py` whichs builds three + # different python libraries and calls cmake as a subprocess. We call cmake + # directly because that's easier to get working. However, the `setup.py` + # build also creates a few wrapper scripts, which we replicate here: postInstall = '' rm $out/bin/pyside_tool.py + + for tool in uic rcc; do + makeWrapper "$(command -v $tool)" $out/bin/pyside2-$tool --add-flags "-g python" + done ''; postFixup = '' diff --git a/nixpkgs/pkgs/development/python-modules/pyside2-tools/remove_hacky_binary_copying.patch b/nixpkgs/pkgs/development/python-modules/pyside2-tools/remove_hacky_binary_copying.patch new file mode 100644 index 00000000000..19dd8aaf101 --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/pyside2-tools/remove_hacky_binary_copying.patch @@ -0,0 +1,50 @@ +--- pyside-setup-opensource-src-5.14.2/sources/pyside2-tools/CMakeLists.txt~ 2020-07-17 10:51:14.498291075 +0200 ++++ pyside-setup-opensource-src-5.14.2/sources/pyside2-tools/CMakeLists.txt 2020-07-17 10:52:20.165336508 +0200 +@@ -46,47 +46,6 @@ + set(EXE_EXT "") + endif() + +-set(TOOLS_PATH "${_qt5Core_install_prefix}/bin") +-set(UIC_PATH "${TOOLS_PATH}/uic${EXE_EXT}") +-set(RCC_PATH "${TOOLS_PATH}/rcc${EXE_EXT}") +-if (APPLE) +- set(DESIGNER_PATH "${TOOLS_PATH}/Designer.app") +-else() +- set(DESIGNER_PATH "${TOOLS_PATH}/designer${EXE_EXT}") +-endif() +- +-install(FILES "${UIC_PATH}" +- DESTINATION bin +- PERMISSIONS +- OWNER_EXECUTE OWNER_WRITE OWNER_READ +- GROUP_EXECUTE GROUP_READ +- WORLD_EXECUTE WORLD_READ) +- +-install(FILES "${RCC_PATH}" +- DESTINATION bin +- PERMISSIONS +- OWNER_EXECUTE OWNER_WRITE OWNER_READ +- GROUP_EXECUTE GROUP_READ +- WORLD_EXECUTE WORLD_READ) +- +-if (EXISTS ${DESIGNER_PATH}) +- if (APPLE) +- install(DIRECTORY "${DESIGNER_PATH}" +- DESTINATION bin +- FILE_PERMISSIONS +- OWNER_EXECUTE OWNER_WRITE OWNER_READ +- GROUP_EXECUTE GROUP_READ +- WORLD_EXECUTE WORLD_READ) +- else() +- install(FILES "${DESIGNER_PATH}" +- DESTINATION bin +- PERMISSIONS +- OWNER_EXECUTE OWNER_WRITE OWNER_READ +- GROUP_EXECUTE GROUP_READ +- WORLD_EXECUTE WORLD_READ) +- endif() +-endif() +- + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + IMMEDIATE @ONLY) |