Skip to content
Snippets Groups Projects
Commit db55aaa0 authored by Thomas Guillem's avatar Thomas Guillem Committed by Hugo Beauzée-Luyssen
Browse files

build: use DYLD_LIBRARY_PATH on macOS

cf. https://developer.apple.com/library/archive/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/DynamicLibraryUsageGuidelines.html#//apple_ref/doc/uid/TP40001928-SW12



"""
When the library name is a filename (that is, when it doesn’t include
directory names), the dynamic loader searches for the library in several
locations until it finds it, in the following order:

 - $LD_LIBRARY_PATH
 - $DYLD_LIBRARY_PATH
 - The process’s working directory
 - $DYLD_FALLBACK_LIBRARY_PATH

When the library name contains at least one directory name, that is,
when the name is a pathname (relative or fully qualified), the dynamic
loader searches for the library in the following order:

 - $DYLD_LIBRARY_PATH using the filename
 - The given pathname
 - $DYLD_FALLBACK_LIBRARY_PATH using the filename
 """

Conclusion: DYLD_LIBRARY_PATH on macOS behave like LD_LIBRARY_PATH on
Linux but LD_LIBRARY_PATH on macOS has a different behavior than
LD_LIBRARY_PATH on Linux, so DYLD_LIBRARY_PATH should be used on macOS.
Specially since we can't really control if the library name will include
a path or not (relative or absolute).

(cherry picked from commit abbe7f3b)
Signed-off-by: default avatarMarvin Scholz <epirat07@gmail.com>
parent fb1519ba
No related branches found
No related tags found
2 merge requests!3533Backport MR 3236 to 3.0.x,!976[3.0.x] build: use DYLD_LIBRARY_PATH on macOS
Pipeline #164805 passed with stage
in 23 minutes and 4 seconds
......@@ -171,6 +171,7 @@ install-exec-hook:
if test "$(build)" = "$(host)"; then \
PATH="$(DESTDIR)$(bindir):$$PATH" \
LD_LIBRARY_PATH="$(DESTDIR)$(libdir):$$LD_LIBRARY_PATH" \
DYLD_LIBRARY_PATH="$(DESTDIR)$(libdir):$$DYLD_LIBRARY_PATH" \
"$(DESTDIR)$(vlclibdir)/vlc-cache-gen$(EXEEXT)" \
"$(DESTDIR)$(vlclibdir)/plugins" ; \
else \
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment