aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2025-11-27 16:41:29 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2025-11-27 19:53:19 +0000
commite60861eb41ca9d141a0d967db3ecbe2b2909c300 (patch)
tree6fc9ccb8c0c8a9adeea6741597c79d0237a347b5
parent257da67d2808b7abf6c53569532ccf26db3008b0 (diff)
bsd.lib.mk: document INTERNALLIB and PRIVATELIB
Reviewed by: des, dim, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D53948
-rw-r--r--share/mk/bsd.lib.mk15
1 files changed, 15 insertions, 0 deletions
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
index 159957b6300b..e3b3d760ff28 100644
--- a/share/mk/bsd.lib.mk
+++ b/share/mk/bsd.lib.mk
@@ -1,3 +1,18 @@
+# If INTERNALLIB is defined, we build lib<name>.a and lib<name>_pie.a,
+# i.e. only static archives without dso, in both non-PIE and PIE variants,
+# suitable for static linking into binaries.
+# INTERNALLIB library headers are not installed. A component that uses
+# the library should add explicit -I$(LIB<name>DIR) to CFLAGS.
+#
+# If PRIVATELIB is defined, we build and install both libprivate<name>.a
+# and libprivate<name>.so, so the library can be linked dynamically, but
+# cannot be picked up by third-party configure scripts.
+# PRIVATELIB library headers are installed into include/private/<name>.
+#
+# If neither of control variables are defined, we install headers into
+# include/, and both non-pic static and shared libraries under the defined
+# name.
+
.include <bsd.init.mk>
.include <bsd.compiler.mk>
.include <bsd.linker.mk>