aboutsummaryrefslogtreecommitdiff
path: root/depends/packages.md
diff options
context:
space:
mode:
authorCarl Dong <accounts@carldong.me>2019-04-18 13:49:11 -0400
committerCarl Dong <accounts@carldong.me>2019-05-28 11:02:42 -0400
commit683b7d7a3fc1b9240333faf3d04497aa61583016 (patch)
tree76237925723b5850a00f9703121a7883f84384d6 /depends/packages.md
parent14209286df4a91a0e6738268339ba667d868a11f (diff)
downloadbitcoin-683b7d7a3fc1b9240333faf3d04497aa61583016.tar.xz
depends: Purge libtool archives
We use pkg-config where we can, which generally replaces libtool at a higher level and does not have the same downsides as libtool. These archives sit in our depends tree with no purpose and pollute the final bitcoin build with massive overlinking.
Diffstat (limited to 'depends/packages.md')
-rw-r--r--depends/packages.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/depends/packages.md b/depends/packages.md
index ccdc858593..2c592885b6 100644
--- a/depends/packages.md
+++ b/depends/packages.md
@@ -151,6 +151,18 @@ Most autotools projects can be properly staged using:
$(MAKE) DESTDIR=$($(package)_staging_dir) install
+## Build outputs:
+
+In general, the output of a depends package should not contain any libtool
+archives. Instead, the package should output `.pc` (`pkg-config`) files where
+possible.
+
+From the [Gentoo Wiki entry](https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Handling_Libtool_Archives):
+
+> Libtool pulls in all direct and indirect dependencies into the .la files it
+> creates. This leads to massive overlinking, which is toxic to the Gentoo
+> ecosystem, as it leads to a massive number of unnecessary rebuilds.
+
## Secondary dependencies:
Secondary dependency packages relative to the bitcoin binaries/libraries (i.e.