pythonPackages.pyunbound: fixing nixpkgs-hammering
suggestions
- `swig` is a build tool so it likely goes to `nativeBuildInputs`, not `buildInputs` - `patchPhase` should not be overridden, use `postPatch` instead - `configureFlags` and `installFlags` cannot contain spaces, break-up arguments to reflect that they are indeed without spaces - `substituteStream()`: WARNING: pattern `libdir='/build/unbound-1.13.1/lib/python3.9/site-packages'` doesn't match anything in file `_unbound.la` Also checked with `strings`, the correct path is present in the binary
This commit is contained in:
parent
5fe5522a67
commit
fcff510efb
1 changed files with 14 additions and 8 deletions
|
@ -11,12 +11,14 @@ in stdenv.mkDerivation rec {
|
|||
sha256 = "sha256-hQTZe4/FvYlzRcldEW4O4N34yP+ZWQqytL0TJ4yfULg=";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl expat libevent swig python ];
|
||||
nativeBuildInputs = [ swig ];
|
||||
|
||||
patchPhase = ''substituteInPlace Makefile.in \
|
||||
buildInputs = [ openssl expat libevent python ];
|
||||
|
||||
postPatch = ''substituteInPlace Makefile.in \
|
||||
--replace "\$(DESTDIR)\$(PYTHON_SITE_PKG)" "$out/${python.sitePackages}" \
|
||||
--replace "\$(LIBTOOL) --mode=install cp _unbound.la" "cp _unbound.la"
|
||||
'';
|
||||
'';
|
||||
|
||||
preConfigure = "export PYTHON_VERSION=${python.pythonVersion}";
|
||||
|
||||
|
@ -30,18 +32,22 @@ in stdenv.mkDerivation rec {
|
|||
"--enable-pie"
|
||||
"--enable-relro-now"
|
||||
"--with-pyunbound"
|
||||
"DESTDIR=$out PREFIX="
|
||||
"DESTDIR=$out"
|
||||
"PREFIX="
|
||||
];
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/${python.sitePackages} $out/etc/${pname}
|
||||
cp .libs/_unbound.so .libs/libunbound.so* $out/${python.sitePackages}
|
||||
substituteInPlace _unbound.la \
|
||||
--replace "-L.libs $PWD/libunbound.la" "-L$out/${python.sitePackages}" \
|
||||
--replace "libdir=\'$PWD/${python.sitePackages}\'" "libdir=\'$out/${python.sitePackages}\'"
|
||||
--replace "-L.libs $PWD/libunbound.la" "-L$out/${python.sitePackages}"
|
||||
'';
|
||||
|
||||
installFlags = [ "configfile=\${out}/etc/unbound/unbound.conf pyunbound-install lib" ];
|
||||
installFlags = [
|
||||
"configfile=\${out}/etc/unbound/unbound.conf"
|
||||
"pyunbound-install"
|
||||
"lib"
|
||||
];
|
||||
|
||||
# All we want is the Unbound Python module
|
||||
postInstall = ''
|
||||
|
@ -52,7 +58,7 @@ in stdenv.mkDerivation rec {
|
|||
# We don't need anything else
|
||||
rm -fR $out/bin $out/share $out/include $out/etc/unbound
|
||||
patchelf --replace-needed libunbound.so.8 $out/${python.sitePackages}/libunbound.so.8 $out/${python.sitePackages}/_unbound.so
|
||||
'';
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python library for Unbound, the validating, recursive, and caching DNS resolver";
|
||||
|
|
Loading…
Reference in a new issue