python3Packages.pyside6-qtads: init at 4.3.1.1 (#370105)
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
cmake,
|
||||
fetchFromGitHub,
|
||||
gitpython,
|
||||
ninja,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "cmake-build-extension";
|
||||
version = "0.6.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "diegoferigo";
|
||||
repo = "cmake-build-extension";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-taAwxa7Sv+xc8xJRnNM6V7WPcL+TWZOkngwuqjAslzc=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
cmake
|
||||
ninja
|
||||
gitpython
|
||||
];
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
pythonImportsCheck = [ "cmake_build_extension" ];
|
||||
|
||||
doPythonRuntimeDepsCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Setuptools extension to build and package CMake projects";
|
||||
homepage = "https://github.com/diegoferigo/cmake-build-extension";
|
||||
changelog = "https://github.com/diegoferigo/cmake-build-extension/releases/tag/v${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ scoder12 ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
cmake-build-extension,
|
||||
fetchFromGitHub,
|
||||
pythonRelaxDepsHook,
|
||||
pyside6,
|
||||
qt6,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
shiboken6,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyside6-qtads";
|
||||
version = "4.3.1.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mborgerson";
|
||||
repo = "pyside6_qtads";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-02YUeD9PfcaYkvz9JX5FucsbG9Idk7OH24U+RXXEmvo=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
# bypass the broken parts of their bespoke python script cmake plugin
|
||||
patches = [ ./find-nix-deps.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail @shiboken6@ ${shiboken6} \
|
||||
--replace-fail @pyside6@ ${pyside6}
|
||||
|
||||
# can't use pythonRelaxDepsHook because it runs postBuild but the dependency check
|
||||
# happens during build.
|
||||
# -Essentials is a smaller version of PySide6, but the name mismatch breaks build
|
||||
# _generator is also a virtual package with the same issue
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-warn 'PySide6-Essentials' "" \
|
||||
--replace-warn 'shiboken6_generator' "" \
|
||||
--replace-quiet '"",' "" \
|
||||
--replace-quiet '""' ""
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
qt6.qtbase
|
||||
qt6.qtquick3d
|
||||
];
|
||||
|
||||
build-system = [
|
||||
cmake-build-extension
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
pyside6
|
||||
shiboken6
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pythonRelaxDepsHook ];
|
||||
|
||||
# cmake-build-extension will configure
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
dontWrapQtApps = true;
|
||||
# runtime deps check fails on the pyside6-essentials virtual package
|
||||
dontCheckRuntimeDeps = true;
|
||||
|
||||
pythonImportsCheck = [ "PySide6QtAds" ];
|
||||
|
||||
meta = {
|
||||
description = "Python bindings to Qt Advanced Docking System for PySide6";
|
||||
homepage = "https://github.com/mborgerson/pyside6_qtads";
|
||||
changelog = "https://github.com/mborgerson/pyside6_qtads/releases/tag/";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ scoder12 ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 0c0568a..f12d50e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -105,15 +105,17 @@ macro(pyside_config option output_var)
|
||||
endmacro()
|
||||
|
||||
# Query for the shiboken generator path, Python path, include paths and linker flags.
|
||||
+find_package(Shiboken6 REQUIRED)
|
||||
+find_package(PySide6 REQUIRED)
|
||||
pyside_config(--shiboken-module-path shiboken_module_path)
|
||||
-pyside_config(--shiboken-generator-path shiboken_generator_path)
|
||||
-pyside_config(--pyside-path pyside_path)
|
||||
-pyside_config(--pyside-include-path pyside_include_dir 1)
|
||||
+set(shiboken_generator_path "" CACHE PATH "Path where shiboken6 executable can be found")
|
||||
+set(pyside_path "" CACHE PATH "pyside share path, where typesystems dir can be found")
|
||||
+get_target_property(pyside_include_dir PySide6::pyside6 INTERFACE_INCLUDE_DIRECTORIES)
|
||||
pyside_config(--python-include-path python_include_dir)
|
||||
-pyside_config(--shiboken-generator-include-path shiboken_include_dir 1)
|
||||
-pyside_config(--shiboken-module-shared-libraries-cmake shiboken_shared_libraries 0)
|
||||
+get_target_property(shiboken_include_dir Shiboken6::libshiboken INTERFACE_INCLUDE_DIRECTORIES)
|
||||
+get_target_property(shiboken_shared_libraries Shiboken6::libshiboken IMPORTED_LOCATION_RELEASE)
|
||||
pyside_config(--python-link-flags-cmake python_linking_data 0)
|
||||
-pyside_config(--pyside-shared-libraries-cmake pyside_shared_libraries 0)
|
||||
+get_target_property(pyside_shared_libraries PySide6::pyside6 IMPORTED_LOCATION_RELEASE)
|
||||
|
||||
set(shiboken_path "${shiboken_generator_path}/shiboken6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
if(NOT EXISTS ${shiboken_path})
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 802821b..f522818 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -88,7 +88,9 @@ setuptools.setup(
|
||||
"-DBUILD_STATIC:BOOL=ON",
|
||||
"-DADS_VERSION=4.3.0",
|
||||
f"-DPython3_ROOT_DIR={Path(sys.prefix)}",
|
||||
- f"-DPython_EXECUTABLE={Path(sys.executable)}"
|
||||
+ f"-DPython_EXECUTABLE={Path(sys.executable)}",
|
||||
+ "-Dshiboken_generator_path=@shiboken6@/bin",
|
||||
+ "-Dpyside_path=@pyside6@/share/PySide6"
|
||||
],
|
||||
py_limited_api=True
|
||||
),
|
||||
@@ -2522,6 +2522,8 @@ self: super: with self; {
|
||||
|
||||
cmake = callPackage ../development/python-modules/cmake { inherit (pkgs) cmake; };
|
||||
|
||||
cmake-build-extension = callPackage ../development/python-modules/cmake-build-extension { };
|
||||
|
||||
cmarkgfm = callPackage ../development/python-modules/cmarkgfm { };
|
||||
|
||||
cmd2 = callPackage ../development/python-modules/cmd2 { };
|
||||
@@ -13009,6 +13011,8 @@ self: super: with self; {
|
||||
inherit (pkgs) cmake ninja;
|
||||
});
|
||||
|
||||
pyside6-qtads = callPackage ../development/python-modules/pyside6-qtads { };
|
||||
|
||||
pysigma = callPackage ../development/python-modules/pysigma { };
|
||||
|
||||
pysigma-backend-elasticsearch = callPackage ../development/python-modules/pysigma-backend-elasticsearch { };
|
||||
|
||||
Reference in New Issue
Block a user