commit: 665fca34ff359676b9ebe0f855f3716ad85be312
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 12 09:41:38 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Apr 12 09:41:58 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=665fca34
sys-fs/btrfs-progs: fix btrfs.static linking, bug #652966
btrfs.static was not linked against internal libbtrfsutil:
https://www.spinics.net/lists/linux-btrfs/msg76763.html
This caused link failure due to unresolved symbols.
Reported-by: Attila Tóth
Closes: https://bugs.gentoo.org/652966
Package-Manager: Portage-2.3.28, Repoman-2.3.9
sys-fs/btrfs-progs/btrfs-progs-4.16.ebuild | 4 ++++
.../files/btrfs-progs-4.16-static-linkage.patch | 27 ++++++++++++++++++++++
2 files changed, 31 insertions(+)
diff --git a/sys-fs/btrfs-progs/btrfs-progs-4.16.ebuild
b/sys-fs/btrfs-progs/btrfs-progs-4.16.ebuild
index 0936ade7591..8d3f9db2dd2 100644
--- a/sys-fs/btrfs-progs/btrfs-progs-4.16.ebuild
+++ b/sys-fs/btrfs-progs/btrfs-progs-4.16.ebuild
@@ -72,6 +72,10 @@ fi
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+PATCHES=(
+ "${FILESDIR}"/${P}-static-linkage.patch
+)
+
pkg_setup() {
use python && python-single-r1_pkg_setup
}
diff --git a/sys-fs/btrfs-progs/files/btrfs-progs-4.16-static-linkage.patch
b/sys-fs/btrfs-progs/files/btrfs-progs-4.16-static-linkage.patch
new file mode 100644
index 00000000000..b8a7d8b79f0
--- /dev/null
+++ b/sys-fs/btrfs-progs/files/btrfs-progs-4.16-static-linkage.patch
@@ -0,0 +1,27 @@
+https://www.spinics.net/lists/linux-btrfs/msg76763.html
+Reported-by: Attila Tóth
+Bug: https://bugs.gentoo.org/652966
+diff --git a/Makefile b/Makefile
+index 5ba76d2..dc3a31a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -264,6 +264,7 @@ static_libbtrfs_objects = $(patsubst %.o, %.static.o,
$(libbtrfs_objects))
+ static_convert_objects = $(patsubst %.o, %.static.o, $(convert_objects))
+ static_mkfs_objects = $(patsubst %.o, %.static.o, $(mkfs_objects))
+ static_image_objects = $(patsubst %.o, %.static.o, $(image_objects))
++static_libbtrfsutil_objects = $(patsubst %.o, %.static.o,
$(libbtrfsutil_objects))
+
+ libs_shared = libbtrfs.so.0.1 libbtrfsutil.so.$(libbtrfsutil_version)
+ libs_static = libbtrfs.a libbtrfsutil.a
+@@ -453,7 +454,7 @@ btrfs: btrfs.o $(objects) $(cmds_objects) $(libs_static)
+ @echo " [LD] $@"
+ $(Q)$(CC) -o $@ $^ $(LDFLAGS) $(LIBS) $(LIBS_COMP)
+
+-btrfs.static: btrfs.static.o $(static_objects) $(static_cmds_objects)
$(static_libbtrfs_objects)
++btrfs.static: btrfs.static.o $(static_objects) $(static_cmds_objects)
$(static_libbtrfs_objects) $(static_libbtrfsutil_objects)
+ @echo " [LD] $@"
+ $(Q)$(CC) -o $@ $^ $(STATIC_LDFLAGS) $(STATIC_LIBS) $(STATIC_LIBS_COMP)
+
+--
+2.17.0
+