commit:     89c20c8ae004c2588546fdd02a69117c9c8a7348
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Sun Jul 10 16:36:53 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 10 22:49:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89c20c8a

dev-libs/libprelude: Fix the build with slibtool

Closes: https://bugs.gentoo.org/790647
Signed-off-by: orbea <orbea <AT> riseup.net>
Closes: https://github.com/gentoo/gentoo/pull/26328
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/libprelude-5.2.0-slibtool.patch          | 43 ++++++++++++++++++++++
 dev-libs/libprelude/libprelude-5.2.0-r10.ebuild    |  1 +
 2 files changed, 44 insertions(+)

diff --git a/dev-libs/libprelude/files/libprelude-5.2.0-slibtool.patch 
b/dev-libs/libprelude/files/libprelude-5.2.0-slibtool.patch
new file mode 100644
index 000000000000..6a1bed0d5c0a
--- /dev/null
+++ b/dev-libs/libprelude/files/libprelude-5.2.0-slibtool.patch
@@ -0,0 +1,43 @@
+Bug: https://bugs.gentoo.org/790647
+
+From: orbea <[email protected]>
+Date: Sun, 10 Jul 2022 09:26:59 -0700
+Subject: [PATCH] Fix the build with slibtool
+
+The build system should not use the .libs directory which is for
+internal use by the libtool implementation only. GNU libtool is far less
+strict than slibtool in these cases.
+
+--- a/bindings/c++/Makefile.am
++++ b/bindings/c++/Makefile.am
+@@ -21,7 +21,7 @@ libpreludecpp_la_SOURCES = \
+       prelude-log.cxx
+ 
+ libpreludecpp_la_LDFLAGS = -no-undefined -version-info @LIBPRELUDECPP_SONAME@
+-libpreludecpp_la_LIBADD  = $(top_builddir)/src/.libs/libprelude.la
++libpreludecpp_la_LIBADD  = $(top_builddir)/src/libprelude.la
+ libpreludecpp_la_CPPFLAGS = -I$(top_builddir) -I$(top_builddir)/src/include 
-I$(top_srcdir)/src/include -I$(top_builddir)/src/libprelude-error 
-I$(top_builddir)/bindings/c++/include -I$(top_srcdir)/bindings/c++/include 
+ 
+ endif
+--- a/bindings/lua/Makefile.am
++++ b/bindings/lua/Makefile.am
+@@ -10,7 +10,7 @@ dist_swigdata_DATA = libpreludecpp-lua.i
+ AM_CPPFLAGS = -I@top_srcdir@ -I@top_builddir@/src/include 
-I@top_srcdir@/src/include -I@top_builddir@/src/libprelude-error 
-I@top_srcdir@/bindings/c++/include @LUA_CFLAGS@ -I@top_srcdir@/libmissing 
-I@top_builddir@/libmissing
+ 
+ prelude_la_LDFLAGS = -module -avoid-version
+-prelude_la_LIBADD = $(top_builddir)/bindings/c++/.libs/libpreludecpp.la
++prelude_la_LIBADD = $(top_builddir)/bindings/c++/libpreludecpp.la
+ prelude_la_SOURCES = prelude.cxx
+ preludedir = $(libdir)/lua/@LUA_VERSION@
+ prelude_LTLIBRARIES = prelude.la
+--- a/bindings/ruby/Makefile.am
++++ b/bindings/ruby/Makefile.am
+@@ -9,7 +9,7 @@ EXTRA_DIST = libpreludecpp-ruby.i Prelude.cxx
+ rbexec_LTLIBRARIES = Prelude.la
+ Prelude_la_CPPFLAGS = $(RUBY_INCLUDES) $(RUBY_CCFLAGS) -I@top_builddir@ 
-I$(top_srcdir)/src/include -I$(top_builddir)/src/include 
-I@top_builddir@/src/libprelude-error -I$(top_srcdir)/bindings/c++/include
+ Prelude_la_LDFLAGS = -module -avoid-version
+-Prelude_la_LIBADD = $(top_builddir)/bindings/c++/.libs/libpreludecpp.la 
$(RUBY_LIBS)
++Prelude_la_LIBADD = $(top_builddir)/bindings/c++/libpreludecpp.la $(RUBY_LIBS)
+ nodist_Prelude_la_SOURCES = Prelude.cxx
+ 
+ Prelude.cxx: $(top_srcdir)/bindings/c++/include/*.hxx 
$(top_srcdir)/bindings/libpreludecpp.i libpreludecpp-ruby.i 

diff --git a/dev-libs/libprelude/libprelude-5.2.0-r10.ebuild 
b/dev-libs/libprelude/libprelude-5.2.0-r10.ebuild
index 161d051dc157..aabb447f64d2 100644
--- a/dev-libs/libprelude/libprelude-5.2.0-r10.ebuild
+++ b/dev-libs/libprelude/libprelude-5.2.0-r10.ebuild
@@ -44,6 +44,7 @@ PATCHES=(
        "${FILESDIR}/${PN}-4.0.0-fix-python-bindings.patch"
        "${FILESDIR}/${PN}-5.1.0-fix_gtkdoc_1.32.patch"
        "${FILESDIR}/${PN}-5.2.0-luabindings_liblua.patch"
+       "${FILESDIR}/${PN}-5.2.0-slibtool.patch" # 790647
 )
 
 src_prepare() {

Reply via email to