commit:     4fe48c3b8deae35fa9ddce073bb58a31245da2ef
Author:     Petr Vaněk <arkamar <AT> gentoo <DOT> org>
AuthorDate: Fri Aug  2 08:55:16 2024 +0000
Commit:     Petr Vaněk <arkamar <AT> gentoo <DOT> org>
CommitDate: Fri Aug  2 09:12:40 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4fe48c3b

net-im/bitlbee-facebook: fix make --shuffle problem

Closes: https://bugs.gentoo.org/883263
Signed-off-by: Petr Vaněk <arkamar <AT> gentoo.org>

 .../bitlbee-facebook-1.2.2-r1.ebuild               |  4 +++
 .../bitlbee-facebook-1.2.2-fix-make-deps.patch     | 38 ++++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2-r1.ebuild 
b/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2-r1.ebuild
index 7563f3db8c1c..b4093a7b8c5e 100644
--- a/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2-r1.ebuild
+++ b/net-im/bitlbee-facebook/bitlbee-facebook-1.2.2-r1.ebuild
@@ -28,6 +28,10 @@ BDEPEND="
        dev-util/glib-utils
        virtual/pkgconfig"
 
+PATCHES=(
+       "${FILESDIR}/${P}-fix-make-deps.patch"
+)
+
 src_prepare() {
        default
        eautoreconf

diff --git 
a/net-im/bitlbee-facebook/files/bitlbee-facebook-1.2.2-fix-make-deps.patch 
b/net-im/bitlbee-facebook/files/bitlbee-facebook-1.2.2-fix-make-deps.patch
new file mode 100644
index 000000000000..458302a06ab8
--- /dev/null
+++ b/net-im/bitlbee-facebook/files/bitlbee-facebook-1.2.2-fix-make-deps.patch
@@ -0,0 +1,38 @@
+From b63e0697ee6809e7460ebc4918c72fb99b256bba Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <[email protected]>
+Date: Sun, 27 Nov 2022 17:15:37 +0000
+Subject: [PATCH] facebook/Makefile.am: add generated files to BUILT_SOURCES
+
+Without the change there is no giarantee that facebook-marshal.h
+gets built before it's dependencies. On `make-4.4` `--shuffle` is
+able to catch missing dependency as:
+
+    $ make --shuffle
+      CC       facebook_la-facebook-mqtt.lo
+    facebook-mqtt.c:23:10: fatal error: facebook-marshal.h: No such file or 
directory
+       23 | #include "facebook-marshal.h"
+          |          ^~~~~~~~~~~~~~~~~~~~
+
+Automake's BUILT_SOURCES builds all sources before first object file.
+The change pulls it there.
+
+Before the change 1-2 builds triggered `make --shuffle` failure.
+After the change 20 sequential rebuilds succeeded without failures.
+
+Upstream-PR: https://github.com/bitlbee/bitlbee-facebook/pull/217
+
+diff --git a/facebook/Makefile.am b/facebook/Makefile.am
+index 779abbe..f28bf4e 100644
+--- a/facebook/Makefile.am
++++ b/facebook/Makefile.am
+@@ -38,6 +38,10 @@ facebook_la_LDFLAGS += -module -avoid-version
+ EXTRA_DIST = \
+       marshaller.list
+ 
++BUILT_SOURCES = \
++      facebook-marshal.c \
++      facebook-marshal.h
++
+ CLEANFILES = \
+       facebook-marshal.c \
+       facebook-marshal.h

Reply via email to