Home | History | Annotate | Download | only in rescue
History log of /src/rescue/Makefile
RevisionDateAuthorComments
 1.47  28-Dec-2025  thorpej Elide umbctl(8) if MKUSB == no.
 1.46  28-Dec-2025  thorpej Conditionalize support for SSH client and server on MKSSH. Enabled by
default except on m68000.
 1.45  24-Dec-2025  thorpej Conditionalize IPSec support on MKIPSEC, defaults to "yes" except on,
you guessed it, m68000.
 1.44  24-Dec-2025  thorpej Add MK* knobs for nearly all of the file systems (except FFS, which will
always be built, and anything related to puffs, which requires a bit more
work), and default them all to "yes" except on m68000, which keeps only
cd9660, kernfs, nfs, and ptyfs.
 1.43  16-Dec-2025  riastradh 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
 1.42  04-Apr-2020  christos branches: 1.42.10;
smb is no more.
 1.41  01-Mar-2020  christos Redo the sshsk_sign() stuff properly, but putting the helper in libssh.so
 1.40  27-Feb-2020  christos Unfortunately libssh has an undefined symbol sshsk_sign(), which is provided
by different implementations depending if we are a server or a client. While
the clients we compile in, provide that symbol, it is getting hidden by
crunchhide, so we provide it again. It would have been a lot simpler to
use a function pointer instead in the library...
 1.39  29-Dec-2019  christos 1. Remove all the special handling of variables (-d -p -P -s -S) that
were dealing with DBG (-d) LDSTATIC/NOPIE (-p), and the rest with
disabling/enabling sanitizers.
2. Use emalloc/estrdup for all the allocators instead of only some cases.
3. Add -V varspec which passes variables on the command line (as DBG
and LDSTATIC used to be passed before) instead of appending them
to the on-the-fly Makefile using -v varspec.
4. Change the distrib and rescue Makefiles to use -V instead of the removed
flags.

The motivation of this is to make variable handling consistent, less magical,
and remove the need for changing crunchgen each time we want to add disabling
an option by default.

(as proposed in tech-toolchain)
 1.38  02-Oct-2019  maya Remove ldconfig from /rescue, and mark it MI obsolete.

- ldconfig in netbsd refers to a.out binaries only. We've been ELF-only
since NetBSD 2.0 or so, and having it in /rescue served little purpose
even before that, as /rescue is standalone.
- Using MI obsolete to avoid the need for MD set lists where ldconfig
is the sole entry
 1.37  27-Jan-2019  dholland branches: 1.37.2;
fix duplicated chunk from merge
 1.36  27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.35  25-Jul-2018  kamil Specify NOLIBCSANITIZER for rescue

The rescue image could be sanitized with a sanitizer in libc, but it's left
for future as a possible research.
 1.34  21-Jun-2018  kamil branches: 1.34.2;
Set NOSANITIZER in rescue/Makefile

This is required to stop sanitizing rcmd.o and liboverride.o. These object
files will be linked into statically linked rescue.
 1.33  08-Oct-2017  christos branches: 1.33.2;
Extra flags for static PIE
 1.32  21-May-2017  riastradh Remove MKCRYPTO option.

Originally, MKCRYPTO was introduced because the United States
classified cryptography as a munition and restricted its export. The
export controls were substantially relaxed fifteen years ago, and are
essentially irrelevant for software with published source code.

In the intervening time, nobody bothered to remove the option after
its motivation -- the US export restriction -- was eliminated. I'm
not aware of any other operating system that has a similar option; I
expect it is mainly out of apathy for churn that we still have it.
Today, cryptography is an essential part of modern computing -- you
can't use the internet responsibly without cryptography.

The position of the TNF board of directors is that TNF makes no
representation that MKCRYPTO=no satisfies any country's cryptography
regulations.

My personal position is that the availability of cryptography is a
basic human right; that any local laws restricting it to a privileged
few are fundamentally immoral; and that it is wrong for developers to
spend effort crippling cryptography to work around such laws.

As proposed on tech-crypto, tech-security, and tech-userlevel to no
objections:

https://mail-index.netbsd.org/tech-crypto/2017/05/06/msg000719.html
https://mail-index.netbsd.org/tech-security/2017/05/06/msg000928.html
https://mail-index.netbsd.org/tech-userlevel/2017/05/06/msg010547.html

P.S. Reviewing all the uses of MKCRYPTO in src revealed a lot of
*bad* crypto that was conditional on it, e.g. DES in telnet... That
should probably be removed too, but on the grounds that it is bad,
not on the grounds that it is (nominally) crypto.
 1.31  30-Jan-2014  matt Append -Os to DBG, not overwrite in case DBG has more than just -Ox from
