gnu: gobject-introspection: Remove hardcoded store from patch.
* gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch: Use the NIX_STORE environment variable, rather than hardcoding the store directory.
This commit is contained in:
parent
26a7ff6e10
commit
145fed2a2b
|
@ -61,12 +61,14 @@
|
||||||
parser.add_option_group(group)
|
parser.add_option_group(group)
|
||||||
--- a/giscanner/shlibs.py
|
--- a/giscanner/shlibs.py
|
||||||
+++ b/giscanner/shlibs.py
|
+++ b/giscanner/shlibs.py
|
||||||
@@ -57,6 +57,12 @@ def _ldd_library_pattern(library_name):
|
@@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
|
||||||
$""" % re.escape(library_name), re.VERBOSE)
|
$""" % re.escape(library_name), re.VERBOSE)
|
||||||
|
|
||||||
|
|
||||||
+def _ldd_library_guix_pattern(library_name):
|
+def _ldd_library_guix_pattern(library_name):
|
||||||
+ store_dir = re.escape('/gnu/store')
|
+ store_dir = re.escape(
|
||||||
|
+ os.environ.get("NIX_STORE", default="/gnu/store")
|
||||||
|
+ )
|
||||||
+ pattern = r'(%s(?:/[^/]*)+lib%s[^A-Za-z0-9_-][^\s\(\)]*)'
|
+ pattern = r'(%s(?:/[^/]*)+lib%s[^A-Za-z0-9_-][^\s\(\)]*)'
|
||||||
+ return re.compile(pattern % (store_dir, re.escape(library_name)))
|
+ return re.compile(pattern % (store_dir, re.escape(library_name)))
|
||||||
+
|
+
|
||||||
|
@ -109,14 +111,15 @@
|
||||||
if len(patterns) == 0:
|
if len(patterns) == 0:
|
||||||
return []
|
return []
|
||||||
|
|
||||||
@@ -139,8 +145,11 @@ def resolve_from_ldd_output(libraries, output):
|
@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output):
|
||||||
if line.endswith(':'):
|
if line.endswith(':'):
|
||||||
continue
|
continue
|
||||||
for word in line.split():
|
for word in line.split():
|
||||||
- for library, pattern in patterns.items():
|
- for library, pattern in patterns.items():
|
||||||
- m = pattern.match(word)
|
- m = pattern.match(word)
|
||||||
+ for library, (pattern, guix_pattern) in patterns.items():
|
+ for library, (pattern, guix_pattern) in patterns.items():
|
||||||
+ if line.find('/gnu/store') != -1:
|
+ store_dir = os.environ.get("NIX_STORE", default="/gnu/store")
|
||||||
|
+ if line.find(store_dir) != -1:
|
||||||
+ m = guix_pattern.match(word)
|
+ m = guix_pattern.match(word)
|
||||||
+ else:
|
+ else:
|
||||||
+ m = pattern.match(word)
|
+ m = pattern.match(word)
|
||||||
|
|
Loading…
Reference in New Issue