The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=929f5966a9fd3d050c7b604513c6fb4ac9b5d335
commit 929f5966a9fd3d050c7b604513c6fb4ac9b5d335 Author: Lexi Winter <i...@freebsd.org> AuthorDate: 2025-08-22 23:50:20 +0000 Commit: Lexi Winter <i...@freebsd.org> CommitDate: 2025-08-23 00:57:23 +0000 packages: Improve handling of -lib packages For some packages (OpenSSL, Kerberos) we want to ship runtime libraries in a separate package, e.g. openssl and openssl-lib. Currently this is done using PACKAGE=openssl-lib, but that creates packages with strange names like openssl-lib-lib32. Instead, add a new LIB_PACKAGE option to bsd.lib.mk that causes runtime libraries to be placed in a new -lib subpackage. This significantly improves the set of packages we create; for example, OpenSSL goes from: FreeBSD-openssl FreeBSD-openssl-dbg FreeBSD-openssl-lib FreeBSD-openssl-lib-dbg FreeBSD-openssl-lib-dbg-lib32 FreeBSD-openssl-lib-dev FreeBSD-openssl-lib-dev-lib32 FreeBSD-openssl-lib-lib32 FreeBSD-openssl-lib-man FreeBSD-openssl-man to: FreeBSD-openssl FreeBSD-openssl-dbg FreeBSD-openssl-dbg-lib32 FreeBSD-openssl-dev FreeBSD-openssl-dev-lib32 FreeBSD-openssl-lib FreeBSD-openssl-lib32 FreeBSD-openssl-man While here, move /usr/bin/krb5-config and /usr/bin/compile_et into the kerberos-dev package. Reviewed by: des Differential Revision: https://reviews.freebsd.org/D51925 --- UPDATING | 7 +++++ krb5/Makefile.inc | 1 + krb5/include/Makefile | 2 -- krb5/include/Makefile.inc | 2 -- krb5/lib/Makefile.inc | 2 +- krb5/libexec/Makefile.inc | 2 +- krb5/usr.bin/Makefile.inc | 1 - krb5/usr.sbin/gss-server/Makefile | 2 -- krb5/usr.sbin/sim_server/Makefile | 2 -- krb5/usr.sbin/sserver/Makefile | 2 -- krb5/util/Makefile.inc | 2 ++ krb5/util/build-tools/Makefile | 3 +- krb5/util/compile_et/Makefile | 3 +- krb5/util/et/Makefile | 3 +- krb5/util/profile/Makefile | 2 -- krb5/util/ss/Makefile | 2 -- krb5/util/support/Makefile | 2 -- krb5/util/verto/Makefile | 2 -- lib/libcrypt/Makefile | 2 +- release/packages/generate-ucl.lua | 7 +++++ release/packages/generate-ucl.sh | 3 ++ release/packages/ucl/kerberos-lib-all.ucl | 4 --- release/packages/ucl/openssl-lib-all.ucl | 4 --- secure/lib/libcrypto/Makefile | 1 - secure/lib/libcrypto/Makefile.inc | 3 ++ secure/lib/libcrypto/engines/Makefile.inc | 3 +- secure/lib/libcrypto/modules/Makefile.inc | 3 +- secure/lib/libssl/Makefile | 1 - share/mk/bsd.lib.mk | 49 ++++++++++++++++++++++--------- 29 files changed, 68 insertions(+), 54 deletions(-) diff --git a/UPDATING b/UPDATING index da6089ad16d8..ddb2e7603b2a 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250823: + The set of pkgbase packages for Kerberos and OpenSSL has changed. + After updating past 250e77d4f0a5, you should check 'pkg orphans' + and remove any orphaned packages, then examine the output of + 'pkg install -r base -g FreeBSD-openssl\* FreeBSD-kerberos\*' + and install any new packages you need. + 20250823: To restore bridge(4)'s ABI compatibility with ifconfig from 14.x or earlier, the size of struct ifbreq has changed, so you must update diff --git a/krb5/Makefile.inc b/krb5/Makefile.inc index 6db4e8d964aa..512d153126e8 100644 --- a/krb5/Makefile.inc +++ b/krb5/Makefile.inc @@ -9,6 +9,7 @@ .include <src.opts.mk> +PACKAGE?= kerberos KRB5_VERSION= 1.22-final # MIT KRB5 uses KRB5_DIR. Heimdal uses KRB5DIR. diff --git a/krb5/include/Makefile b/krb5/include/Makefile index 759c81685da9..8ce743e95d95 100644 --- a/krb5/include/Makefile +++ b/krb5/include/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" diff --git a/krb5/include/Makefile.inc b/krb5/include/Makefile.inc index 5c21860b6157..8005a7b99e37 100644 --- a/krb5/include/Makefile.inc +++ b/krb5/include/Makefile.inc @@ -7,6 +7,4 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include "../Makefile.inc" diff --git a/krb5/lib/Makefile.inc b/krb5/lib/Makefile.inc index 50cacb9492ac..7fc36229a864 100644 --- a/krb5/lib/Makefile.inc +++ b/krb5/lib/Makefile.inc @@ -9,7 +9,7 @@ .include "../Makefile.inc" -PACKAGE?= kerberos-lib +LIB_PACKAGE= KRB5_KRB5LIBDIR= ${KRB5_SRCLIBDIR}/krb5 KRB5_K5CRYPTODIR= ${KRB5_SRCLIBDIR}/crypto diff --git a/krb5/libexec/Makefile.inc b/krb5/libexec/Makefile.inc index 9bec75eba9cb..b40d1999f23f 100644 --- a/krb5/libexec/Makefile.inc +++ b/krb5/libexec/Makefile.inc @@ -9,5 +9,5 @@ .include "../Makefile.inc" -PACKAGE?= kerberos-kdc +PACKAGE= kerberos-kdc BINDIR?= /usr/libexec diff --git a/krb5/usr.bin/Makefile.inc b/krb5/usr.bin/Makefile.inc index edd734628950..55e21f80936c 100644 --- a/krb5/usr.bin/Makefile.inc +++ b/krb5/usr.bin/Makefile.inc @@ -9,5 +9,4 @@ .include "../Makefile.inc" -PACKAGE?= kerberos BINDIR?= /usr/bin diff --git a/krb5/usr.sbin/gss-server/Makefile b/krb5/usr.sbin/gss-server/Makefile index 67a51edb45b3..6b56e11f0ac4 100644 --- a/krb5/usr.sbin/gss-server/Makefile +++ b/krb5/usr.sbin/gss-server/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos - PROG= gss-server LIBADD= gssapi_krb5 krb5 k5crypto com_err krb5profile krb5support sys diff --git a/krb5/usr.sbin/sim_server/Makefile b/krb5/usr.sbin/sim_server/Makefile index d46942e0cb91..ddeff682466f 100644 --- a/krb5/usr.sbin/sim_server/Makefile +++ b/krb5/usr.sbin/sim_server/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos - PROG= sim_server LIBADD= krb5 k5crypto com_err krb5profile krb5support sys diff --git a/krb5/usr.sbin/sserver/Makefile b/krb5/usr.sbin/sserver/Makefile index 67cdf9777742..ae5e120848ff 100644 --- a/krb5/usr.sbin/sserver/Makefile +++ b/krb5/usr.sbin/sserver/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos - PROG= sserver LIBADD= krb5 k5crypto com_err krb5profile krb5support sys diff --git a/krb5/util/Makefile.inc b/krb5/util/Makefile.inc index e9357fa4cc66..f1e61f498a4c 100644 --- a/krb5/util/Makefile.inc +++ b/krb5/util/Makefile.inc @@ -9,5 +9,7 @@ .include "../Makefile.inc" +LIB_PACKAGE= + SHLIBDIR?= /usr/lib SHLIB_MAJOR?= 122 diff --git a/krb5/util/build-tools/Makefile b/krb5/util/build-tools/Makefile index 53de0be92fd2..8bafbb777c07 100644 --- a/krb5/util/build-tools/Makefile +++ b/krb5/util/build-tools/Makefile @@ -7,12 +7,11 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include "../Makefile.inc" SCRIPTS= krb5-config.sh BINDIR?= /usr/bin +TAGS= dev MAN= krb5-config.1 diff --git a/krb5/util/compile_et/Makefile b/krb5/util/compile_et/Makefile index 015ef088d90f..fb87de3dd9c6 100644 --- a/krb5/util/compile_et/Makefile +++ b/krb5/util/compile_et/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos - .include "../Makefile.inc" SRC_ETDIR= ${KRB5_DIR}/util/et @@ -18,6 +16,7 @@ SCRIPTS= compile_et BINDIR?= /usr/bin MAN= compile_et.1 CLEANFILES= compile_et +TAGS+= dev compile_et: compile_et.sh sh ${SRC_ETDIR}/config_script ${SRC_ETDIR}/compile_et.sh \ diff --git a/krb5/util/et/Makefile b/krb5/util/et/Makefile index 0d474efa1e8e..35ac601629d7 100644 --- a/krb5/util/et/Makefile +++ b/krb5/util/et/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" @@ -44,6 +42,7 @@ ETSCRIPTS= et_c.awk \ ETSCRIPTSDIR= ${KRB5_ETDIR} ETSCRIPTSMODE= 0444 +ETSCRIPTSTAGS= dev .include <bsd.lib.mk> diff --git a/krb5/util/profile/Makefile b/krb5/util/profile/Makefile index 751d648fa58e..e62d66636161 100644 --- a/krb5/util/profile/Makefile +++ b/krb5/util/profile/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" diff --git a/krb5/util/ss/Makefile b/krb5/util/ss/Makefile index ac01f683ff67..2c48ccf56573 100644 --- a/krb5/util/ss/Makefile +++ b/krb5/util/ss/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" diff --git a/krb5/util/support/Makefile b/krb5/util/support/Makefile index f73f5d31990a..e2e677fee89d 100644 --- a/krb5/util/support/Makefile +++ b/krb5/util/support/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" diff --git a/krb5/util/verto/Makefile b/krb5/util/verto/Makefile index 66d9d8ef4e0b..3ae9da9df20b 100644 --- a/krb5/util/verto/Makefile +++ b/krb5/util/verto/Makefile @@ -7,8 +7,6 @@ # under sponsorship from the FreeBSD Foundation. # -PACKAGE= kerberos-lib - .include <src.opts.mk> .include "../Makefile.inc" diff --git a/lib/libcrypt/Makefile b/lib/libcrypt/Makefile index e939bae1bc25..2580c398155e 100644 --- a/lib/libcrypt/Makefile +++ b/lib/libcrypt/Makefile @@ -45,7 +45,7 @@ libcrypt.ald: ${.CURDIR}/${STATIC_LDSCRIPT} all: ${STATIC_LDSCRIPT} libcrypt.ald install-libcrypt.a: libcrypt.ald - ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -S -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${DEV_TAG_ARGS} -S -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} libcrypt.ald ${DESTDIR}${_LIBDIR}/lib${LIB}.a realinstall: install-libcrypt.a diff --git a/release/packages/generate-ucl.lua b/release/packages/generate-ucl.lua index a243c6ea7ad0..5637bbd3ad99 100755 --- a/release/packages/generate-ucl.lua +++ b/release/packages/generate-ucl.lua @@ -38,6 +38,10 @@ pkg_suffixes = { "This package contains 32-bit libraries for running 32-bit ".. "applications on a 64-bit host.", }, + { + "%-lib$", "(libraries)", + "This package contains runtime shared libraries.", + }, { "%-dev$", "(development files)", "This package contains development files for ".. @@ -98,6 +102,9 @@ function add_gen_dep(pkgname, pkggenname) if no_gen_deps[pkgname] ~= nil then return false end + if pkgname:match("%-lib$") ~= nil then + return false + end if pkggenname == "kernel" then return false end diff --git a/release/packages/generate-ucl.sh b/release/packages/generate-ucl.sh index 3078185a3c4e..a08840d5b321 100755 --- a/release/packages/generate-ucl.sh +++ b/release/packages/generate-ucl.sh @@ -49,6 +49,9 @@ main() { *-lib32) outname="${outname%%-lib32}" ;; + *-lib) + outname="${outname%%-lib}" + ;; *-man) outname="${outname%%-man}" ;; diff --git a/release/packages/ucl/kerberos-lib-all.ucl b/release/packages/ucl/kerberos-lib-all.ucl deleted file mode 100644 index b524563a976d..000000000000 --- a/release/packages/ucl/kerberos-lib-all.ucl +++ /dev/null @@ -1,4 +0,0 @@ -comment = "Kerberos libraries" -desc = <<EOD -Libraries requires to run programs that use Kerberos. -EOD diff --git a/release/packages/ucl/openssl-lib-all.ucl b/release/packages/ucl/openssl-lib-all.ucl deleted file mode 100644 index c81dd44855cd..000000000000 --- a/release/packages/ucl/openssl-lib-all.ucl +++ /dev/null @@ -1,4 +0,0 @@ -comment = "OpenSSL Libraries" -desc = <<EOD -OpenSSL Libraries -EOD diff --git a/secure/lib/libcrypto/Makefile b/secure/lib/libcrypto/Makefile index 7e2350fb33ea..f8f8d291ee9e 100644 --- a/secure/lib/libcrypto/Makefile +++ b/secure/lib/libcrypto/Makefile @@ -9,7 +9,6 @@ CFLAGS+= -DOPENSSL_NO_SCTP .include <bsd.own.mk> .include <src.opts.mk> -PACKAGE= openssl-lib LIB= crypto SHLIB_MAJOR= 35 VERSION_MAP= ${.CURDIR}/Version.map diff --git a/secure/lib/libcrypto/Makefile.inc b/secure/lib/libcrypto/Makefile.inc index f0ed4a5f3651..4d5e9c68a1fe 100644 --- a/secure/lib/libcrypto/Makefile.inc +++ b/secure/lib/libcrypto/Makefile.inc @@ -1,5 +1,8 @@ .include <bsd.own.mk> +PACKAGE= openssl +LIB_PACKAGE= + # OpenSSL version used for manual page generation .include "Makefile.version" diff --git a/secure/lib/libcrypto/engines/Makefile.inc b/secure/lib/libcrypto/engines/Makefile.inc index 777193ba3f9a..146c2f794eb6 100644 --- a/secure/lib/libcrypto/engines/Makefile.inc +++ b/secure/lib/libcrypto/engines/Makefile.inc @@ -1,4 +1,5 @@ -PACKAGE?= openssl-lib +PACKAGE?= openssl +LIB_PACKAGE= SHLIBDIR= ${LIBDIR}/engines-3 diff --git a/secure/lib/libcrypto/modules/Makefile.inc b/secure/lib/libcrypto/modules/Makefile.inc index 363b7f4bc766..4b3d9fc512ce 100644 --- a/secure/lib/libcrypto/modules/Makefile.inc +++ b/secure/lib/libcrypto/modules/Makefile.inc @@ -1,4 +1,5 @@ -PACKAGE?= openssl-lib +PACKAGE?= openssl +LIB_PACKAGE= SHLIBDIR= ${LIBDIR}/ossl-modules LCRYPTO_SRC= ${SRCTOP}/crypto/openssl diff --git a/secure/lib/libssl/Makefile b/secure/lib/libssl/Makefile index 682c7bbc2693..acb63549c1c8 100644 --- a/secure/lib/libssl/Makefile +++ b/secure/lib/libssl/Makefile @@ -3,7 +3,6 @@ LIB= ssl SHLIB_MAJOR= 35 VERSION_MAP= ${.CURDIR}/Version.map -PACKAGE= openssl-lib NO_LINT= diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index fa851984df91..6caad8956c14 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -52,11 +52,31 @@ TAGS+= lib${_libcompat} .if defined(NO_ROOT) .if !defined(TAGS) || ! ${TAGS:Mpackage=*} -TAGS+= package=${PACKAGE:Uutilities} +TAGS+= package=${PACKAGE:Uutilities} .endif -TAG_ARGS= -T ${TAGS:ts,:[*]} + +# By default, if PACKAGE=foo, then the native runtime libraries will go into +# the FreeBSD-foo package, and subpackages will be created for -dev, -lib32, +# and so on. If LIB_PACKAGE is set, then we also create a subpackage for +# runtime libraries with a -lib suffix. This is used when a package has +# libraries and some other content (e.g., executables) to allow consumers to +# depend on the libraries. +.if defined(LIB_PACKAGE) && ! ${TAGS:Mlib*} +.if !defined(PACKAGE) +.error LIB_PACKAGE cannot be used without PACKAGE +.endif + +LIB_TAG_ARGS= ${TAG_ARGS},lib +.else +LIB_TAG_ARGS= ${TAG_ARGS} .endif +TAG_ARGS= -T ${TAGS:ts,:[*]} + +DBG_TAG_ARGS= ${TAG_ARGS},dbg +DEV_TAG_ARGS= ${TAG_ARGS},dev +.endif # !defined(NO_ROOT) + # ELF hardening knobs .if ${MK_BIND_NOW} != "no" LDFLAGS+= -Wl,-znow @@ -355,7 +375,7 @@ _SHLINSTALLFLAGS:= ${_SHLINSTALLFLAGS${ie}} installpcfiles: installpcfiles-${pcfile} installpcfiles-${pcfile}: ${pcfile} - ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${DEV_TAG_ARGS} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} \ ${.ALLSRC} ${DESTDIR}${LIBDATADIR}/pkgconfig/ .endfor @@ -367,37 +387,38 @@ realinstall: _libinstall installpcfiles _debuginstall .ORDER: beforeinstall _libinstall _debuginstall _libinstall: .if defined(LIB) && !empty(LIB) && ${MK_INSTALLLIB} != "no" - ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${DEV_TAG_ARGS} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} lib${LIB_PRIVATE}${LIB}${_STATICLIB_SUFFIX}.a ${DESTDIR}${_LIBDIR}/ .endif .if defined(SHLIB_NAME) - ${INSTALL} ${TAG_ARGS} ${STRIP} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${LIB_TAG_ARGS} ${STRIP} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} ${_SHLINSTALLFLAGS} \ ${SHLIB_NAME} ${DESTDIR}${_SHLIBDIR}/ .if defined(SHLIB_LINK) .if commands(${SHLIB_LINK:R}.ld) - ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -S -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${DEV_TAG_ARGS} -S -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} ${SHLIB_LINK:R}.ld \ ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} .for _SHLIB_LINK_LINK in ${SHLIB_LDSCRIPT_LINKS} - ${INSTALL_LIBSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${TAG_ARGS} ${SHLIB_LINK} \ - ${DESTDIR}${_LIBDIR}/${_SHLIB_LINK_LINK} + ${INSTALL_LIBSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${LIB_TAG_ARGS} \ + ${SHLIB_LINK} ${DESTDIR}${_LIBDIR}/${_SHLIB_LINK_LINK} .endfor .else .if ${_SHLIBDIR} == ${_LIBDIR} .if ${SHLIB_LINK:Mlib*} - ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${TAG_ARGS:D${TAG_ARGS},dev} \ + ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${DEV_TAG_ARGS} \ ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} .else - ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ + ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${LIB_TAG_ARGS} \ + ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} .endif .else .if ${SHLIB_LINK:Mlib*} - ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${TAG_ARGS:D${TAG_ARGS},dev} \ + ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${DEV_TAG_ARGS} \ ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} .else - ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${TAG_ARGS} \ + ${INSTALL_RSYMLINK} ${_SHLINSTALLSYMLINKFLAGS} ${LIB_TAG_ARGS} \ ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} .endif .if exists(${DESTDIR}${_LIBDIR}/${SHLIB_NAME}) @@ -409,7 +430,7 @@ _libinstall: .endif # SHLIB_LINK .endif # SHIB_NAME .if defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB) - ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${INSTALL} ${DEV_TAG_ARGS} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ ${_INSTALLFLAGS} lib${LIB}_pic.a ${DESTDIR}${_LIBDIR}/ .endif .endif # !defined(INTERNALLIB) @@ -429,7 +450,7 @@ LINKGRP?= ${LIBGRP} LINKMODE?= ${LIBMODE} SYMLINKOWN?= ${LIBOWN} SYMLINKGRP?= ${LIBGRP} -LINKTAGS= dev +LINKTAGS= dev${_COMPAT_TAG} .include <bsd.links.mk> .if ${MK_MAN} != "no" && !defined(LIBRARIES_ONLY)