networkmanager: Stop using libredirect for building introspection (#60909)

networkmanager: Stop using libredirect for building introspection
This commit is contained in:
Jan Tojnar 2019-05-05 16:10:38 +02:00 committed by GitHub
commit e99ff9b98d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 28 deletions

@ -166,10 +166,3 @@ int execv(const char *path, char *const argv[])
char buf[PATH_MAX];
return execv_real(rewrite(path, buf), argv);
}
void *dlopen(const char *filename, int flag)
{
void * (*__dlopen_real) (const char *, int) = dlsym(RTLD_NEXT, "dlopen");
char buf[PATH_MAX];
return __dlopen_real(rewrite(filename, buf), flag);
}

@ -61,13 +61,6 @@ in stdenv.mkDerivation rec {
# Meson does not support using different directories during build and
# for installation like Autotools did with flags passed to make install.
./fix-install-paths.patch
# Our gobject-introspection patches make the shared library paths absolute
# in the GIR files. When building docs, the library is not yet installed,
# though, so we need to replace the absolute path with a local one during build.
# We are replacing the variables in postPatch since substituteAll does not support
# placeholders.
./fix-docs-build.patch
];
buildInputs = [
@ -91,10 +84,15 @@ in stdenv.mkDerivation rec {
postPatch = ''
patchShebangs ./tools
patchShebangs libnm/generate-setting-docs.py
'';
substituteInPlace libnm/meson.build \
--subst-var-by DOCS_LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--subst-var-by DOCS_NIX_REDIRECTS "${placeholder "out"}/lib/libnm.so.0=$PWD/build/libnm/libnm.so.0"
preBuild = ''
# Our gobject-introspection patches make the shared library paths absolute
# in the GIR files. When building docs, the library is not yet installed,
# though, so we need to replace the absolute path with a local one during build.
# We are using a symlink that will be overridden during installation.
mkdir -p ${placeholder "out"}/lib
ln -s $PWD/libnm/libnm.so.0 ${placeholder "out"}/lib/libnm.so.0
'';
postInstall = ''

@ -1,11 +0,0 @@
--- a/libnm/meson.build
+++ b/libnm/meson.build
@@ -262,6 +262,8 @@
'env', '-i',
'GI_TYPELIB_PATH=' + gi_typelib_path,
'LD_LIBRARY_PATH=' + ld_library_path,
+ 'LD_PRELOAD=' + '@DOCS_LD_PRELOAD@',
+ 'NIX_REDIRECTS=' + '@DOCS_NIX_REDIRECTS@',
]
name = 'nm-property-docs.xml'