git: 929f5966a9fd - main - packages: Improve handling of -lib packages
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 23 Aug 2025 00:59:12 UTC
The branch main has been updated by ivy:
URL: https://cgit.FreeBSD.org/src/commit/?id=929f5966a9fd3d050c7b604513c6fb4ac9b5d335
commit 929f5966a9fd3d050c7b604513c6fb4ac9b5d335
Author: Lexi Winter <ivy@FreeBSD.org>
AuthorDate: 2025-08-22 23:50:20 +0000
Commit: Lexi Winter <ivy@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)