diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix | 63 |
1 files changed, 44 insertions, 19 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix b/infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix index d46d3cfc5006..d56c10a9591e 100644 --- a/infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix +++ b/infra/libkookie/nixpkgs/pkgs/development/python-modules/pysvn/default.nix @@ -1,43 +1,69 @@ { stdenv +, lib , buildPythonPackage , fetchurl -, pkgs , isPy3k , python +, apr +, aprutil +, bash +, e2fsprogs +, expat +, gcc +, glibcLocales +, neon +, openssl +, pycxx +, subversion }: buildPythonPackage rec { pname = "pysvn"; - version = "1.8.0"; - disabled = isPy3k; + version = "1.9.12"; format = "other"; src = fetchurl { url = "http://pysvn.barrys-emacs.org/source_kits/${pname}-${version}.tar.gz"; - sha256 = "0srjr2qgxfs69p65d9vvdib2lc142x10w8afbbdrqs7dhi46yn9r"; + sha256 = "sRPa4wNyjDmGdF1gTOgLS0pnrdyZwkkH4/9UCdh/R9Q="; }; - buildInputs = [ pkgs.subversion pkgs.apr pkgs.aprutil pkgs.expat pkgs.neon pkgs.openssl ] - ++ (if stdenv.isLinux then [pkgs.e2fsprogs] else []); + buildInputs = [ bash subversion apr aprutil expat neon openssl ] + ++ lib.optionals stdenv.isLinux [ e2fsprogs ] + ++ lib.optionals stdenv.isDarwin [ gcc ]; - # There seems to be no way to pass that path to configure. - NIX_CFLAGS_COMPILE="-I${pkgs.aprutil.dev}/include/apr-1"; + postPatch = '' + sed -i "117s|append(|insert(0, |" Tests/benchmark_diff.py + ''; preConfigure = '' cd Source ${python.interpreter} setup.py backport ${python.interpreter} setup.py configure \ - --apr-inc-dir=${pkgs.apr.dev}/include \ - --apu-inc-dir=${pkgs.aprutil.dev}/include \ - --apr-lib-dir=${pkgs.apr.out}/lib \ - --svn-lib-dir=${pkgs.subversion.out}/lib \ - --svn-bin-dir=${pkgs.subversion.out}/bin \ - --svn-root-dir=${pkgs.subversion.dev} - '' + (if !stdenv.isDarwin then "" else '' + --apr-inc-dir=${apr.dev}/include \ + --apu-inc-dir=${aprutil.dev}/include \ + --pycxx-dir=${pycxx.dev}/include \ + --svn-inc-dir=${subversion.dev}/include/subversion-1 \ + --pycxx-src-dir=${pycxx.dev}/src \ + --apr-lib-dir=${apr.out}/lib \ + --svn-lib-dir=${subversion.out}/lib \ + --svn-bin-dir=${subversion.out}/bin + '' + (lib.optionalString (stdenv.isDarwin && !isPy3k) '' sed -i -e 's|libpython2.7.dylib|lib/libpython2.7.dylib|' Makefile ''); - checkPhase = "make -C ../Tests"; + checkInputs = [ glibcLocales ]; + checkPhase = '' + runHook preCheck + + # It is not only shebangs, some tests also write scripts dynamically + # so it is easier to simply search and replace + sed -i "s|/bin/bash|${bash}/bin/bash|" ../Tests/test-*.sh + make -C ../Tests + + runHook postCheck + ''; + + pythonImportCheck = [ "pysvn" ]; installPhase = '' dest=$(toPythonPath $out)/pysvn @@ -45,15 +71,14 @@ buildPythonPackage rec { cp pysvn/__init__.py $dest/ cp pysvn/_pysvn*.so $dest/ mkdir -p $out/share/doc - mv -v ../Docs $out/share/doc/pysvn-1.7.2 - rm -v $out/share/doc/pysvn-1.7.2/generate_cpp_docs_from_html_docs.py + mv -v ../Docs $out/share/doc/pysvn-${version} + rm -v $out/share/doc/pysvn-${version}/generate_cpp_docs_from_html_docs.py ''; meta = with stdenv.lib; { description = "Python bindings for Subversion"; homepage = "http://pysvn.tigris.org/"; license = licenses.asl20; - broken = true; }; } |