Skip to content

Commit

Permalink
media-plugins/calf: Fix build with LLD
Browse files Browse the repository at this point in the history
Upstream-PR: calf-studio-gear/calf#332
Closes: https://bugs.gentoo.org/740158
Signed-off-by: Violet Purcell <vimproved@inventati.org>
Signed-off-by: Sam James <sam@gentoo.org>
  • Loading branch information
vimproved authored and thesamesam committed Sep 22, 2023
1 parent acf9acf commit 308d60b
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 0 deletions.
Expand Up @@ -46,6 +46,7 @@ PATCHES=(
"${FILESDIR}/${PN}-0.90.1-no-automagic.patch"
"${FILESDIR}/${PN}-0.90.1-htmldir.patch"
"${FILESDIR}/${PN}-0.90.1-desktop.patch"
"${FILESDIR}/${PN}-0.90.3-fix-build-with-lld.patch"
)

src_prepare() {
Expand Down
1 change: 1 addition & 0 deletions media-plugins/calf/calf-9999.ebuild
Expand Up @@ -46,6 +46,7 @@ PATCHES=(
"${FILESDIR}/${PN}-0.90.1-no-automagic.patch"
"${FILESDIR}/${PN}-0.90.1-htmldir.patch"
"${FILESDIR}/${PN}-0.90.1-desktop.patch"
"${FILESDIR}/${PN}-9999-fix-build-with-lld.patch"
)

src_prepare() {
Expand Down
26 changes: 26 additions & 0 deletions media-plugins/calf/files/calf-0.90.3-fix-build-with-lld.patch
@@ -0,0 +1,26 @@
From https://github.com/calf-studio-gear/calf/pull/332/commits/bdaaa92dd82e2425e4683b9d496370c5880e3b3e Mon Sep 17 00:00:00 2001
From: Violet Purcell <vimproved@inventati.org>
Date: Thu, 21 Sep 2023 19:08:39 -0400
Subject: [PATCH] Fix build with LLD

LLVM's LLD handles the -retain-symbols-file option (used by
-export-symbols-regex in libtool) differently from GNU ld, causing
undefined references during link. This commit removes the
-export-symbols-regex option from libcalf_la_LDFLAGS since by default
libtool exports all symbols anyway, so it should not be necessary.

Signed-off-by: Violet Purcell <vimproved@inventati.org>
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,7 +42,7 @@ libcalf_la_LIBADD = $(FLUIDSYNTH_DEPS_LIBS) $(GLIB_DEPS_LIBS)
if USE_DEBUG
calf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static
else
-calf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static -export-symbols-regex "lv2_descriptor"
+calf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static
endif

if USE_LV2_GUI
--
2.42.0

26 changes: 26 additions & 0 deletions media-plugins/calf/files/calf-9999-fix-build-with-lld.patch
@@ -0,0 +1,26 @@
From https://github.com/calf-studio-gear/calf/pull/332/commits/bdaaa92dd82e2425e4683b9d496370c5880e3b3e Mon Sep 17 00:00:00 2001
From: Violet Purcell <vimproved@inventati.org>
Date: Thu, 21 Sep 2023 19:08:39 -0400
Subject: [PATCH] Fix build with LLD

LLVM's LLD handles the -retain-symbols-file option (used by
-export-symbols-regex in libtool) differently from GNU ld, causing
undefined references during link. This commit removes the
-export-symbols-regex option from libcalf_la_LDFLAGS since by default
libtool exports all symbols anyway, so it should not be necessary.

Signed-off-by: Violet Purcell <vimproved@inventati.org>
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,7 +42,7 @@ libcalf_la_LIBADD = $(FLUIDSYNTH_DEPS_LIBS) $(GLIB_DEPS_LIBS)
if USE_DEBUG
libcalf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static
else
-libcalf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static -export-symbols-regex "lv2_descriptor"
+libcalf_la_LDFLAGS = -rpath $(pkglibdir) -avoid-version -module -lexpat -disable-static
endif

if USE_LV2_GUI
--
2.42.0

0 comments on commit 308d60b

Please sign in to comment.