sys.mk
 1.30  26-Dec-2013  christos mount_smbfs has moved.
 1.29  24-Mar-2013  christos descend to bin for pdisk
 1.28  24-Mar-2013  martin pdisk has moved to external/bsd - try to deal.
 1.27  10-Mar-2010  abs branches: 1.27.6; 1.27.12; 1.27.18;
Relegate edlabel to use in extremely memory constrained install
ramdisks and prefer disklabel elsewhere.
Based on discussion on affected port lists (port-sparc port-sparc64
port-sun3 port-sun2 port-atari port-mvme68k).
All listed ports plus amd64 test built after change
 1.26  13-Feb-2010  roy Don't install terminfo.db in rescue.
 1.25  05-Feb-2010  roy Move the emergancy terminfo database from /root to /rescue.
 1.24  22-Aug-2009  mrg kill ldd_aout. it didn't work anyway...not since i don't know when.
 1.23  21-Aug-2009  he Add a new list.ldd.noaout, which is a copy of list.ldd but without
the a.out support.
Tweak Makefile so that the a.out support is not built for mips.
 1.22  07-Jan-2009  mrg - rework this a bunch to make it work inside /rescue/ldd.
- fix alpha build.
 1.21  09-Feb-2008  mrg branches: 1.21.10;
make all sun2 use -O0 and move most of the hacks out into just 3 files.
 1.20  09-Jan-2008  simonb Remove support for NetBSD/pc532.
 1.19  22-May-2005  lukem branches: 1.19.10;
Make fdisk(8) available on all platforms, since MS-DOS partitioning
is the de-facto standard for many removable media types.
 1.18  13-Jan-2005  lukem improve MAKEVERBOSE support
 1.17  13-Jan-2005  lukem Restore the "liboverride" functionality because it's needed to correctly
implement rmcd(3) in the rescue tools.
 1.16  10-Jan-2005  lukem Add to /rescue: scp ssh slogin
(all without Kerberos support at this time)
 1.15  10-Jan-2005  lukem MAKEVERBOSE support
 1.14  10-Jan-2005  lukem Provide /rescue/cgdconfig if ${MKCRYPTO} != "no"
 1.13  10-Jan-2005  lukem Repeat after me: "test both cases before commit"
 1.12  10-Jan-2005  lukem Only compile in IPv6 support if ${USE_INET6} != "no"

MKINET6 is for providing IPv6 infrastructure.
USE_INET6 is for compiling IPv6 support into the programs (needs MKINET6).
 1.11  20-Aug-2004  tron Complete removal of "liboverride" to fix build problems.
 1.10  19-Aug-2004  christos Remove special handling for rcmd.o; not needed.
 1.9  14-Jul-2003  tron Remove file "rescue.unstripped" in "cleandir" target.
 1.8  26-May-2003  lukem * Add ftp to /rescue.
* Implement liboverride.o to provide overrides of various libc functions.
For now, compile a special version of rcmd(3) (et al) which uses
/rescue/rcmd and /rescue/sh instead of the /bin variants.
Other overrides may appear in the future.

Should fix [bin/21670] from Geoff Wing.
 1.7  29-Jan-2003  simonb Enable MIPS now that crunchgen works again for this arch.
 1.6  17-Oct-2002  lukem set SMALLPROG=0 (it was implicit)
 1.5  06-Oct-2002  thorpej * Move the rescue bits into their own file.
* In makeflist, skip rescue bits in arch's that don't yet support it
(MIPS, currently, due to an objcopy-crunch bug).
 1.4  06-Oct-2002  thorpej Compare MACHINE_CPU and "mips" rather than MACHINE_ARCH and "mipseb" or
"mipsel".
 1.3  03-Oct-2002  lukem Don't build this on mipseb or mipsel, as crunchgen(1) doesn't work correctly
on those, no fix has been forthcoming, and users are getting antsy.

