diff options
| author | Martin Weinelt <mweinelt@users.noreply.github.com> | 2022-10-26 00:01:51 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-26 00:01:51 +0200 |
| commit | 256462226fb905d6f2a0d94fa67fcb3cd326505f (patch) | |
| tree | a17631912c55f55515fcdc436d7e426680cd1626 /pkgs/development/python-modules/wxPython | |
| parent | 79cb687bdf09075771d1c07b5766df0756d79534 (diff) | |
| parent | 446a718d13088aea9e15503f04e56d5f868ed91c (diff) | |
Merge pull request #190587 from mweinelt/meerk40t
Diffstat (limited to 'pkgs/development/python-modules/wxPython')
4 files changed, 163 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/wxPython/4.0.nix b/pkgs/development/python-modules/wxPython/4.0.nix index 9b4dcd5e6b48..509010afb3f1 100644 --- a/pkgs/development/python-modules/wxPython/4.0.nix +++ b/pkgs/development/python-modules/wxPython/4.0.nix @@ -21,6 +21,7 @@ , CoreFoundation , pillow , numpy +, six }: buildPythonPackage rec { @@ -46,7 +47,11 @@ buildPythonPackage rec { [ wxGTK.gtk ] ); - propagatedBuildInputs = [ pillow numpy ]; + propagatedBuildInputs = [ + numpy + pillow + six + ]; DOXYGEN = "${doxygen}/bin/doxygen"; diff --git a/pkgs/development/python-modules/wxPython/4.1.nix b/pkgs/development/python-modules/wxPython/4.1.nix index 3731ea988f61..dceab0dd26a9 100644 --- a/pkgs/development/python-modules/wxPython/4.1.nix +++ b/pkgs/development/python-modules/wxPython/4.1.nix @@ -28,6 +28,7 @@ , WebKit , pillow , numpy +, six , libXinerama , libSM , libXxf86vm @@ -108,7 +109,11 @@ buildPythonPackage rec { WebKit ]; - propagatedBuildInputs = [ pillow numpy ]; + propagatedBuildInputs = [ + pillow + numpy + six + ]; DOXYGEN = "${doxygen}/bin/doxygen"; diff --git a/pkgs/development/python-modules/wxPython/4.2-ctypes.patch b/pkgs/development/python-modules/wxPython/4.2-ctypes.patch new file mode 100644 index 000000000000..17fd8a9a8490 --- /dev/null +++ b/pkgs/development/python-modules/wxPython/4.2-ctypes.patch @@ -0,0 +1,18 @@ +diff --git a/wx/lib/wxcairo/wx_pycairo.py b/wx/lib/wxcairo/wx_pycairo.py +index 7cfe3071..24d1120f 100644 +--- a/wx/lib/wxcairo/wx_pycairo.py ++++ b/wx/lib/wxcairo/wx_pycairo.py +@@ -197,7 +197,12 @@ def _findCairoLib(): + + # For other DLLs we'll just use a dictionary to track them, as there + # probably isn't any need to use them outside of this module. +-_dlls = dict() ++_dlls = { ++ "gdk": ctypes.CDLL("@libgdk@"), ++ "pangocairo": ctypes.CDLL("@libpangocairo@"), ++ "cairoLib": ctypes.CDLL("@libcairo@"), ++ "appsvc": ctypes.CDLL(None), ++} + + def _findHelper(names, key, msg): + dll = _dlls.get(key, None) diff --git a/pkgs/development/python-modules/wxPython/4.2.nix b/pkgs/development/python-modules/wxPython/4.2.nix new file mode 100644 index 000000000000..a68d6cb4590a --- /dev/null +++ b/pkgs/development/python-modules/wxPython/4.2.nix @@ -0,0 +1,133 @@ +{ lib +, stdenv +, buildPythonPackage +, pythonOlder +, fetchPypi +, substituteAll + +# build +, autoPatchelfHook +, attrdict +, doxygen +, pkg-config +, python +, sip +, which + +# runtime +, cairo +, gst_all_1 +, gtk3 +, libGL +, libGLU +, libSM +, libXinerama +, libXtst +, libXxf86vm +, libglvnd +, mesa +, pango +, SDL +, webkitgtk +, wxGTK +, xorgproto + +# propagates +, numpy +, pillow +, six +}: + +buildPythonPackage rec { + pname = "wxPython"; + version = "4.2.0"; + format = "other"; + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-ZjzrxFCdfl0RNRiGX+J093+VQ0xdV7w4btWNZc7thsc="; + }; + + patches = [ + (substituteAll { + src = ./4.2-ctypes.patch; + libgdk = "${gtk3.out}/lib/libgdk-3.so"; + libpangocairo = "${pango}/lib/libpangocairo-1.0.so"; + libcairo = "${cairo}/lib/libcairo.so"; + }) + ]; + + nativeBuildInputs = [ + attrdict + pkg-config + SDL + sip + which + wxGTK + ] ++ lib.optionals stdenv.isLinux [ + autoPatchelfHook + ]; + + buildInputs = [ + wxGTK + SDL + ] ++ lib.optionals stdenv.isLinux [ + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + libGL + libGLU + libSM + libXinerama + libXtst + libXxf86vm + libglvnd + mesa + webkitgtk + xorgproto + ]; + + propagatedBuildInputs = [ + numpy + pillow + six + ]; + + buildPhase = '' + runHook preBuild + + export DOXYGEN=${doxygen}/bin/doxygen + export PATH="${wxGTK}/bin:$PATH" + export SDL_CONFIG="${SDL.dev}/bin/sdl-config" + + ${python.interpreter} build.py -v --use_syswx dox etg sip --nodoc build_py + + runHook postBuild + ''; + + + installPhase = '' + runHook preInstall + + ${python.interpreter} setup.py install --skip-build --prefix=$out + wrapPythonPrograms + + runHook postInstall + ''; + + checkPhase = '' + runHook preCheck + + ${python.interpreter} build.py -v test + + runHook postCheck + ''; + + + meta = with lib; { + description = "Cross platform GUI toolkit for Python, Phoenix version"; + homepage = "http://wxpython.org/"; + license = licenses.wxWindows; + maintainers = with maintainers; [ hexa ]; + }; +} |
