pkg vs. checking for the likes of /usr/lib32/libc.so.7 : a Question related to some aarch64 systems not supporting armv7 code

From: Mark Millard <marklmi_at_yahoo.com>
Date: Wed, 12 Feb 2025 21:40:27 UTC
Quoting from a recent commit:

> ports-mgmt/pkg-devel: 2.0.99.4
> 
> Changes from 2.0.99.3 to 2.0.99.4
> - sort list in manifest for reproducibility
> - limite shlibs_requires to file starting with "lib"
> - on !pkgbase ignore lib32 compat if the lib32 set is not installed

I use an aarch64 boot/operation media on each of, for example:

) MacBook Pro M4 MAX (via FreeBSD under Parallels on macOS)
) Windows Dev Kit 2023
) RPi5B

moving the media between the machines (so: only one media,
not 3). The M4 MAX does not support armv7 code:

# /usr/obj/DESTDIRs/main-CA7-chroot-ports-local/bin/sh
/bin/sh: /usr/obj/DESTDIRs/main-CA7-chroot-ports-local/bin/sh: Exec format error

but the other 2 do and do not get that error. As the
same media is moved around among those machines, tests
like, for example,

.if exists(/usr/lib32/libc.so.7)

will find the file, even on a system for which it can
not be put to use natively.

Does this mean that there will be pkg and/or poudiere(-devel)
problems for my from source package builds and installs? Are
there extra rules or steps or such that I'll need to follow
to avoid running into problems?

Note: armv7 poudriere jails would not be used on the M4 MAX
system. But aarch64 poudreire jails would be.

> - update: be functionnal again with less than 300MB of memory available
> - small performances improvements in package loading and checksum validation
> - sqlite: update to 3.49.0

===
Mark Millard
marklmi at yahoo.com