This allows "make build" to complete; "make release" will still fail in the
sets generation. Maybe *that* will inspire a MIPS/toolchain guru to fix
crunchgen(1)...
 1.2  23-Aug-2002  lukem set CRUNCHENV= RESCUE=/rescue (still don't want SMALLPROG)
 1.1  22-Aug-2002  lukem Migrate rescue tools from distrib/rescue -> rescue. Purpose of tools:

Infrastructure to build a set of "rescue" tools; a crunched-up
version of all the statically linked binaries in /bin, /sbin
and the few in /usr/bin.
 1.19.10.1  23-Mar-2008  matt sync with HEAD
 1.21.10.1  16-Jan-2009  bouyer branches: 1.21.10.1.4;
Pull up following revision(s) (requested by mrg in ticket #265):
libexec/ld.elf_so/headers.c: revision 1.27
rescue/list: revision 1.35
libexec/ld.elf_so/arch/sparc/Makefile.ld32: revision 1.1
usr.bin/ldd/Makefile.elf: revision 1.1
usr.bin/ldd/Makefile.elf: revision 1.2
usr.bin/ldd/ldd_aout/ldd.c: file removal
usr.bin/ldd/Makefile.elf: revision 1.3
libexec/ld.elf_so/arch/sparc/Makefile.inc: revision 1.12
usr.bin/ldd/dummy.c: revision 1.1
gnu/usr.bin/binutils/ld/Makefile: revision 1.28
usr.bin/ldd/elf32/Makefile: revision 1.1
usr.bin/ldd/elf32/Makefile: revision 1.2
usr.bin/ldd/ldd.c: revision 1.3
usr.bin/ldd/elf32/Makefile: revision 1.3
usr.bin/ldd/ldd_elf/Makefile: file removal
usr.bin/ldd/ldd.h: revision 1.1
usr.bin/ldd/ldd.c: revision 1.4
usr.bin/ldd/ldd_aout.c: revision 1.1
usr.bin/ldd/Makefile: revision 1.8
usr.bin/ldd/Makefile: revision 1.9
usr.bin/ldd/ldd_elfxx.c: revision 1.1
libexec/ld.elf_so/map_object.c: revision 1.37
usr.bin/ldd/ldd_aout/Makefile: file removal
usr.bin/ldd/elf64/Makefile: revision 1.1
rescue/Makefile: revision 1.22
libexec/ld.elf_so/arch/i386/Makefile.ld32: revision 1.1
usr.bin/ldd/ldd_elf/ldd.c: file removal
usr.bin/ldd/elf64/Makefile: revision 1.2
usr.bin/ldd/elf64/Makefile: revision 1.3
usr.bin/ldd/aout/Makefile: revision 1.1
libexec/ld.elf_so/arch/i386/Makefile.inc: revision 1.12
rescue/list.ldd: revision 1.1
usr.bin/ldd/ldd_elf/README: file removal
usr.bin/ldd/Makefile.common: revision 1.1
move the defines for RTLD_ARCH_SUBDIR into a sub-sub-makefile so we can
grab these values via reach-over more easily.
some fixes for PR#40170:
- set NATIVE=yes in the environment for genscripts.sh
- set LIB_PATH to /usr/lib/{sparc,i386} for those scripts
- set use_sysroot to "yes", to enable LIB_PATH to work in genscripts.sh
- get rid of building an a.out-happy ldd (but keep supporting a.out
binaries for the ELF version.)
- convert a.out, elf32 and elf64 support into convience libraries and
link them right ones in. if elf_ldd() fails on 64 bit platforms,
try elf32_ldd() before aout_ldd().
now ldd on 64 bit platforms works for 32 bit binaries, aka PR#40199,
and it seems that all the issues from README are gone too.
add some (uintptr_t) to some casts, so these compile with ELFSIZE=32
*and _LP64. necessary for 32/64 bit combo ldd support.
- rework this a bunch to make it work inside /rescue/ldd.
- fix alpha build.
make sure we set LIBISPRIVATE.
fixes build issues reported by moof.
make sure we set LIBISPRIVATE.
fixes build issues reported by moof.
 1.21.10.1.4.1  05-Sep-2009  matt Switch from ${LD} -r to ${CC} ${LDFLAGS} -nostdlib -Wl,-r so that ${CC} can
pass additional options to ld
 1.27.18.1  28-Mar-2013  agc Pull up fixes from HEAD after pdisk move to external
 1.27.12.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.27.12.1  23-Jun-2013  tls resync from head
 1.27.6.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.33.2.2  28-Jul-2018  pgoyette Sync with HEAD
 1.33.2.1  25-Jun-2018  pgoyette Sync with HEAD
 1.34.2.3  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.34.2.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.34.2.1  10-Jun-2019  christos Sync with HEAD
 1.37.2.1  17-Nov-2019  martin Pull up following revision(s) (requested by maya in ticket #435):

distrib/sets/maketars: revision 1.90
usr.sbin/sysinst/arch/playstation2/md.h: revision 1.2
usr.sbin/sysinst/arch/sandpoint/md.h: revision 1.3
usr.sbin/sysinst/arch/evbppc/md.h: revision 1.3
usr.sbin/sysinst/arch/hpcarm/md.h: revision 1.3
usr.sbin/sysinst/arch/mvme68k/md.h: revision 1.3
distrib/sun3/MakeInstTape: revision 1.3
usr.sbin/sysinst/util.c: revision 1.33
distrib/sets/lists/rescue/mi: revision 1.1
distrib/sets/lists/base/rescue.sun2: file removal
usr.sbin/sysinst/arch/zaurus/md.h: revision 1.3
distrib/sets/lists/base/rescue.ad.m68k.shl: file removal
distrib/sets/regpkgset: revision 1.13
usr.sbin/sysinst/arch/i386/md.h: revision 1.7
distrib/sets/lists/base/rescue.sparc: file removal
distrib/notes/mvme68k/xfer: revision 1.19
distrib/sets/sets.subr: revision 1.187
distrib/common/bootimage/Makefile.bootimage: revision 1.22
usr.sbin/sysinst/msg.mi.de: revision 1.16
usr.sbin/sysinst/arch/atari/md.h: revision 1.3
rescue/Makefile: revision 1.38
distrib/sets/lists/base/rescue.macppc: file removal
usr.sbin/sysinst/arch/arc/md.h: revision 1.4
distrib/miniroot/install.sub: revision 1.49
usr.sbin/sysinst/arch/acorn32/md.h: revision 1.3
usr.sbin/sysinst/arch/x68k/md.h: revision 1.3
usr.sbin/sysinst/arch/hpcmips/md.h: revision 1.3
usr.sbin/sysinst/arch/bebox/md.h: revision 1.3
usr.sbin/sysinst/arch/hpcsh/md.h: revision 1.2
distrib/sets/lists/base/rescue.shark: file removal
usr.sbin/sysinst/arch/emips/md.h: revision 1.5
distrib/utils/embedded/mkimage: revision 1.70
usr.sbin/sysinst/arch/shark/md.h: revision 1.3
usr.sbin/sysinst/arch/pmax/md.h: revision 1.4
usr.sbin/sysinst/arch/amiga/md.h: revision 1.4
usr.sbin/sysinst/arch/hp300/md.h: revision 1.5
rescue/list.ldconfig: file removal
distrib/sets/lists/base/rescue.ad.m68k: file removal
usr.sbin/sysinst/arch/prep/md.h: revision 1.4
usr.sbin/sysinst/arch/cats/md.h: revision 1.4
usr.sbin/sysinst/arch/amd64/md.h: revision 1.7
usr.sbin/sysinst/msg.mi.es: revision 1.17
usr.sbin/sysinst/msg.mi.fr: revision 1.20
usr.sbin/sysinst/msg.mi.pl: revision 1.23
distrib/sets/lists/base/rescue.i386: file removal
usr.sbin/sysinst/arch/evbarm/md.h: revision 1.3
distrib/sets/lists/base/rescue.vax: file removal
distrib/amd64/uefi-installimage/Makefile.bootimage: revision 1.12
usr.sbin/sysinst/arch/evbmips/md.h: revision 1.3
distrib/sets/lists/base/rescue.mi: file removal
distrib/sets/README: revision 1.14
usr.sbin/sysinst/arch/sgimips/md.h: revision 1.4
distrib/sets/lists/base/rescue.sparc64: file removal
distrib/sets/lists/base/rescue.mi: revision 1.45
distrib/sets/lists/base/rescue.mi: revision 1.46
usr.sbin/sysinst/arch/ofppc/md.h: revision 1.4
usr.sbin/sysinst/arch/cobalt/md.h: revision 1.4
distrib/sets/lists/base/rescue.ad.arm: file removal
distrib/sets/lists/base/rescue.mac68k: file removal
usr.sbin/sysinst/defs.h: revision 1.45
usr.sbin/sysinst/arch/landisk/md.h: revision 1.2
distrib/notes/atari/xfer: revision 1.17
etc/Makefile: revision 1.441
usr.sbin/sysinst/msg.mi.en: revision 1.22
distrib/sun2/MakeInstTape: revision 1.2

Remove ldconfig from /rescue, and mark it MI obsolete.
- ldconfig in netbsd refers to a.out binaries only. We've been ELF-only
since NetBSD 2.0 or so, and having it in /rescue served little purpose
even before that, as /rescue is standalone.
- Using MI obsolete to avoid the need for MD set lists where ldconfig
is the sole entry

Mark /rescue/edlabel as MI-obsolete, so we can remove all remaining MD
rescue set list files.

Split out /rescue to its own set and adapt installers/images to add it.

This is meant to make updates safer: if something goes wrong with updating
base, we still have the old, standalone /rescue to recover from.
 1.42.10.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