Home | History | Annotate | Download | only in pam_ssh
History log of /src/lib/libpam/modules/pam_ssh/Makefile
RevisionDateAuthorComments
 1.15  17-Dec-2025  riastradh openssh: Do build and install compat libssh after all.

Even though it's not exposed for applications to _link_ against, it
is used by the dynamically _loadable_ pam_ssh module, which exists as
a compat module and therefore needs libssh as a compat library to be
installed somewhere. That somewhere will be
/usr/lib/${COMPAT_ARCH}/private.

Should fix problems like:

dependall ===> compat/sparc64/sparc/../../../lib/libpam/modules/pam_ssh
nbmake[11]: don't know how to make /home/source/ab/HEAD/src/crypto/external/bsd/openssh/lib/libssh.a. Stop

Verified in an amd64 build that the compat i386 pam_ssh.so is linked
correctly:

(chroot HEAD)# ldd /usr/lib/i386/security/pam_ssh.so.4
/usr/lib/i386/security/pam_ssh.so.4:
-lssh.50 => /usr/lib/i386/private/libssh.so.50
-lcrypto.16 => /usr/lib/i386/libcrypto.so.16
-lcrypt.1 => /usr/lib/i386/libcrypt.so.1
-lgcc_s.1 => /usr/lib/i386/libgcc_s.so.1
-lc.12 => /usr/lib/i386/libc.so.12
-lz.1 => /usr/lib/i386/libz.so.1

PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib
 1.14  13-Jul-2025  christos branches: 1.14.2;
Get ready to handle the openssl move from bsd -> apache2
 1.13  01-Mar-2020  christos branches: 1.13.10;
Redo the sshsk_sign() stuff properly, but putting the helper in libssh.so
 1.12  01-Mar-2020  christos Add the sign client part.
 1.11  04-Feb-2018  christos branches: 1.11.4; 1.11.6;
switch everyone to openssl.old
 1.10  20-Jul-2009  christos branches: 1.10.8; 1.10.14; 1.10.20;
use new openssh tree
 1.9  20-Jul-2009  christos use the proper libcrypto
 1.8  09-Jun-2009  mrg build libnetpgp and libssh earlier.
look for libssh in the right place.
 1.7  27-Oct-2008  mrg use LIBDPLIBS+= not =.
 1.6  27-Oct-2008  mrg don't set LIBDPLIBS in libpam/modules/Makefile - it is not necessary
and it interferes with the compat lib build. don't use LIB_ROOT_DIR.
 1.5  03-Jan-2005  lukem Build & install pam_ssh.so.0 now that libssh is available for use.
 1.4  29-Dec-2004  lukem Use LIBDPLIBS to provide the list of libraries for the modules to depend
upon, because:
* it's MUCH quicker; no need to calculate the OBJDIRS of every library
we might require in every subdir.
(make obj drops from 21s to 3s on my system.)
* it's more robust when building to a fresh DESTDIR.
 1.3  29-Dec-2004  christos Link with libraries from the source build directory.
 1.2  12-Dec-2004  christos - NetBSD build glue
- Warning fixes
- RCSID's
 1.1  12-Dec-2004  christos branches: 1.1.1;
Initial revision
 1.1.1.1  12-Dec-2004  christos - Import freebsd's version of libpam as of today (20041212).
