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:
@@ -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";
|
||||
|
||||
Reference in New Issue
Block a user