Add integrated dports build feature to build-all and install-all targetsWhen WITH_DPORTS=YES is used build-all and install-all, these targets willalso build the base set of ports and all of their
Add integrated dports build feature to build-all and install-all targetsWhen WITH_DPORTS=YES is used build-all and install-all, these targets willalso build the base set of ports and all of their dependencies usingconfiguration data and the "dragonfly/base" dport found in"/usr/src/dports.base".This feature is intended to be used by the nrelease build in an upcomingcommit, and may also be used manually.The /usr/dports tree must exist and contains the dports repo to use as thebasis of the dports build. It will be null-mounted in the chroot and the"/usr/src/dports.base/dragonfly" directory will be null-mounted under itto provide the "dragonfly/base" meta-port. The DPORTSBASE make variablemay be used to override the location of the main dports repo.The build-all and install-all targets use a sophisticated chrootedenvironment to do a completely clean dports build with dsynth. ItIt will actually "make installworld" plus a clean "make distribution"inside the chroot environment to create the environment, and the hostsystem's /etc/resolv.conf will be copied in.build-all - Augmented when used WITH_DPORTS=YESinstall-all - Augmented when used WITH_DPORTS=YESbuildportschroot - Build a fresh chroot environment for dsynthmountports - Do all null mounts and cp's needed for the envbuildports - Run dsynth build dragonfly/base in the envinstallports - Install the built ports on the host system (see note)umountports - Remove the null mountsWITH_DPORTS=YES - executes buildportschroot, mountports, buildports, and umountports when run from build-all. executes mountports, installports, umountports when run from install-all.DPORTSBASE=path - Defaults to /usr/dports, may be used to override the location where the main dports tree can be found.NOTE: Installports may require interactivity as the base system might already have installed ports. Generally speaking it is best to not revert any ports you might already have installed, so feel free to tell it not to install anything.* Added various make targets and augmented build-all and install-all* /usr/local/sbin added and the stale /usr/pkg/bin removed from _HOSTPATH.* Add /usr/src/dports.base infrastructure. It contains the dsynth.ini and pkg.conf files that will be used for the local dsynth operations. Some paths are replaced with SED when copied to the chroot. The dsynth.ini is relative to the chroot. It also contains the dragonfly/base dport which is the meta-port that dsynth will be told to build. All other dports related files and directories are null-mounted from /usr/dports.* Add /usr/distfiles.base to mtree/BSD.usr.dist. This directory is also created by the build if it does not exist since the host system might not have run a new installworld recently. This directory will be used during build-all (buildports) to store the distfiles required to build dragonfly/base, so they only need to be fetched once.* Add the "-C ConfigBase" option to dsynth to make running it from the chrooted environment easier. This overrides the /etc/dsynth directory and removes /etc/dsynth as a fallback.* dsynth conditionalizes calling syscap_set() for backwards compatibility with older host systems that might not have been upgraded to include the feature yet.
show more ...