git: 50e1b669d76a - main - devel/libnotify: fix build with lld 17 (take 2)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 26 Nov 2023 18:24:55 UTC
The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/ports/commit/?id=50e1b669d76a12aab4bc9646261cd426847dc825 commit 50e1b669d76a12aab4bc9646261cd426847dc825 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2023-11-26 18:09:08 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2023-11-26 18:21:23 +0000 devel/libnotify: fix build with lld 17 (take 2) The fix for bug 274108 broke running the notify-send command, resulting in: ld-elf.so.1: /usr/local/lib/libglib-2.0.so.0: Undefined symbol "environ" This is because libnotify uses the same linker version script for both its libnotify.so shared library and for its notify-send executable. The linker version script places all symbols that do not begin with "notify_" into the local scope, making them effectively hidden. This is fine for a shared library, but not for an executable, since it will also hide the symbols "environ" and "__progname", which are required for most programs. Fix it by not using the linker version script for the notify-send executable, so no required symbols are hidden. PR: 275104, 274108 MFH: 2023Q4 --- devel/libnotify/files/patch-libnotify_meson.build | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/devel/libnotify/files/patch-libnotify_meson.build b/devel/libnotify/files/patch-libnotify_meson.build new file mode 100644 index 000000000000..18b4cdc232a0 --- /dev/null +++ b/devel/libnotify/files/patch-libnotify_meson.build @@ -0,0 +1,18 @@ +--- libnotify/meson.build.orig 2023-02-17 21:20:15 UTC ++++ libnotify/meson.build +@@ -46,7 +46,6 @@ notify_dep = declare_dependency( + dependencies: libnotify_deps, + compile_args: libnotify_cflags, + sources: headers + [enum_types[1]] + [marshal[1]], +- link_args: libnotify_ldflags, + ) + + libnotify_lib = shared_library(LIBNAME, +@@ -55,6 +54,7 @@ libnotify_lib = shared_library(LIBNAME, + version: '@0@.@1@.@2@'.format(LT_CURRENT, LT_REVISION, LT_AGE), + soversion: LT_CURRENT, + install: true, ++ link_args: libnotify_ldflags, + ) + + libnotify_dep = declare_dependency(