From e60861eb41ca9d141a0d967db3ecbe2b2909c300 Mon Sep 17 00:00:00 2001 From: Konstantin Belousov Date: Thu, 27 Nov 2025 18:41:29 +0200 Subject: [PATCH] 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 --- share/mk/bsd.lib.mk | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 159957b6300..e3b3d760ff2 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -1,3 +1,18 @@ +# If INTERNALLIB is defined, we build lib.a and lib_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$(LIBDIR) to CFLAGS. +# +# If PRIVATELIB is defined, we build and install both libprivate.a +# and libprivate.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/. +# +# 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 .include .include