- Did not import opie, passwdqc, tacplus. We need to decide what to do
with them.
- Imported radius and ssh, although they will not work until we
import libradius and re-structure our tree to install libssh.
 1.10.20.1  15-Aug-2017  snj Apply patch (requested by mrg in ticket #1468):
Update OpenSSH to 7.5.
 1.10.14.1  15-Aug-2017  snj Apply patch (requested by mrg in ticket #1468):
Update OpenSSH to 7.5.
 1.10.8.1  15-Aug-2017  snj Apply patch (requested by mrg in ticket #1468):
Update OpenSSH to 7.5.
 1.11.6.1  25-Dec-2023  martin Pull up the following, requested by kim in ticket #1780:

crypto/external/bsd/openssh/Makefile.inc up to 1.15 (+patch)
crypto/external/bsd/openssh/bin/Makefile.inc up to 1.4
crypto/external/bsd/openssh/bin/scp/Makefile up to 1.6
crypto/external/bsd/openssh/bin/sftp/Makefile up to 1.11
crypto/external/bsd/openssh/bin/sftp-server/Makefile up to 1.4
crypto/external/bsd/openssh/bin/ssh/Makefile up to 1.20
crypto/external/bsd/openssh/bin/ssh-add/Makefile up to 1.3
crypto/external/bsd/openssh/bin/ssh-agent/Makefile up to 1.7
crypto/external/bsd/openssh/bin/ssh-keygen/Makefile up to 1.10
crypto/external/bsd/openssh/bin/ssh-keyscan/Makefile up to 1.6
crypto/external/bsd/openssh/bin/ssh-pkcs11-helper/Makefile up to 1.4
crypto/external/bsd/openssh/bin/sshd/Makefile up to 1.27 (+patch)
crypto/external/bsd/openssh/dist/PROTOCOL.sshsig up to 1.1.1.2
crypto/external/bsd/openssh/dist/srclimit.c up to 1.3
crypto/external/bsd/openssh/dist/sftp-realpath.c up to 1.3
crypto/external/bsd/openssh/dist/sntrup761.c up to 1.3
crypto/external/bsd/openssh/dist/sntrup761.sh up to 1.1.1.2
crypto/external/bsd/openssh/dist/sshsig.c up to 1.12
crypto/external/bsd/openssh/dist/sshsig.h up to 1.1.1.5
crypto/external/bsd/openssh/dist/addr.c up to 1.6
crypto/external/bsd/openssh/dist/PROTOCOL.u2f up to 1.1.1.3
crypto/external/bsd/openssh/dist/sk-api.h up to 1.1.1.6
crypto/external/bsd/openssh/dist/sk-usbhid.c up to 1.9
crypto/external/bsd/openssh/dist/ssh-ecdsa-sk.c up to 1.4
crypto/external/bsd/openssh/dist/ssh-ed25519-sk.c up to 1.5
crypto/external/bsd/openssh/dist/ssh-sk-client.c up to 1.6
crypto/external/bsd/openssh/dist/ssh-sk-helper.8 up to 1.1.1.2
crypto/external/bsd/openssh/dist/ssh-sk-helper.c up to 1.7
crypto/external/bsd/openssh/dist/ssh-sk.c up to 1.8
crypto/external/bsd/openssh/dist/ssh-sk.h up to 1.1.1.2
crypto/external/bsd/openssh/dist/sshbuf-io.c up to 1.2
crypto/external/bsd/openssh/dist/addr.h up to 1.1.1.2
crypto/external/bsd/openssh/dist/kexsntrup761x25519.c up to 1.3
crypto/external/bsd/openssh/dist/cipher-chachapoly-libcrypto.c up to 1.3
crypto/external/bsd/openssh/dist/srclimit.h up to 1.1.1.1
crypto/external/bsd/openssh/dist/auth2-pubkeyfile.c up to 1.3
crypto/external/bsd/openssh/dist/sftp-usergroup.c up to 1.3
crypto/external/bsd/openssh/dist/sftp-usergroup.h up to 1.1.1.1
crypto/external/bsd/openssh/dist/ed25519.sh up to 1.1.1.1
crypto/external/bsd/openssh/dist/crc32.c delete
crypto/external/bsd/openssh/dist/crc32.h delete
crypto/external/bsd/openssh/dist/fe25519.c delete
crypto/external/bsd/openssh/dist/fe25519.h delete
crypto/external/bsd/openssh/dist/ge25519.c delete
crypto/external/bsd/openssh/dist/ge25519.h delete
crypto/external/bsd/openssh/dist/ge25519_base.data delete
crypto/external/bsd/openssh/dist/kexsntrup4591761x25519.c delete
crypto/external/bsd/openssh/dist/sc25519.c delete
crypto/external/bsd/openssh/dist/sc25519.h delete
crypto/external/bsd/openssh/dist/sntrup4591761.c delete
crypto/external/bsd/openssh/dist/sntrup4591761.sh delete
crypto/external/bsd/openssh/dist/uuencode.c delete
crypto/external/bsd/openssh/dist/uuencode.h delete
crypto/external/bsd/openssh/dist/verify.c delete
crypto/external/bsd/openssh/dist/LICENCE up to 1.7
crypto/external/bsd/openssh/dist/PROTOCOL up to 1.23
crypto/external/bsd/openssh/dist/PROTOCOL.agent up to 1.15
crypto/external/bsd/openssh/dist/PROTOCOL.certkeys up to 1.13
crypto/external/bsd/openssh/dist/PROTOCOL.chacha20poly1305 up to 1.1.1.4
crypto/external/bsd/openssh/dist/PROTOCOL.key up to 1.1.1.3
crypto/external/bsd/openssh/dist/PROTOCOL.krl up to 1.1.1.5
crypto/external/bsd/openssh/dist/PROTOCOL.mux up to 1.12
crypto/external/bsd/openssh/dist/addrmatch.c up to 1.15
crypto/external/bsd/openssh/dist/auth-krb5.c up to 1.16
crypto/external/bsd/openssh/dist/auth-options.c up to 1.29
crypto/external/bsd/openssh/dist/auth-options.h up to 1.15
crypto/external/bsd/openssh/dist/auth-pam.c up to 1.21
crypto/external/bsd/openssh/dist/auth-passwd.c up to 1.13
crypto/external/bsd/openssh/dist/auth-rhosts.c up to 1.16
crypto/external/bsd/openssh/dist/auth.c up to 1.34
crypto/external/bsd/openssh/dist/auth.h up to 1.23
crypto/external/bsd/openssh/dist/auth2-chall.c up to 1.19
crypto/external/bsd/openssh/dist/auth2-gss.c up to 1.17
crypto/external/bsd/openssh/dist/auth2-hostbased.c up to 1.23
crypto/external/bsd/openssh/dist/auth2-kbdint.c up to 1.15
crypto/external/bsd/openssh/dist/auth2-krb5.c up to 1.10
crypto/external/bsd/openssh/dist/auth2-none.c up to 1.14
crypto/external/bsd/openssh/dist/auth2-passwd.c up to 1.16
crypto/external/bsd/openssh/dist/auth2-pubkey.c up to 1.34
crypto/external/bsd/openssh/dist/auth2.c up to 1.29
crypto/external/bsd/openssh/dist/authfd.c up to 1.27
crypto/external/bsd/openssh/dist/authfd.h up to 1.17
crypto/external/bsd/openssh/dist/authfile.c up to 1.28
crypto/external/bsd/openssh/dist/authfile.h up to 1.10
crypto/external/bsd/openssh/dist/canohost.c up to 1.16
crypto/external/bsd/openssh/dist/chacha.c up to 1.6
crypto/external/bsd/openssh/dist/chacha.h up to 1.3
crypto/external/bsd/openssh/dist/channels.c up to 1.42
crypto/external/bsd/openssh/dist/channels.h up to 1.26
crypto/external/bsd/openssh/dist/cipher-chachapoly.c up to 1.7
crypto/external/bsd/openssh/dist/cipher-chachapoly.h up to 1.3
crypto/external/bsd/openssh/dist/cipher.c up to 1.21
crypto/external/bsd/openssh/dist/cipher.h up to 1.17
crypto/external/bsd/openssh/dist/clientloop.c up to 1.39
crypto/external/bsd/openssh/dist/clientloop.h up to 1.18
crypto/external/bsd/openssh/dist/compat.c up to 1.26
crypto/external/bsd/openssh/dist/compat.h up to 1.18
crypto/external/bsd/openssh/dist/crypto_api.h up to 1.5
crypto/external/bsd/openssh/dist/dh.c up to 1.20
crypto/external/bsd/openssh/dist/dh.h up to 1.13
crypto/external/bsd/openssh/dist/digest-libc.c up to 1.8
crypto/external/bsd/openssh/dist/digest-openssl.c up to 1.9
crypto/external/bsd/openssh/dist/dispatch.c up to 1.11
crypto/external/bsd/openssh/dist/dns.c up to 1.23
crypto/external/bsd/openssh/dist/dns.h up to 1.13
crypto/external/bsd/openssh/dist/ed25519.c up to 1.6
crypto/external/bsd/openssh/dist/fatal.c up to 1.7
crypto/external/bsd/openssh/dist/getrrsetbyname.c up to 1.6
crypto/external/bsd/openssh/dist/gss-genr.c up to 1.11
crypto/external/bsd/openssh/dist/gss-serv.c up to 1.15
crypto/external/bsd/openssh/dist/hash.c up to 1.7
crypto/external/bsd/openssh/dist/hmac.c up to 1.8
crypto/external/bsd/openssh/dist/hostfile.c up to 1.23
crypto/external/bsd/openssh/dist/hostfile.h up to 1.11
crypto/external/bsd/openssh/dist/includes.h up to 1.9
crypto/external/bsd/openssh/dist/kex.c up to 1.34
crypto/external/bsd/openssh/dist/kex.h up to 1.24
crypto/external/bsd/openssh/dist/kexdh.c up to 1.10
crypto/external/bsd/openssh/dist/kexgen.c up to 1.7
crypto/external/bsd/openssh/dist/kexgexc.c up to 1.17
crypto/external/bsd/openssh/dist/kexgexs.c up to 1.23
crypto/external/bsd/openssh/dist/krl.c up to 1.23
crypto/external/bsd/openssh/dist/krl.h up to 1.6
crypto/external/bsd/openssh/dist/ldapauth.c up to 1.8
crypto/external/bsd/openssh/dist/ldapauth.h up to 1.6
crypto/external/bsd/openssh/dist/log.c up to 1.27
crypto/external/bsd/openssh/dist/log.h up to 1.17
crypto/external/bsd/openssh/dist/mac.c up to 1.16
crypto/external/bsd/openssh/dist/match.c up to 1.16
crypto/external/bsd/openssh/dist/match.h up to 1.11
crypto/external/bsd/openssh/dist/misc.c up to 1.35
crypto/external/bsd/openssh/dist/misc.h up to 1.27
crypto/external/bsd/openssh/dist/moduli up to 1.10
crypto/external/bsd/openssh/dist/moduli.c up to 1.17
crypto/external/bsd/openssh/dist/monitor.c up to 1.43
crypto/external/bsd/openssh/dist/monitor.h up to 1.13
crypto/external/bsd/openssh/dist/monitor_fdpass.c up to 1.9
crypto/external/bsd/openssh/dist/monitor_wrap.c up to 1.34
crypto/external/bsd/openssh/dist/monitor_wrap.h up to 1.23
crypto/external/bsd/openssh/dist/msg.c up to 1.11
crypto/external/bsd/openssh/dist/mux.c up to 1.35
crypto/external/bsd/openssh/dist/myproposal.h up to 1.24
crypto/external/bsd/openssh/dist/namespace.h up to 1.10
crypto/external/bsd/openssh/dist/nchan.c up to 1.14
crypto/external/bsd/openssh/dist/packet.c up to 1.50
crypto/external/bsd/openssh/dist/packet.h up to 1.26
crypto/external/bsd/openssh/dist/pathnames.h up to 1.15
crypto/external/bsd/openssh/dist/pfilter.c up to 1.8 (+patch)
crypto/external/bsd/openssh/dist/poly1305.c up to 1.6
crypto/external/bsd/openssh/dist/progressmeter.c up to 1.15
crypto/external/bsd/openssh/dist/readconf.c up to 1.44
crypto/external/bsd/openssh/dist/readconf.h up to 1.34
crypto/external/bsd/openssh/dist/readpass.c up to 1.18
crypto/external/bsd/openssh/dist/rijndael.h up to 1.3
crypto/external/bsd/openssh/dist/sandbox-pledge.c up to 1.3
crypto/external/bsd/openssh/dist/sandbox-rlimit.c up to 1.7
crypto/external/bsd/openssh/dist/scp.1 up to 1.31
crypto/external/bsd/openssh/dist/scp.c up to 1.41
crypto/external/bsd/openssh/dist/servconf.c up to 1.44
crypto/external/bsd/openssh/dist/servconf.h up to 1.30
crypto/external/bsd/openssh/dist/serverloop.c up to 1.35
crypto/external/bsd/openssh/dist/session.c up to 1.38
crypto/external/bsd/openssh/dist/session.h up to 1.10
crypto/external/bsd/openssh/dist/sftp-client.c up to 1.35
crypto/external/bsd/openssh/dist/sftp-client.h up to 1.18
crypto/external/bsd/openssh/dist/sftp-common.c up to 1.14
crypto/external/bsd/openssh/dist/sftp-common.h up to 1.8
crypto/external/bsd/openssh/dist/sftp-glob.c up to 1.15
crypto/external/bsd/openssh/dist/sftp-server-main.c up to 1.8
crypto/external/bsd/openssh/dist/sftp-server.8 up to 1.14
crypto/external/bsd/openssh/dist/sftp-server.c up to 1.30
crypto/external/bsd/openssh/dist/sftp.1 up to 1.30
crypto/external/bsd/openssh/dist/sftp.c up to 1.39
crypto/external/bsd/openssh/dist/ssh-add.1 up to 1.18
crypto/external/bsd/openssh/dist/ssh-add.c up to 1.30
crypto/external/bsd/openssh/dist/ssh-agent.1 up to 1.19
crypto/external/bsd/openssh/dist/ssh-agent.c up to 1.37
crypto/external/bsd/openssh/dist/ssh-dss.c up to 1.18
crypto/external/bsd/openssh/dist/ssh-ecdsa.c up to 1.15
crypto/external/bsd/openssh/dist/ssh-ed25519.c up to 1.10
crypto/external/bsd/openssh/dist/ssh-gss.h up to 1.10
crypto/external/bsd/openssh/dist/ssh-keygen.1 up to 1.34
crypto/external/bsd/openssh/dist/ssh-keygen.c up to 1.46
crypto/external/bsd/openssh/dist/ssh-keyscan.1 up to 1.18
crypto/external/bsd/openssh/dist/ssh-keyscan.c up to 1.32
crypto/external/bsd/openssh/dist/ssh-keysign.8 up to 1.14
crypto/external/bsd/openssh/dist/ssh-keysign.c up to 1.24
crypto/external/bsd/openssh/dist/ssh-pkcs11-client.c up to 1.19
crypto/external/bsd/openssh/dist/ssh-pkcs11-helper.8 up to 1.12
crypto/external/bsd/openssh/dist/ssh-pkcs11-helper.c up to 1.22
crypto/external/bsd/openssh/dist/ssh-pkcs11.c up to 1.26
crypto/external/bsd/openssh/dist/ssh-pkcs11.h up to 1.9
crypto/external/bsd/openssh/dist/ssh-rsa.c up to 1.19
crypto/external/bsd/openssh/dist/ssh-xmss.c up to 1.6
crypto/external/bsd/openssh/dist/ssh.1 up to 1.39
crypto/external/bsd/openssh/dist/ssh.c up to 1.45
crypto/external/bsd/openssh/dist/ssh.h up to 1.13
crypto/external/bsd/openssh/dist/ssh2.h up to 1.15
crypto/external/bsd/openssh/dist/ssh_api.c up to 1.15
crypto/external/bsd/openssh/dist/ssh_config up to 1.16
crypto/external/bsd/openssh/dist/ssh_config.5 up to 1.40
crypto/external/bsd/openssh/dist/sshbuf-getput-basic.c up to 1.12
crypto/external/bsd/openssh/dist/sshbuf-getput-crypto.c up to 1.11
crypto/external/bsd/openssh/dist/sshbuf-misc.c up to 1.14
crypto/external/bsd/openssh/dist/sshbuf.c up to 1.14
crypto/external/bsd/openssh/dist/sshbuf.h up to 1.19
crypto/external/bsd/openssh/dist/sshconnect.c up to 1.37
crypto/external/bsd/openssh/dist/sshconnect.h up to 1.17
crypto/external/bsd/openssh/dist/sshconnect2.c up to 1.46
crypto/external/bsd/openssh/dist/sshd.8 up to 1.31
crypto/external/bsd/openssh/dist/sshd.c up to 1.50
crypto/external/bsd/openssh/dist/sshd_config up to 1.28
crypto/external/bsd/openssh/dist/sshd_config.5 up to 1.42
crypto/external/bsd/openssh/dist/ssherr.c up to 1.10
crypto/external/bsd/openssh/dist/ssherr.h up to 1.4
crypto/external/bsd/openssh/dist/sshkey-xmss.c up to 1.10
crypto/external/bsd/openssh/dist/sshkey-xmss.h up to 1.5
crypto/external/bsd/openssh/dist/sshkey.c up to 1.32
crypto/external/bsd/openssh/dist/sshkey.h up to 1.19
crypto/external/bsd/openssh/dist/sshlogin.c up to 1.13
crypto/external/bsd/openssh/dist/sshpty.c up to 1.8
crypto/external/bsd/openssh/dist/ttymodes.c up to 1.12
crypto/external/bsd/openssh/dist/uidswap.c up to 1.10
crypto/external/bsd/openssh/dist/umac.c up to 1.22
crypto/external/bsd/openssh/dist/umac.h up to 1.10
crypto/external/bsd/openssh/dist/utf8.c up to 1.9
crypto/external/bsd/openssh/dist/utf8.h up to 1.5
crypto/external/bsd/openssh/dist/version.h up to 1.44
crypto/external/bsd/openssh/dist/xmalloc.c up to 1.13
crypto/external/bsd/openssh/dist/xmalloc.h up to 1.16
crypto/external/bsd/openssh/dist/xmss_hash.c up to 1.3
crypto/external/bsd/openssh/dist/moduli-gen/Makefile up to 1.3
crypto/external/bsd/openssh/dist/moduli-gen/moduli-gen.sh up to 1.1.1.3
crypto/external/bsd/openssh/dist/moduli-gen/moduli.2048 up to 1.16
crypto/external/bsd/openssh/dist/moduli-gen/moduli.3072 up to 1.18
crypto/external/bsd/openssh/dist/moduli-gen/moduli.4096 up to 1.18
crypto/external/bsd/openssh/dist/moduli-gen/moduli.6144 up to 1.18
crypto/external/bsd/openssh/dist/moduli-gen/moduli.7680 up to 1.18
crypto/external/bsd/openssh/dist/moduli-gen/moduli.8192 up to 1.18
crypto/external/bsd/openssh/lib/Makefile up to 1.38
crypto/external/bsd/openssh/lib/shlib_version up to 1.36
crypto/external/bsd/openssh/openssh2netbsd up to 1.4
lib/libpam/modules/pam_ssh/Makefile up to 1.13
lib/libpam/modules/pam_ssh/pam_ssh.c up to 1.30
distrib/sets/lists/base/shl.mi (apply patch)
distrib/sets/lists/debug/shl.mi (apply patch)
doc/3RDPARTY (apply patch)

Update OpenSSH to 9.6.
 1.11.4.1  08-Apr-2020  martin Merge changes from current as of 20200406
 1.13.10.1  02-Aug-2025  perseant Sync with HEAD
 1.14.2.1  22-Jan-2026  martin Pull up following revision(s) (requested by snj in ticket #150):

distrib/sets/lists/debug/shl.mi: revision 1.380
crypto/external/bsd/openssh/lib/Makefile: revision 1.45
distrib/sets/lists/debug/shl.mi: revision 1.381
crypto/external/bsd/openssh/lib/Makefile: revision 1.46
distrib/sets/lists/debug/shl.mi: revision 1.382
distrib/evbarm/instkernel/sshramdisk/list: revision 1.7
share/mk/bsd.lib.mk: revision 1.423
share/mk/bsd.lib.mk: revision 1.425
distrib/sets/lists/comp/mi: revision 1.2503
distrib/sets/lists/comp/mi: revision 1.2504
distrib/evbarm/instkernel/sshramdisk/Makefile: revision 1.31
distrib/sets/lists/base/shl.mi: revision 1.1019
rescue/list: revision 1.56
etc/mtree/NetBSD.dist.compat.in: revision 1.9
distrib/sets/lists/debug/mi: revision 1.494
distrib/sets/lists/debug/mi: revision 1.495
distrib/sets/lists/base/mi: revision 1.1371
distrib/sets/lists/base/mi: revision 1.1372
distrib/sets/lists/comp/shl.mi: revision 1.362
etc/mtree/NetBSD.dist.base: revision 1.262
lib/libpam/modules/pam_ssh/Makefile: revision 1.15
share/mk/bsd.prog.mk: revision 1.358
share/mk/bsd.prog.mk: revision 1.359
usr.sbin/wg-keygen/Makefile: revision 1.2
usr.sbin/wg-keygen/Makefile: revision 1.3
distrib/sets/lists/base/shl.mi: revision 1.1020
share/mk/bsd.README: revision 1.457
crypto/external/bsd/openssh/Makefile.inc: revision 1.18
distrib/sets/lists/xdebug/mi: revision 1.52
rescue/Makefile: revision 1.43

Add logic for /usr/lib/private libraries.

New variables for makefiles to define:
<bsd.lib.mk> LIBSUBDIR -- If nonempty, install library into
${LIBDIR}/${LIBSUBDIR} instead of ${LIBDIR}. Typically set
either to empty or to `private'.
<bsd.lib.mk> LIBDPSUBDIRS -- List of subdirectories _subdir_ to add
-L${SHLIBDIR}/${_subdir_} -Wl,-R${SHLIBDIR}/${_subdir_} to
ldflags when linking library. Note: Should only be used inside
private libraries, not inside public libraries to link against
private libraries, which can't work -- see comment.
<bsd.prog.mk> PROGDPSUBDIRS -- List of subdirectories _subdir_ to add
-L${SHLIBDIR}/${_subdir_} -Wl,-R${SHLIBDIR}/${_subdir_} to
ldflags when linking program.

(XXX bsd.lib.mk/bsd.prog.mk should figure LIBDPSUBDIRS/PROGDPSUBDIRS
out automatically by LIBDPLIBS/PROGDPLIBS, but for now we don't have
that mechanism -- TBD in subsequent work.)

Libraries that we want to install because we use them in binaries we
ship, but that we want to keep private from applications so we don't
have to worry about ABI breakage or leakage into pkgsrc builds,
should generally set:

LIBSUBDIR= private # Install into /usr/lib/private.
NOCOMPAT= # defined # Don't build compat lib.
NOLINKLIB= # defined # Don't install .so link or .a lib.

(XXX Maybe we should have a `LIBISPRIVATE= installed' or something
for this combination of options, but for now I'm putting in the
minimal mechanism to implement this and we can condense a common
pattern later.)

Programs using the library will also have to set
PROGDPSUBDIRS+= private
so that they will get the rpath /usr/lib/private.

PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib


openssh: Install libssh.so in /usr/lib/private.

This way it doesn't get exposed to applications accidentally, and we
don't need to worry about breaking ABI when updating openssh in base.
PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib

openssh: Do build and install compat libssh after all.

Even though it's not exposed for applications to _link_ against, it
is used by the dynamically _loadable_ pam_ssh module, which exists as
a compat module and therefore needs libssh as a compat library to be
installed somewhere. That somewhere will be
/usr/lib/${COMPAT_ARCH}/private.

Should fix problems like:
dependall ===> compat/sparc64/sparc/../../../lib/libpam/modules/pam_ssh
nbmake[11]: don't know how to make /home/source/ab/HEAD/src/crypto/external/bsd/openssh/lib/libssh.a. Stop
Verified in an amd64 build that the compat i386 pam_ssh.so is linked
correctly:
(chroot HEAD)# ldd /usr/lib/i386/security/pam_ssh.so.4
/usr/lib/i386/security/pam_ssh.so.4:
-lssh.50 => /usr/lib/i386/private/libssh.so.50
-lcrypto.16 => /usr/lib/i386/libcrypto.so.16
-lcrypt.1 => /usr/lib/i386/libcrypt.so.1
-lgcc_s.1 => /usr/lib/i386/libgcc_s.so.1
-lc.12 => /usr/lib/i386/libc.so.12
-lz.1 => /usr/lib/i386/libz.so.1

PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib


wg-keygen(8): Find private libssh.so.
Should fix:
/usr/sbin/wg-keygen: Shared object "libssh.so.50" not found
PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib


evbarm/instkernel/sshramdisk: Get libssh out of objdir now.
Should fix problems like:
--- ramdiskbin.link ---
# link sshramdisk/ramdiskbin.link
/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-tools/bin/armv6eb--netbsdelf-eabihf-gcc --sysroot=/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest -static -o
ramdiskbin.link ramdiskbin.o -Wl,-rpath-link,/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest/lib -L=/lib -L/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest/usr/lib cat.cro
chmod.cro cp.cro dd.cro df.cro ed.cro ln.cro ls.cro mkdir.cro mv.cro pax.cro pwd.cro rm.cro rmdir.cro sh.cro stty.cro sync.cro sleep.cro chown.cro disklabel.cro fdisk.cro fsck.cro fsck_msdos.cro
fsck_ffs.cro gpt.cro ifconfig.cro init.cro mknod.cro mount.cro mount_cd9660.cro mount_ext2fs.cro mount_ffs.cro mount_kernfs.cro mount_msdos.cro mount_nfs.cro mount_tmpfs.cro newfs.cro
newfs_ext2fs.cro ping.cro reboot.cro restore.cro route.cro shutdown.cro slattach.cro swapctl.cro umount.cro ftp.cro tip.cro gzip.cro less.cro sed.cro tset.cro chroot.cro sshd.cro sysinst.cro
progress.cro dhcpcd.cro libhack.o
-ledit -lutil -lcurses -lterminfo -lrmt -lcrypt -ll -lm -lz -lprop -lssh -lcrypto -lpthread
/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-tools/lib/gcc/armv6eb--netbsdelf-eabihf/14.3.0/../../../../armv6eb--netbsdelf-eabihf/bin/ld: cannot find -lssh: No such file or directory
/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-tools/lib/gcc/armv6eb--netbsdelf-eabihf/14.3.0/../../../../armv6eb--netbsdelf-eabihf/bin/ld: have you installed the static version of the
ssh library ?
collect2: error: ld returned 1 exit status
*** Failed target: ramdiskbin.link
*** In directory: /home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-obj/home/source/ab/HEAD/src/distrib/evbarm/instkernel/sshramdisk
*** Failed commands:
${_MKTARGET_LINK}
=> @echo '# ' " link " sshramdisk/ramdiskbin.link
${_CCLINK.${:Uramdiskbin}} ${_LDFLAGS.${:Uramdiskbin}} ${_LDSTATIC.${:Uramdiskbin}} -o ${.TARGET} ${OBJS.${:Uramdiskbin}} ${_PROGLDOPTS} ${_LDADD.${:Uramdiskbin}}
=> /home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-tools/bin/armv6eb--netbsdelf-eabihf-gcc --sysroot=/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest -static -o
ramdiskbin.link ramdiskbin.o -Wl,-rpath-link,/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest/lib -L=/lib -L/home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-dest/usr/lib cat.cro
chmod.cro cp.cro dd.cro df.cro ed.cro ln.cro ls.cro mkdir.cro mv.cro pax.cro pwd.cro rm.cro rmdir.cro sh.cro stty.cro sync.cro sleep.cro chown.cro disklabel.cro fdisk.cro fsck.cro fsck_msdos.cro
fsck_ffs.cro gpt.cro ifconfig.cro init.cro mknod.cro mount.cro mount_cd9660.cro mount_ext2fs.cro mount_ffs.cro mount_kernfs.cro mount_msdos.cro mount_nfs.cro mount_tmpfs.cro newfs.cro
newfs_ext2fs.cro ping.cro reboot.cro restore.cro route.cro shutdown.cro slattach.cro swapctl.cro umount.cro ftp.cro tip.cro gzip.cro less.cro sed.cro tset.cro chroot.cro sshd.cro sysinst.cro
progress.cro dhcpcd.cro
libhack.o -ledit -lutil -lcurses -lterminfo -lrmt -lcrypt -ll -lm -lz -lprop -lssh -lcrypto -lpthread
${CTFMERGE} ${CTFMFLAGS} -o ${.TARGET} ${OBJS.${:Uramdiskbin}}
=> /home/builds/ab/HEAD/evbarm-earmv6hfeb/20251217070550Z-tools/bin/nbctfmerge -t -g -L VERSION -g -o ramdiskbin.link ramdiskbin.o
*** [ramdiskbin.link] Error code 1
PR lib/58648: private shared libraries should go in
/usr/lib/private, not /usr/lib


distrib/sets/lists/comp: libssh is private for lint too.
Might fix:
checkflist ===> distrib/sets
====== 1 missing files in DESTDIR ========
Files in flist but missing from DESTDIR.
File wasn't installed ?
------------------------------------------
./usr/libdata/lint/llib-lssh.ln
======== end of 1 missing files ==========
PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib

PR/58648: Fix MKDEBUG=yes build:
1. if NOLINKLIB is set don't install libfoo_g.a and libfoo_p.a libraries.
libfoo.a, libfoo_p.a were not being installed already, just make the
testing consistent
2. Move .a libraries from shl.mi to mi where they belong.
3. Make stray libfoo_g.a libraries that were install accidentally before
obsolete.

rescue/list: Touch for CRUNCHGEN_FLAGS change for libssh.
PR lib/58648: private shared libraries should go in /usr/lib/private,
not /usr/lib

RSS XML Feed