diff --git a/media-plugins/calf/calf-0.90.3-r1.ebuild b/media-plugins/calf/calf-0.90.3-r2.ebuild similarity index 96% rename from media-plugins/calf/calf-0.90.3-r1.ebuild rename to media-plugins/calf/calf-0.90.3-r2.ebuild index f0c3d8cae4e90..0d4c5797eb81c 100644 --- a/media-plugins/calf/calf-0.90.3-r1.ebuild +++ b/media-plugins/calf/calf-0.90.3-r2.ebuild @@ -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() { diff --git a/media-plugins/calf/calf-9999.ebuild b/media-plugins/calf/calf-9999.ebuild index ac7a768dcf5cd..26b234a8a03ad 100644 --- a/media-plugins/calf/calf-9999.ebuild +++ b/media-plugins/calf/calf-9999.ebuild @@ -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() { diff --git a/media-plugins/calf/files/calf-0.90.3-fix-build-with-lld.patch b/media-plugins/calf/files/calf-0.90.3-fix-build-with-lld.patch new file mode 100644 index 0000000000000..451f1baff9e56 --- /dev/null +++ b/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 +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 +--- 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 + diff --git a/media-plugins/calf/files/calf-9999-fix-build-with-lld.patch b/media-plugins/calf/files/calf-9999-fix-build-with-lld.patch new file mode 100644 index 0000000000000..816da77f7d0db --- /dev/null +++ b/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 +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 +--- 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 +