diff --git a/Makefile.inc1 b/Makefile.inc1 index 8d4dd3570a7..ea066d8aad8 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2260,48 +2260,15 @@ create-world-packages: _pkgbootstrap .PHONY @cd ${WSTAGEDIR} ; \ ${METALOG_SORT_CMD} ${WSTAGEDIR}/${DISTDIR}/METALOG | \ awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk - @for plist in ${WSTAGEDIR}/*.plist; do \ - plist=$${plist##*/} ; \ - pkgname=$${plist%.plist} ; \ - echo "_PKGS+= $${pkgname}" ; \ - done > ${WSTAGEDIR}/packages.mk - ${_+_}@cd ${.CURDIR}; \ - PATH="${TMPPATH}" ${MAKE} -f Makefile.inc1 \ - create-world-packages-jobs \ - SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \ - .MAKE.JOB.PREFIX= - -.if make(create-world-packages-jobs) -.include "${WSTAGEDIR}/packages.mk" -.endif - -create-world-packages-jobs: .PHONY -.for pkgname in ${_PKGS} -create-world-packages-jobs: create-world-package-${pkgname} -create-world-package-${pkgname}: .PHONY - @sh ${SRCDIR}/release/packages/generate-ucl.sh -o ${pkgname} \ - -s ${SRCDIR} -u ${WSTAGEDIR}/${pkgname}.ucl - @if [ "$$(grep -vc '^@dir' ${WSTAGEDIR}/${pkgname}.plist)" -gt 0 ]; then \ - awk -F\" ' \ - /^name/ { printf("===> Creating %s-", $$2); next } \ - /^version/ { print $$2; next } \ - ' ${WSTAGEDIR}/${pkgname}.ucl && \ - ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ - -o SHLIB_PROVIDE_PATHS_NATIVE=/lib,/usr/lib \ - ${_ALL_LIBCOMPATS:range:@i@-o SHLIB_PROVIDE_PATHS_COMPAT_${_ALL_LIBCOMPATS:[$i]}=/usr/lib${_ALL_libcompats:[$i]}@} \ - -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ - -M ${WSTAGEDIR}/${pkgname}.ucl \ - -p ${WSTAGEDIR}/${pkgname}.plist \ - -r ${WSTAGEDIR} \ - -o ${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}; \ - else \ - awk -F\" ' \ - /^name/ { printf("===> Skipping %s-", $$2); next } \ - /^version/ { print $$2; next } \ - ' ${WSTAGEDIR}/${pkgname}.ucl; \ - fi -.endfor + # bsd.pkg.mk doesn't always know about the dependencies of things + # it builds, so for now, always run clean here. + ${CROSSENV} ${MAKE} -C ${.CURDIR}/packages \ + FLUA=${WORLDTMP}/legacy/usr/libexec/flua \ + REPODIR=${REPODIR} \ + WSTAGEDIR=${WSTAGEDIR} \ + PKG_VERSION=${PKG_VERSION} \ + MK_AUTO_OBJ=yes \ + clean all stagepackages create-sets-packages-jobs: .PHONY create-sets-packages create-sets-packages: .PHONY diff --git a/packages/Makefile b/packages/Makefile new file mode 100644 index 00000000000..ba70a38880e --- /dev/null +++ b/packages/Makefile @@ -0,0 +1,165 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +.include + +SUBDIR= blocklist \ + bsdconfig \ + bzip2 \ + clibs \ + cron \ + ctl \ + devd \ + devmatch \ + dhclient \ + fetch \ + flua \ + firmware-iwm \ + fwget \ + geom \ + ggate \ + lib9p \ + libarchive \ + libbegemot \ + libblocksruntime \ + libbsdstat \ + libcasper \ + libcompat \ + libcompiler_rt \ + libdwarf \ + libevent1 \ + libexecinfo \ + libpathconv \ + librss \ + libsqlite3 \ + libthread_db \ + libucl \ + libyaml \ + locales \ + mandoc \ + mtree \ + natd \ + ncurses \ + netmap \ + newsyslog \ + nfs \ + nvme-tools \ + pam \ + periodic \ + powerd \ + ppp \ + quotacheck \ + rc \ + rcmds \ + resolvconf \ + rip \ + runtime \ + smbutils \ + syslogd \ + tcpd \ + toolchain \ + ufs \ + utilities \ + xz \ + zlib \ + zstd + +.if ${MK_ACCT} != "no" || ${MK_UTMPX} != "no" +SUBDIR+= acct +.endif + +.if ${MK_CLANG} != "no" || ${MK_TOOLCHAIN} != "no" +SUBDIR+= clang +.endif + +.if ${MK_AUTHPF} != "no" || ${MK_PF} != "no" +SUBDIR+= pf +.endif + +# XXX - certctl probably shouldn't depend on caroot. This logic comes from +# the src build, so we have to match it. +.if ${MK_CAROOT} != "no" +SUBDIR.${MK_OPENSSL}+= certctl +SUBDIR+= caroot +.endif + +SUBDIR.${MK_AT}+= at +SUBDIR.${MK_AUDIT}+= audit +SUBDIR.${MK_AUTOFS}+= autofs +SUBDIR.${MK_BLUETOOTH}+= bluetooth +SUBDIR.${MK_BOOT}+= bootloader +SUBDIR.${MK_BSDINSTALL}+= bsdinstall +SUBDIR.${MK_BSNMP}+= bsnmp +SUBDIR.${MK_CCD}+= ccdconfig +SUBDIR.${MK_CUSE}+= libcuse +SUBDIR.${MK_CXGBETOOL}+= cxgbe-tools +SUBDIR.${MK_DMAGENT}+= dma +SUBDIR.${MK_DTRACE}+= ctf dtrace dwatch +SUBDIR.${MK_EE}+= ee +SUBDIR.${MK_EFI}+= efi-tools +SUBDIR.${MK_EXAMPLES}+= examples +SUBDIR.${MK_FILE}+= libmagic +SUBDIR.${MK_FLOPPY}+= fd +SUBDIR.${MK_FTP}+= ftp +SUBDIR.${MK_GAMES}+= games +SUBDIR.${MK_GOOGLETEST}+= googletest +SUBDIR.${MK_HAST}+= hast +SUBDIR.${MK_HYPERV}+= hyperv-tools +SUBDIR.${MK_INETD}+= inetd +SUBDIR.${MK_IPFILTER}+= ipf +SUBDIR.${MK_IPFW}+= ipfw +SUBDIR.${MK_ISCSI}+= iscsi +SUBDIR.${MK_JAIL}+= jail +SUBDIR.${MK_KERBEROS}+= kerberos kerberos-kdc librpcsec_gss gssd +SUBDIR.${MK_LDNS}+= libldns +SUBDIR.${MK_LEGACY_CONSOLE}+= console-tools +SUBDIR.${MK_LLD}+= lld +SUBDIR.${MK_LLDB}+= lldb +SUBDIR.${MK_LPR}+= lp +SUBDIR.${MK_MAKE}+= bmake +SUBDIR.${MK_MAN}+= kernel-man +SUBDIR.${MK_MLX5TOOL}+= mlx-tools +SUBDIR.${MK_NIS}+= yp +SUBDIR.${MK_NTP}+= ntp +SUBDIR.${MK_NUAGEINIT}+= nuageinit +SUBDIR.${MK_OFED}+= rdma +SUBDIR.${MK_OPENSSH}+= ssh +SUBDIR.${MK_OPENSSL}+= openssl +SUBDIR.${MK_PKGBOOTSTRAP}+= pkg-bootstrap +SUBDIR.${MK_PKGCONF}+= pkgconf +SUBDIR.${MK_PMC}+= pmc +SUBDIR.${MK_RESCUE}+= rescue +SUBDIR.${MK_SENDMAIL}+= sendmail libmilter +SUBDIR.${MK_SOUND}+= sound +SUBDIR.${MK_SYSCONS}+= syscons-data +SUBDIR.${MK_TCSH}+= csh +SUBDIR.${MK_TELNET}+= telnet +SUBDIR.${MK_TESTS}+= tests +SUBDIR.${MK_TESTS_SUPPORT}+= atf kyua +SUBDIR.${MK_UNBOUND}+= local-unbound +SUBDIR.${MK_VI}+= vi +SUBDIR.${MK_VT}+= vt-data +SUBDIR.${MK_WIRELESS}+= hostapd wpa +SUBDIR.${MK_ZFS}+= zfs +SUBDIR.${MK_ZONEINFO}+= zoneinfo + +.include + +SUBDIR_PARALLEL= + +.ORDER: all stagepackages + +.include diff --git a/packages/Makefile.amd64 b/packages/Makefile.amd64 new file mode 100644 index 00000000000..ff2780f326e --- /dev/null +++ b/packages/Makefile.amd64 @@ -0,0 +1,23 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +SUBDIR+= libvgl + +SUBDIR.${MK_ACPI}+= acpi +SUBDIR.${MK_APM}+= apm +SUBDIR.${MK_BHYVE}+= bhyve +SUBDIR.${MK_BHYVE}+= libvmmapi +SUBDIR.${MK_PMC}+= libipt diff --git a/packages/Makefile.arm b/packages/Makefile.arm new file mode 100644 index 00000000000..db36ead2382 --- /dev/null +++ b/packages/Makefile.arm @@ -0,0 +1,18 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +SUBDIR.${MK_ACPI}+= acpi +SUBDIR.${MK_APM}+= apm diff --git a/packages/Makefile.arm64 b/packages/Makefile.arm64 new file mode 100644 index 00000000000..4bfca51bd03 --- /dev/null +++ b/packages/Makefile.arm64 @@ -0,0 +1,20 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +SUBDIR.${MK_ACPI}+= acpi +SUBDIR.${MK_APM}+= apm +SUBDIR.${MK_BHYVE}+= bhyve +SUBDIR.${MK_BHYVE}+= libvmmapi diff --git a/packages/Makefile.powerpc b/packages/Makefile.powerpc new file mode 100644 index 00000000000..db36ead2382 --- /dev/null +++ b/packages/Makefile.powerpc @@ -0,0 +1,18 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +SUBDIR.${MK_ACPI}+= acpi +SUBDIR.${MK_APM}+= apm diff --git a/packages/Makefile.riscv64 b/packages/Makefile.riscv64 new file mode 100644 index 00000000000..4bfca51bd03 --- /dev/null +++ b/packages/Makefile.riscv64 @@ -0,0 +1,20 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +SUBDIR.${MK_ACPI}+= acpi +SUBDIR.${MK_APM}+= apm +SUBDIR.${MK_BHYVE}+= bhyve +SUBDIR.${MK_BHYVE}+= libvmmapi diff --git a/packages/acct/Makefile b/packages/acct/Makefile new file mode 100644 index 00000000000..951ef1f994e --- /dev/null +++ b/packages/acct/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= acct + +.include diff --git a/release/packages/ucl/acct-all.ucl b/packages/acct/acct.ucl similarity index 96% rename from release/packages/ucl/acct-all.ucl rename to packages/acct/acct.ucl index e6c98c3180c..a96e3cc0847 100644 --- a/release/packages/ucl/acct-all.ucl +++ b/packages/acct/acct.ucl @@ -29,7 +29,3 @@ lastcomm(1) command to view this information. However, system accounting is not intended as a security auditing mechanism; use the OpenBSM auditing system provided in the $PKG_NAME_PREFIX-audit package for that. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/acpi/Makefile b/packages/acpi/Makefile new file mode 100644 index 00000000000..360ecf22e9e --- /dev/null +++ b/packages/acpi/Makefile @@ -0,0 +1,12 @@ +WORLDPACKAGE= acpi + +# On these platforms, acpi only contains config files. +.if ${MACHINE_ARCH} == "armv7" || ${MACHINE} == "powerpc" || \ + ${MACHINE_ARCH} == "riscv64" +SUBPACKAGES= +.endif + +# ACPI isn't applicable in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/acpi-all.ucl b/packages/acpi/acpi.ucl similarity index 97% rename from release/packages/ucl/acpi-all.ucl rename to packages/acpi/acpi.ucl index 9b63b825bd6..96e63db64d1 100644 --- a/release/packages/ucl/acpi-all.ucl +++ b/packages/acpi/acpi.ucl @@ -34,7 +34,3 @@ ACPI implementation in the kernel: * acpidump(8) dumps the system's raw ACPI data. * iasl(8) is the Intel ACPI compiler/decompiler EOD - -annotations { - set = "optional" -} diff --git a/packages/apm/Makefile b/packages/apm/Makefile new file mode 100644 index 00000000000..ddf8d1ed12a --- /dev/null +++ b/packages/apm/Makefile @@ -0,0 +1,12 @@ +WORLDPACKAGE= apm + +# On non-amd64 platforms, this package only contain an rc script. +# (This should be fixed.) +.if ${MACHINE_CPUARCH} != "amd64" +SUBPACKAGES= +.endif + +# APM isn't applicable to jails. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/apm-all.ucl b/packages/apm/apm.ucl similarity index 97% rename from release/packages/ucl/apm-all.ucl rename to packages/apm/apm.ucl index a0ade7fb8a5..1318befc427 100644 --- a/release/packages/ucl/apm-all.ucl +++ b/packages/apm/apm.ucl @@ -27,7 +27,3 @@ This package provides apm(8), a utility which can be used to monitor the APM state and change the system power mode, and the /etc/rc.d/apm service which can enable and disable APM at system startup and shutdown. EOD - -annotations { - set = "optional" -} diff --git a/packages/at/Makefile b/packages/at/Makefile new file mode 100644 index 00000000000..1245e12fb58 --- /dev/null +++ b/packages/at/Makefile @@ -0,0 +1,10 @@ +WORLDPACKAGE= at + +PKG_SETS= minimal minimal-jail + +# atrun relies on cron to work. +PKG_DEPS.at+= cron +# at(1) passes the command to /bin/sh +PKG_DEPS.at+= runtime + +.include diff --git a/release/packages/ucl/at-all.ucl b/packages/at/at.ucl similarity index 96% rename from release/packages/ucl/at-all.ucl rename to packages/at/at.ucl index 32c720c48b9..2a66f1a0318 100644 --- a/release/packages/ucl/at-all.ucl +++ b/packages/at/at.ucl @@ -27,7 +27,3 @@ This package provides two utilities used to execute a command at a later time: Note that batch(1) is not intended to be a full batch scheduling system, and can only run commands on the local system. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/atf/Makefile b/packages/atf/Makefile new file mode 100644 index 00000000000..2ed0edee967 --- /dev/null +++ b/packages/atf/Makefile @@ -0,0 +1,4 @@ +WORLDPACKAGE= atf +SUBPACKAGES= dbg dev lib man + +.include diff --git a/release/packages/ucl/atf-all.ucl b/packages/atf/atf.ucl similarity index 97% rename from release/packages/ucl/atf-all.ucl rename to packages/atf/atf.ucl index 6e86955fb53..4d4bf8b6b69 100644 --- a/release/packages/ucl/atf-all.ucl +++ b/packages/atf/atf.ucl @@ -33,7 +33,3 @@ test programs in a variety of languages. These libraries all offer similar functionality and any test program written with them exposes a consistent user interface. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/audit/Makefile b/packages/audit/Makefile new file mode 100644 index 00000000000..1d0014ecebb --- /dev/null +++ b/packages/audit/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= audit +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/audit-all.ucl b/packages/audit/audit.ucl similarity index 97% rename from release/packages/ucl/audit-all.ucl rename to packages/audit/audit.ucl index 0ff79f7c6b7..c3181c6cedb 100644 --- a/release/packages/ucl/audit-all.ucl +++ b/packages/audit/audit.ucl @@ -42,7 +42,3 @@ system. This package provides the auditing daemon auditd(8) and various utilities used to manage the auditing system and work with audit data. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/autofs/Makefile b/packages/autofs/Makefile new file mode 100644 index 00000000000..9f43e22ee51 --- /dev/null +++ b/packages/autofs/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= autofs + +.include diff --git a/release/packages/ucl/autofs-all.ucl b/packages/autofs/autofs.ucl similarity index 96% rename from release/packages/ucl/autofs-all.ucl rename to packages/autofs/autofs.ucl index d45949847ce..a51292e78fa 100644 --- a/release/packages/ucl/autofs-all.ucl +++ b/packages/autofs/autofs.ucl @@ -27,7 +27,3 @@ or to provide automated access to NFS servers via the /net mountpoint. This package provides the automountd(8) daemon which is responsible for managing this, as well as the management utility automount(8). EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/bhyve/Makefile b/packages/bhyve/Makefile new file mode 100644 index 00000000000..26658cf9934 --- /dev/null +++ b/packages/bhyve/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= bhyve + +.include diff --git a/release/packages/ucl/bhyve-all.ucl b/packages/bhyve/bhyve.ucl similarity index 97% rename from release/packages/ucl/bhyve-all.ucl rename to packages/bhyve/bhyve.ucl index c01a826a123..ac250b0f2ad 100644 --- a/release/packages/ucl/bhyve-all.ucl +++ b/packages/bhyve/bhyve.ucl @@ -40,7 +40,3 @@ loader. An example script is also provided in /usr/share/examples/bhyve/vmrun.sh which can be used to run simple virtual machines. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/blocklist/Makefile b/packages/blocklist/Makefile new file mode 100644 index 00000000000..07333b5e405 --- /dev/null +++ b/packages/blocklist/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= blocklist +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/blocklist-all.ucl b/packages/blocklist/blocklist.ucl similarity index 96% rename from release/packages/ucl/blocklist-all.ucl rename to packages/blocklist/blocklist.ucl index 273df85fc22..dea2840af22 100644 --- a/release/packages/ucl/blocklist-all.ucl +++ b/packages/blocklist/blocklist.ucl @@ -28,7 +28,3 @@ only daemons which have had blocklist support added will work. The blocklistd(8) daemon was previously named blacklistd(8). EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/bluetooth/Makefile b/packages/bluetooth/Makefile new file mode 100644 index 00000000000..d47e76c3731 --- /dev/null +++ b/packages/bluetooth/Makefile @@ -0,0 +1,11 @@ +WORLDPACKAGE= bluetooth +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +# Bluetooth isn't applicable to jails. +PKG_SETS= optional + +# rfcomm_pppd(8) uses ppp(8) +PKG_DEPS.bluetooth+= ppp + +.include diff --git a/release/packages/ucl/bluetooth-all.ucl b/packages/bluetooth/bluetooth.ucl similarity index 97% rename from release/packages/ucl/bluetooth-all.ucl rename to packages/bluetooth/bluetooth.ucl index 55ce4f37f47..a2376996ec6 100644 --- a/release/packages/ucl/bluetooth-all.ucl +++ b/packages/bluetooth/bluetooth.ucl @@ -24,7 +24,3 @@ network devices, including the /etc/rc.d/bluetooth service which manages the Bluetooth stack when Bluetooth devices are attached or removed, and the rfcomm_pppd(8) daemon which manages PPP connections over Bluetooth. EOD - -annotations { - set = "optional" -} diff --git a/packages/bmake/Makefile b/packages/bmake/Makefile new file mode 100644 index 00000000000..a5aed0874fc --- /dev/null +++ b/packages/bmake/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= bmake + +PKG_SETS= devel + +.include diff --git a/release/packages/ucl/bmake-all.ucl b/packages/bmake/bmake.ucl similarity index 97% rename from release/packages/ucl/bmake-all.ucl rename to packages/bmake/bmake.ucl index 8283d0ed5c2..fee825f7fe9 100644 --- a/release/packages/ucl/bmake-all.ucl +++ b/packages/bmake/bmake.ucl @@ -22,7 +22,3 @@ desc = < + +WORLDPACKAGE= bootloader +SUBPACKAGES= + +# bootloader-dbg is only built if we're building userboot, which is specific +# to amd64. +.if ${MACHINE_CPUARCH} == "amd64" +SUBPACKAGES+= dbg +.endif + +# The bootloader "dev" package only contains manpages. +.if ${MK_MAN} != "no" +. if ${MK_MANSPLITPKG} != "no" +SUBPACKAGES+= man +. else +SUBPACKAGES+= dev +. endif +.endif + +# The bootloader isn't normally used in a jail. +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/bootloader-all.ucl b/packages/bootloader/bootloader.ucl similarity index 97% rename from release/packages/ucl/bootloader-all.ucl rename to packages/bootloader/bootloader.ucl index a0487abeba8..44bf45cf79e 100644 --- a/release/packages/ucl/bootloader-all.ucl +++ b/packages/bootloader/bootloader.ucl @@ -23,7 +23,3 @@ The boot loader is used to bootstrap the kernel from the system firmware environment during startup. This package contains the loader itself and various configuration files and scripts used by the loader. EOD - -annotations { - set = minimal -} diff --git a/packages/bsdconfig/Makefile b/packages/bsdconfig/Makefile new file mode 100644 index 00000000000..94cb0234608 --- /dev/null +++ b/packages/bsdconfig/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= bsdconfig +SUBPACKAGES= man + +# bsdconfig is written in shell script, so it needs /bin/sh +PKG_DEPS.bsdconfig+= runtime + +.include diff --git a/release/packages/ucl/bsdconfig-all.ucl b/packages/bsdconfig/bsdconfig.ucl similarity index 95% rename from release/packages/ucl/bsdconfig-all.ucl rename to packages/bsdconfig/bsdconfig.ucl index 42e4114ba20..ba34e5b96fe 100644 --- a/release/packages/ucl/bsdconfig-all.ucl +++ b/packages/bsdconfig/bsdconfig.ucl @@ -25,7 +25,3 @@ configuration, including services, networking and disks. This package also provides sysrc(8), a command-line utility for managing the rc.conf(5) configuration. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/bsdinstall/Makefile b/packages/bsdinstall/Makefile new file mode 100644 index 00000000000..251ce510594 --- /dev/null +++ b/packages/bsdinstall/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= bsdinstall + +# bsdinstall is written in shell script, so it needs /bin/sh +PKG_DEPS.bsdinstall+= runtime +# The pkgbase script requires flua +PKG_DEPS.bsdinstall+= flua + +.include diff --git a/release/packages/ucl/bsdinstall-all.ucl b/packages/bsdinstall/bsdinstall.ucl similarity index 97% rename from release/packages/ucl/bsdinstall-all.ucl rename to packages/bsdinstall/bsdinstall.ucl index a3fa820e138..cfa303bc2ba 100644 --- a/release/packages/ucl/bsdinstall-all.ucl +++ b/packages/bsdinstall/bsdinstall.ucl @@ -35,7 +35,3 @@ bsdinstall is used for installation of new systems, both for system setup from installation media, e.g., CD-ROMs, and for use on live systems to prepare VM images and jails. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/bsnmp/Makefile b/packages/bsnmp/Makefile new file mode 100644 index 00000000000..2a281daf0a2 --- /dev/null +++ b/packages/bsnmp/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= bsnmp +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/bsnmp-all.ucl b/packages/bsnmp/bsnmp.ucl similarity index 97% rename from release/packages/ucl/bsnmp-all.ucl rename to packages/bsnmp/bsnmp.ucl index 9d02968b0eb..683b6ff51a5 100644 --- a/release/packages/ucl/bsnmp-all.ucl +++ b/packages/bsnmp/bsnmp.ucl @@ -40,7 +40,3 @@ Protocol). It is intended to serve only the absolute basic MIBs and implement all other MIBs through loadable modules. In this way the bsnmpd can be used in unexpected ways. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/bzip2/Makefile b/packages/bzip2/Makefile new file mode 100644 index 00000000000..fd81d331d8b --- /dev/null +++ b/packages/bzip2/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= bzip2 +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/bzip2-all.ucl b/packages/bzip2/bzip2.ucl similarity index 88% rename from release/packages/ucl/bzip2-all.ucl rename to packages/bzip2/bzip2.ucl index 5bf1ef0c70f..8c2090cf9ba 100644 --- a/release/packages/ucl/bzip2-all.ucl +++ b/packages/bzip2/bzip2.ucl @@ -6,7 +6,3 @@ algorithm, and Huffman coding. Compression is generally considerably better than that achieved by more conventional LZ77/LZ78-based compressors, and approaches the performance of the PPM family of statistical compressors. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/caroot/Makefile b/packages/caroot/Makefile new file mode 100644 index 00000000000..edf8246090d --- /dev/null +++ b/packages/caroot/Makefile @@ -0,0 +1,11 @@ +WORLDPACKAGE= caroot +SUBPACKAGES= + +PKG_SETS= minimal minimal-jail + +UCLSRC= common.ucl +UCLSRC.caroot= caroot.ucl + +PKG_DEPS.caroot+= certctl + +.include diff --git a/release/packages/ucl/caroot.ucl b/packages/caroot/caroot.ucl similarity index 80% rename from release/packages/ucl/caroot.ucl rename to packages/caroot/caroot.ucl index 72c1105248c..f94d7e9dd4b 100644 --- a/release/packages/ucl/caroot.ucl +++ b/packages/caroot/caroot.ucl @@ -1,8 +1,5 @@ -deps { - "certctl": { - version = "${VERSION}" - } -} +.include(try=false) "${SRCDIR}/common.ucl" + scripts: { post-install = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ ${PKG_METALOG:+-U -M $PKG_METALOG} rehash" post-deinstall = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ ${PKG_METALOG:+-U -M $PKG_METALOG} rehash" diff --git a/release/packages/ucl/caroot-all.ucl b/packages/caroot/common.ucl similarity index 96% rename from release/packages/ucl/caroot-all.ucl rename to packages/caroot/common.ucl index 213ef37f240..56861669d87 100644 --- a/release/packages/ucl/caroot-all.ucl +++ b/packages/caroot/common.ucl @@ -30,7 +30,3 @@ refer to: https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/policy/ EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/ccdconfig/Makefile b/packages/ccdconfig/Makefile new file mode 100644 index 00000000000..d21cb32b696 --- /dev/null +++ b/packages/ccdconfig/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= ccdconfig + +# ccdconfig doesn't work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/ccdconfig-all.ucl b/packages/ccdconfig/ccdconfig.ucl similarity index 96% rename from release/packages/ucl/ccdconfig-all.ucl rename to packages/ccdconfig/ccdconfig.ucl index 7c23c56d9a2..8f7d1e4300a 100644 --- a/release/packages/ucl/ccdconfig-all.ucl +++ b/packages/ccdconfig/ccdconfig.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/certctl-all.ucl b/packages/certctl/certctl.ucl similarity index 97% rename from release/packages/ucl/certctl-all.ucl rename to packages/certctl/certctl.ucl index 4fe459eb309..c535e20bc9e 100644 --- a/release/packages/ucl/certctl-all.ucl +++ b/packages/certctl/certctl.ucl @@ -31,7 +31,3 @@ desc = < diff --git a/release/packages/ucl/clang-all.ucl b/packages/clang/clang.ucl similarity index 93% rename from release/packages/ucl/clang-all.ucl rename to packages/clang/clang.ucl index 86cac409fa9..89529a24fb6 100644 --- a/release/packages/ucl/clang-all.ucl +++ b/packages/clang/clang.ucl @@ -25,8 +25,7 @@ This package provides the clang(1) frontend as well as related utilities for working with object files. EOD -licenses = [ "Apache-2.0 WITH LLVM-exception" ] - -annotations { - set = devel -} +shlibs_required_ignore: [ + "libc.so.7:32", + "libgcc_s.so.1:32", +] diff --git a/packages/clibs/Makefile b/packages/clibs/Makefile new file mode 100644 index 00000000000..d2184c5e6a2 --- /dev/null +++ b/packages/clibs/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= clibs +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= minimal minimal-jail +PKG_VITAL.clibs= + +.include diff --git a/release/packages/ucl/clibs-all.ucl b/packages/clibs/clibs.ucl similarity index 95% rename from release/packages/ucl/clibs-all.ucl rename to packages/clibs/clibs.ucl index fed3c0ee525..1a6b694fe2a 100644 --- a/release/packages/ucl/clibs-all.ucl +++ b/packages/clibs/clibs.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/console-tools-all.ucl b/packages/console-tools/console-tools.ucl similarity index 97% rename from release/packages/ucl/console-tools-all.ucl rename to packages/console-tools/console-tools.ucl index 1eef02d8370..fee09a1ea3f 100644 --- a/release/packages/ucl/console-tools-all.ucl +++ b/packages/console-tools/console-tools.ucl @@ -29,7 +29,3 @@ to the system: * moused(8) can be used to interface with a mouse and provide a graphical mouse cursor on the video console. EOD - -annotations { - set = "optional" -} diff --git a/packages/cron/Makefile b/packages/cron/Makefile new file mode 100644 index 00000000000..532eb8cf6c4 --- /dev/null +++ b/packages/cron/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= cron + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/cron-all.ucl b/packages/cron/cron.ucl similarity index 96% rename from release/packages/ucl/cron-all.ucl rename to packages/cron/cron.ucl index a0aa25bf040..dbdabd642ec 100644 --- a/release/packages/ucl/cron-all.ucl +++ b/packages/cron/cron.ucl @@ -25,7 +25,3 @@ file or user-specific crontabs installed using the crontab(1) utility. This implementation of cron(8) is based on Vixie Cron. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/csh/Makefile b/packages/csh/Makefile new file mode 100644 index 00000000000..f10ce49c1c8 --- /dev/null +++ b/packages/csh/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= csh + +.include diff --git a/release/packages/ucl/csh-all.ucl b/packages/csh/csh.ucl similarity index 97% rename from release/packages/ucl/csh-all.ucl rename to packages/csh/csh.ucl index 1df758ed29e..a158b5cd4fc 100644 --- a/release/packages/ucl/csh-all.ucl +++ b/packages/csh/csh.ucl @@ -38,7 +38,3 @@ interactive login shell and a shell script command processor. It includes a command-line editor, programmable word completion, spelling correction, a history mechanism, job control, and a C-like syntax. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ctf/Makefile b/packages/ctf/Makefile new file mode 100644 index 00000000000..1311ad18f6c --- /dev/null +++ b/packages/ctf/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= ctf +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_LICENSES= CDDL-1.0 +PKG_SETS= devel + +.include diff --git a/release/packages/ucl/ctf-all.ucl b/packages/ctf/ctf.ucl similarity index 96% rename from release/packages/ucl/ctf-all.ucl rename to packages/ctf/ctf.ucl index 970ac3ffb4f..41e56ffffde 100644 --- a/release/packages/ucl/ctf-all.ucl +++ b/packages/ctf/ctf.ucl @@ -32,9 +32,3 @@ This package provides the ctfconvert(1), ctfdump(1) and ctfmerge(1) utilities which are used to work with CTF data, and the libctf library which allows applications to access CTF debugging information programmatically. EOD - -licenses = [ "CDDL-1.0" ] - -annotations { - set = devel -} diff --git a/packages/ctl/Makefile b/packages/ctl/Makefile new file mode 100644 index 00000000000..4797b079a43 --- /dev/null +++ b/packages/ctl/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= ctl + +# The CAM target layer doesn't work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/ctl-all.ucl b/packages/ctl/ctl.ucl similarity index 98% rename from release/packages/ucl/ctl-all.ucl rename to packages/ctl/ctl.ucl index 9aa4de455df..22eebb7a2ee 100644 --- a/release/packages/ucl/ctl-all.ucl +++ b/packages/ctl/ctl.ucl @@ -39,7 +39,3 @@ the CAM Target Layer configuration, accepting incoming iSCSI connections, performing authentication and passing connections to the kernel part of the native iSCSI target. EOD - -annotations { - set = "optional" -} diff --git a/packages/cxgbe-tools/Makefile b/packages/cxgbe-tools/Makefile new file mode 100644 index 00000000000..d4f2b7cee68 --- /dev/null +++ b/packages/cxgbe-tools/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= cxgbe-tools + +# cxgbe-tools is not generally useful in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/cxgbe-tools-all.ucl b/packages/cxgbe-tools/cxgbe-tools.ucl similarity index 97% rename from release/packages/ucl/cxgbe-tools-all.ucl rename to packages/cxgbe-tools/cxgbe-tools.ucl index 34e1718bb83..33701ae9695 100644 --- a/release/packages/ucl/cxgbe-tools-all.ucl +++ b/packages/cxgbe-tools/cxgbe-tools.ucl @@ -25,7 +25,3 @@ state of the interface, loading firmware, and configuring features such as the hardware packet filter, Quality-of-Service (QoS) scheduler, and TCP offload engine. EOD - -annotations { - set = "optional" -} diff --git a/packages/devd/Makefile b/packages/devd/Makefile new file mode 100644 index 00000000000..5997598ec13 --- /dev/null +++ b/packages/devd/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= devd + +PKG_SETS= minimal minimal-jail + +# devd uses /bin/sh to invoke hooks. +PKG_DEPS.devd+= runtime + +.include diff --git a/release/packages/ucl/devd-all.ucl b/packages/devd/devd.ucl similarity index 97% rename from release/packages/ucl/devd-all.ucl rename to packages/devd/devd.ucl index 573343aa758..0332055ad41 100644 --- a/release/packages/ucl/devd-all.ucl +++ b/packages/devd/devd.ucl @@ -34,7 +34,3 @@ dhclient(8) instance when the same adapter is removed. Another example would be for devd to use a table to locate and load via kldload(8) the proper driver for an unrecognized device that is added to the system. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/devmatch/Makefile b/packages/devmatch/Makefile new file mode 100644 index 00000000000..21bced815ee --- /dev/null +++ b/packages/devmatch/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= devmatch +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +# devmatch is not applicable to jails. +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/devmatch-all.ucl b/packages/devmatch/devmatch.ucl similarity index 97% rename from release/packages/ucl/devmatch-all.ucl rename to packages/devmatch/devmatch.ucl index 86560dfbec1..501e6fc1e9a 100644 --- a/release/packages/ucl/devmatch-all.ucl +++ b/packages/devmatch/devmatch.ucl @@ -23,7 +23,3 @@ The devmatch(8) utility is used to load kernel drivers for hardware attached to the running system. devmatch(8) is started at boot by rc(8), and during system operation by devd(8) when new hardware is attached to the system. EOD - -annotations { - set = minimal -} diff --git a/packages/dhclient/Makefile b/packages/dhclient/Makefile new file mode 100644 index 00000000000..789e700ecfc --- /dev/null +++ b/packages/dhclient/Makefile @@ -0,0 +1,10 @@ +WORLDPACKAGE= dhclient + +PKG_LICENSES= BSD-3-Clause +PKG_SETS= minimal minimal-jail + +# dhclient uses resolvconf to update /etc/resolv.conf in case the +# DHCP server returns nameserver addresses. +PKG_DEPS.dhclient+= resolvconf + +.include diff --git a/release/packages/ucl/dhclient-all.ucl b/packages/dhclient/dhclient.ucl similarity index 96% rename from release/packages/ucl/dhclient-all.ucl rename to packages/dhclient/dhclient.ucl index b540a23eeb7..57128e907b1 100644 --- a/release/packages/ucl/dhclient-all.ucl +++ b/packages/dhclient/dhclient.ucl @@ -42,9 +42,3 @@ address. The DHCP client is typically started automatically on boot, or by devd(8) when a new network interface is attached to the system. EOD - -licenses = [ "BSD-3-Clause" ] - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/dma/Makefile b/packages/dma/Makefile new file mode 100644 index 00000000000..4684760022b --- /dev/null +++ b/packages/dma/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= dma + +.include diff --git a/release/packages/ucl/dma-all.ucl b/packages/dma/dma.ucl similarity index 97% rename from release/packages/ucl/dma-all.ucl rename to packages/dma/dma.ucl index 1465fa44f5f..9abc83e8ee6 100644 --- a/release/packages/ucl/dma-all.ucl +++ b/packages/dma/dma.ucl @@ -46,7 +46,3 @@ systems, nor act as a mail exchanger for other hosts. If an SMTP server is required, or when more advanced mail routing is needed, consider using the $PKG_NAME_PREFIX-sendmail package instead. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/dtrace/Makefile b/packages/dtrace/Makefile new file mode 100644 index 00000000000..584629588bc --- /dev/null +++ b/packages/dtrace/Makefile @@ -0,0 +1,9 @@ +WORLDPACKAGE= dtrace +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +# DTrace doesn't work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/dtrace-all.ucl b/packages/dtrace/dtrace.ucl similarity index 97% rename from release/packages/ucl/dtrace-all.ucl rename to packages/dtrace/dtrace.ucl index c41ca59621d..7969ed59c14 100644 --- a/release/packages/ucl/dtrace-all.ucl +++ b/packages/dtrace/dtrace.ucl @@ -27,7 +27,3 @@ This package provides the dtrace(1) utility for executing DTrace scripts written in the D language, the utilities lockstat(1) and plockstat(1), and several example D scripts installed in /usr/share/dtrace. EOD - -annotations { - set = "optional" -} diff --git a/packages/dwatch/Makefile b/packages/dwatch/Makefile new file mode 100644 index 00000000000..8ea10032d42 --- /dev/null +++ b/packages/dwatch/Makefile @@ -0,0 +1,10 @@ +WORLDPACKAGE= dwatch +SUBPACKAGES= man + +# DTrace doesn't work in a jail. +PKG_SETS= optional + +# dwatch is implemented using dtrace. +PKG_DEPS.dwatch+= dtrace + +.include diff --git a/release/packages/ucl/dwatch-all.ucl b/packages/dwatch/dwatch.ucl similarity index 98% rename from release/packages/ucl/dwatch-all.ucl rename to packages/dwatch/dwatch.ucl index c4a6527677f..d4646c78101 100644 --- a/release/packages/ucl/dwatch-all.ucl +++ b/packages/dwatch/dwatch.ucl @@ -35,7 +35,3 @@ DTrace scripts to coalesce trace output by date/time, process info, and [optionally] probe-specific data. dwatch also includes a set of pre-defined profiles for tracing common system operations. EOD - -annotations { - set = "optional" -} diff --git a/packages/ee/Makefile b/packages/ee/Makefile new file mode 100644 index 00000000000..e8d99a4f5b7 --- /dev/null +++ b/packages/ee/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= ee + +.include diff --git a/release/packages/ucl/ee-all.ucl b/packages/ee/ee.ucl similarity index 95% rename from release/packages/ucl/ee-all.ucl rename to packages/ee/ee.ucl index 93f9d5e056a..2caa658c40f 100644 --- a/release/packages/ucl/ee-all.ucl +++ b/packages/ee/ee.ucl @@ -23,7 +23,3 @@ The Easy Editor, ee(1), is a simple, user-friendly text editor. It provides a full-screen editing interface similar to vi(1), but is easier to learn for new users. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/efi-tools/Makefile b/packages/efi-tools/Makefile new file mode 100644 index 00000000000..c3cce431065 --- /dev/null +++ b/packages/efi-tools/Makefile @@ -0,0 +1,13 @@ +WORLDPACKAGE= efi-tools +SUBPACKAGES= dbg dev man + +# The 32-bit libraries are only built on certain architectures. +.if ${MACHINE_ARCH} == "aarch64" +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev +.endif + +# efi-tools is not applicable to jails. +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/efi-tools-all.ucl b/packages/efi-tools/efi-tools.ucl similarity index 97% rename from release/packages/ucl/efi-tools-all.ucl rename to packages/efi-tools/efi-tools.ucl index d6dc71dc616..52c966d7cda 100644 --- a/release/packages/ucl/efi-tools-all.ucl +++ b/packages/efi-tools/efi-tools.ucl @@ -35,7 +35,3 @@ the UEFI firmware from a running system: * efitable(8) can dump UEFI tables. EOD - -annotations { - set = minimal -} diff --git a/packages/examples/Makefile b/packages/examples/Makefile new file mode 100644 index 00000000000..3271e11bc1f --- /dev/null +++ b/packages/examples/Makefile @@ -0,0 +1,4 @@ +WORLDPACKAGE= examples +SUBPACKAGES= + +.include diff --git a/release/packages/ucl/examples-all.ucl b/packages/examples/examples.ucl similarity index 95% rename from release/packages/ucl/examples-all.ucl rename to packages/examples/examples.ucl index 15b0b8aadd0..fe7ce1c461b 100644 --- a/release/packages/ucl/examples-all.ucl +++ b/packages/examples/examples.ucl @@ -24,7 +24,3 @@ The examples are provided as self-contained C source code. Some useful graphics data related to the "Beastie" mascot are also provided. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/fd/Makefile b/packages/fd/Makefile new file mode 100644 index 00000000000..19fa31cf58e --- /dev/null +++ b/packages/fd/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= fd + +# Using fd in a jail would be unusual. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/fd-all.ucl b/packages/fd/fd.ucl similarity index 97% rename from release/packages/ucl/fd-all.ucl rename to packages/fd/fd.ucl index ff87148049e..768dac3c1a0 100644 --- a/release/packages/ucl/fd-all.ucl +++ b/packages/fd/fd.ucl @@ -26,7 +26,3 @@ by the fdc(4) driver: * fdformat(8) is used to format disks. * fdread(1) and fdwrite(1) read and write data to or from floppy disks. EOD - -annotations { - set = "optional" -} diff --git a/packages/fetch/Makefile b/packages/fetch/Makefile new file mode 100644 index 00000000000..34dee816e41 --- /dev/null +++ b/packages/fetch/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= fetch +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/fetch-all.ucl b/packages/fetch/fetch.ucl similarity index 96% rename from release/packages/ucl/fetch-all.ucl rename to packages/fetch/fetch.ucl index 5a3c0be826f..b61e895489c 100644 --- a/release/packages/ucl/fetch-all.ucl +++ b/packages/fetch/fetch.ucl @@ -27,7 +27,3 @@ are newer on the remote site. Also provided is fetch(3), a library which allows applications to use this functionality programmatically. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/firmware-iwm/Makefile b/packages/firmware-iwm/Makefile new file mode 100644 index 00000000000..4ceda65b444 --- /dev/null +++ b/packages/firmware-iwm/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= firmware-iwm +SUBPACKAGES= + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/firmware-iwm-all.ucl b/packages/firmware-iwm/firmware-iwm.ucl similarity index 96% rename from release/packages/ucl/firmware-iwm-all.ucl rename to packages/firmware-iwm/firmware-iwm.ucl index 7b6b7ed80ed..c737eecd6dc 100644 --- a/release/packages/ucl/firmware-iwm-all.ucl +++ b/packages/firmware-iwm/firmware-iwm.ucl @@ -22,7 +22,3 @@ desc = < + +WORLDPACKAGE= flua +SUBPACKAGES= dbg + +# The flua "dev" package only contains manpages. +.if ${MK_MAN} != "no" +. if ${MK_MANSPLITPKG} != "no" +SUBPACKAGES+= man +. else +SUBPACKAGES+= dev +. endif +.endif + +.include diff --git a/release/packages/ucl/flua-all.ucl b/packages/flua/flua.ucl similarity index 95% rename from release/packages/ucl/flua-all.ucl rename to packages/flua/flua.ucl index 7488e2e3683..a855209bf99 100644 --- a/release/packages/ucl/flua-all.ucl +++ b/packages/flua/flua.ucl @@ -26,7 +26,3 @@ without notice. Supported versions of Lua for general use are available in the FreeBSD Ports Collection. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ftp/Makefile b/packages/ftp/Makefile new file mode 100644 index 00000000000..cbe7f6864c5 --- /dev/null +++ b/packages/ftp/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= ftp + +.include diff --git a/release/packages/ucl/ftp-all.ucl b/packages/ftp/ftp.ucl similarity index 95% rename from release/packages/ucl/ftp-all.ucl rename to packages/ftp/ftp.ucl index 626feabc69a..a8eac7b5794 100644 --- a/release/packages/ucl/ftp-all.ucl +++ b/packages/ftp/ftp.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/fwget-all.ucl b/packages/fwget/fwget.ucl similarity index 97% rename from release/packages/ucl/fwget-all.ucl rename to packages/fwget/fwget.ucl index ee7ae45128d..8d3d17ca3d2 100644 --- a/release/packages/ucl/fwget-all.ucl +++ b/packages/fwget/fwget.ucl @@ -28,7 +28,3 @@ FreeBSD Ports Collection. The fwget(8) utility can be used to detect and install the necessary firmware packages for hardware devices present on a running system. EOD - -annotations { - set = minimal -} diff --git a/packages/games/Makefile b/packages/games/Makefile new file mode 100644 index 00000000000..77dfbbe435d --- /dev/null +++ b/packages/games/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= games + +.include diff --git a/release/packages/ucl/games-all.ucl b/packages/games/games.ucl similarity index 95% rename from release/packages/ucl/games-all.ucl rename to packages/games/games.ucl index 0716b0c79c1..a4636c32153 100644 --- a/release/packages/ucl/games-all.ucl +++ b/packages/games/games.ucl @@ -26,7 +26,3 @@ Games distributed with the system: * caesar(6) and rot13(6) implement a trivial (and easily broken) text encryption system called a Caesar cipher. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/geom/Makefile b/packages/geom/Makefile new file mode 100644 index 00000000000..56fe9105a3f --- /dev/null +++ b/packages/geom/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= geom +COMPAT_PKG= yes +COMPAT_PKGS= dbg + +# GEOM doesn't work in a jail. +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/geom-all.ucl b/packages/geom/geom.ucl similarity index 97% rename from release/packages/ucl/geom-all.ucl rename to packages/geom/geom.ucl index 9375f5dbfc7..92be6455413 100644 --- a/release/packages/ucl/geom-all.ucl +++ b/packages/geom/geom.ucl @@ -23,7 +23,3 @@ The geom(4) subsystem provides a modular, generic interface to manage disk devices, including disk partitioning, basic RAID, and block-level encryption. This package provides the command-line utilities used to manage GEOM. EOD - -annotations { - set = minimal -} diff --git a/packages/ggate/Makefile b/packages/ggate/Makefile new file mode 100644 index 00000000000..26418ac0f37 --- /dev/null +++ b/packages/ggate/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= ggate + +# GEOM Gate doesn't work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/ggate-all.ucl b/packages/ggate/ggate.ucl similarity index 97% rename from release/packages/ucl/ggate-all.ucl rename to packages/ggate/ggate.ucl index 9a8ba37f0f6..9b968e1b123 100644 --- a/release/packages/ucl/ggate-all.ucl +++ b/packages/ggate/ggate.ucl @@ -30,7 +30,3 @@ such as iSCSI. This package provides the ggated(8) server used to export devices, and the ggatec(8) client used to access them. EOD - -annotations { - set = "optional" -} diff --git a/packages/googletest/Makefile b/packages/googletest/Makefile new file mode 100644 index 00000000000..89ce168ea74 --- /dev/null +++ b/packages/googletest/Makefile @@ -0,0 +1,4 @@ +WORLDPACKAGE= googletest +SUBPACKAGES= dbg dev + +.include diff --git a/release/packages/ucl/googletest-all.ucl b/packages/googletest/googletest.ucl similarity index 96% rename from release/packages/ucl/googletest-all.ucl rename to packages/googletest/googletest.ucl index 889e8a65f31..72e3ca883f2 100644 --- a/release/packages/ucl/googletest-all.ucl +++ b/packages/googletest/googletest.ucl @@ -27,7 +27,3 @@ base system, and is not intended for third-party users. A supported version of Google Test may be found in the FreeBSD Ports Collection as devel/googletest. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/gssd/Makefile b/packages/gssd/Makefile new file mode 100644 index 00000000000..45210777253 --- /dev/null +++ b/packages/gssd/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= gssd + +.include diff --git a/release/packages/ucl/gssd-all.ucl b/packages/gssd/gssd.ucl similarity index 96% rename from release/packages/ucl/gssd-all.ucl rename to packages/gssd/gssd.ucl index c3e76e365ac..60d976bfa82 100644 --- a/release/packages/ucl/gssd-all.ucl +++ b/packages/gssd/gssd.ucl @@ -28,7 +28,3 @@ to fetch authentication data such as Kerberos tickets from userland. This daemon is required when using Kerberos authentication with NFS. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/hast/Makefile b/packages/hast/Makefile new file mode 100644 index 00000000000..5b858b8a53c --- /dev/null +++ b/packages/hast/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= hast + +# HAST doesn't work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/hast-all.ucl b/packages/hast/hast.ucl similarity index 96% rename from release/packages/ucl/hast-all.ucl rename to packages/hast/hast.ucl index 9fb4ed1a350..f4eed4eb81b 100644 --- a/release/packages/ucl/hast-all.ucl +++ b/packages/hast/hast.ucl @@ -23,7 +23,3 @@ The Highly Available Storage daemon, hastd(8), provides replication of block storage devices between two machines on a network. HAST can be used by itself or as part of an HA cluster to provide redundant cluster storage. EOD - -annotations { - set = "optional" -} diff --git a/packages/hostapd/Makefile b/packages/hostapd/Makefile new file mode 100644 index 00000000000..7611e457fc3 --- /dev/null +++ b/packages/hostapd/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= hostapd + +# Using hostapd in a jail would be unusual. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/hostapd-all.ucl b/packages/hostapd/hostapd.ucl similarity index 97% rename from release/packages/ucl/hostapd-all.ucl rename to packages/hostapd/hostapd.ucl index cb25beab4f5..a2639c46493 100644 --- a/release/packages/ucl/hostapd-all.ucl +++ b/packages/hostapd/hostapd.ucl @@ -24,7 +24,3 @@ IEEE Std 802.11 wireless network interface configured in Access Point (AP) mode. hostapd can authenticate clients itself via 802.11i (WPA), or via 802.1X (EAP) using an external RADIUS server. EOD - -annotations { - set = "optional" -} diff --git a/packages/hyperv-tools/Makefile b/packages/hyperv-tools/Makefile new file mode 100644 index 00000000000..3cf7c179764 --- /dev/null +++ b/packages/hyperv-tools/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= hyperv-tools + +# Hyper-V tools aren't applicable to jails. +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/hyperv-tools-all.ucl b/packages/hyperv-tools/hyperv-tools.ucl similarity index 96% rename from release/packages/ucl/hyperv-tools-all.ucl rename to packages/hyperv-tools/hyperv-tools.ucl index c6a66a7a6f0..1cd432ade24 100644 --- a/release/packages/ucl/hyperv-tools-all.ucl +++ b/packages/hyperv-tools/hyperv-tools.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/inetd-all.ucl b/packages/inetd/inetd.ucl similarity index 95% rename from release/packages/ucl/inetd-all.ucl rename to packages/inetd/inetd.ucl index bff3393e5f7..bf70f8a7458 100644 --- a/release/packages/ucl/inetd-all.ucl +++ b/packages/inetd/inetd.ucl @@ -23,7 +23,3 @@ The inetd(8) server listens for incoming network connections and spawns a process to handle the connection based on its configuration file. Some built-in servers for basic services are also provided. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ipf/Makefile b/packages/ipf/Makefile new file mode 100644 index 00000000000..c6e6232fdf8 --- /dev/null +++ b/packages/ipf/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= ipf + +.include diff --git a/release/packages/ucl/ipf-all.ucl b/packages/ipf/ipf.ucl similarity index 96% rename from release/packages/ucl/ipf-all.ucl rename to packages/ipf/ipf.ucl index d9ca0424a44..232495d0bd8 100644 --- a/release/packages/ucl/ipf-all.ucl +++ b/packages/ipf/ipf.ucl @@ -25,7 +25,3 @@ This package provides the rc(8) services and utilities used to manage the packet filter, and periodic(8) reports for filter activity. Some examples of configuring IP Filter are also provided in /usr/share/examples/ipfilter. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ipfw/Makefile b/packages/ipfw/Makefile new file mode 100644 index 00000000000..b0f0cd31514 --- /dev/null +++ b/packages/ipfw/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= ipfw + +.include diff --git a/release/packages/ucl/ipfw-all.ucl b/packages/ipfw/ipfw.ucl similarity index 96% rename from release/packages/ucl/ipfw-all.ucl rename to packages/ipfw/ipfw.ucl index 1a76aca6898..e46a087f068 100644 --- a/release/packages/ucl/ipfw-all.ucl +++ b/packages/ipfw/ipfw.ucl @@ -28,7 +28,3 @@ This package provides the ipfw(8) utility used to manage ipfw, periodic(8) reports on filter activity, and rc(8) services to automatically start ipfw at system startup. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/iscsi/Makefile b/packages/iscsi/Makefile new file mode 100644 index 00000000000..f550093d49b --- /dev/null +++ b/packages/iscsi/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= iscsi + +# The iSCSI initiator does not work in a jail. +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/iscsi-all.ucl b/packages/iscsi/iscsi.ucl similarity index 97% rename from release/packages/ucl/iscsi-all.ucl rename to packages/iscsi/iscsi.ucl index c59345a0e14..928dfe2d017 100644 --- a/release/packages/ucl/iscsi-all.ucl +++ b/packages/iscsi/iscsi.ucl @@ -24,7 +24,3 @@ network. This package provides iscsid(8), the userland component of the iSCSI initiator, the iscsictl(8) utility used to monitor and configure the initiator, and rc(8) services to configure the initiator during system startup. EOD - -annotations { - set = "optional" -} diff --git a/packages/jail/Makefile b/packages/jail/Makefile new file mode 100644 index 00000000000..9ad95ea0469 --- /dev/null +++ b/packages/jail/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= jail + +.include diff --git a/release/packages/ucl/jail-all.ucl b/packages/jail/jail.ucl similarity index 96% rename from release/packages/ucl/jail-all.ucl rename to packages/jail/jail.ucl index d2f069f2eb5..59b7a0c9982 100644 --- a/release/packages/ucl/jail-all.ucl +++ b/packages/jail/jail.ucl @@ -30,7 +30,3 @@ This package provides the jail(8), jexec(8) and jls(8) utilities for managing jails, and an optional rc(8) service to start jails during system startup using the /etc/jail.conf configuration file. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/kerberos-kdc/Makefile b/packages/kerberos-kdc/Makefile new file mode 100644 index 00000000000..36bbbba6c73 --- /dev/null +++ b/packages/kerberos-kdc/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= kerberos-kdc + +.include diff --git a/release/packages/ucl/kerberos-kdc-all.ucl b/packages/kerberos-kdc/kerberos-kdc.ucl similarity index 96% rename from release/packages/ucl/kerberos-kdc-all.ucl rename to packages/kerberos-kdc/kerberos-kdc.ucl index 21b0d2121be..fef5206055c 100644 --- a/release/packages/ucl/kerberos-kdc-all.ucl +++ b/packages/kerberos-kdc/kerberos-kdc.ucl @@ -27,7 +27,3 @@ Unix systems, as well as many other platforms. This package provides the Kerberos key distribution center (KDC), which manages the Kerberos database and issues tickets to Kerberos users. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/kerberos/Makefile b/packages/kerberos/Makefile new file mode 100644 index 00000000000..ec83ca60f69 --- /dev/null +++ b/packages/kerberos/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= kerberos +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/kerberos-all.ucl b/packages/kerberos/kerberos.ucl similarity index 96% rename from release/packages/ucl/kerberos-all.ucl rename to packages/kerberos/kerberos.ucl index c888ff5be6e..2dfb8dc27b7 100644 --- a/release/packages/ucl/kerberos-all.ucl +++ b/packages/kerberos/kerberos.ucl @@ -32,7 +32,3 @@ applications to be integrated with Kerberos. This version of Kerberos implements version 5 of the Kerberos protocol, sometimes called Kerberos V. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/kernel-man/Makefile b/packages/kernel-man/Makefile new file mode 100644 index 00000000000..685c2d6b326 --- /dev/null +++ b/packages/kernel-man/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= kernel-man +# kernel-man is already a man package, so there's no man subpackage. +SUBPACKAGES= + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/kernel-man.ucl b/packages/kernel-man/kernel-man.ucl similarity index 95% rename from release/packages/ucl/kernel-man.ucl rename to packages/kernel-man/kernel-man.ucl index 4f56bd12cd9..44cb9e2c686 100644 --- a/release/packages/ucl/kernel-man.ucl +++ b/packages/kernel-man/kernel-man.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/kyua-all.ucl b/packages/kyua/kyua.ucl similarity index 98% rename from release/packages/ucl/kyua-all.ucl rename to packages/kyua/kyua.ucl index f273b7c133d..80dd45e7e7c 100644 --- a/release/packages/ucl/kyua-all.ucl +++ b/packages/kyua/kyua.ucl @@ -50,7 +50,3 @@ libraries and languages. The test program library of choice is ATF, which kyua's design originated from. However, framework-less test programs and TAP-compliant test programs can also be executed through kyua. EOD - -annotations { - set = "devel" -} diff --git a/packages/lib9p/Makefile b/packages/lib9p/Makefile new file mode 100644 index 00000000000..b3bbd418e1f --- /dev/null +++ b/packages/lib9p/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= lib9p +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/lib9p-all.ucl b/packages/lib9p/lib9p.ucl similarity index 95% rename from release/packages/ucl/lib9p-all.ucl rename to packages/lib9p/lib9p.ucl index 2cc31d4a388..6e48d373380 100644 --- a/release/packages/ucl/lib9p-all.ucl +++ b/packages/lib9p/lib9p.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libarchive-all.ucl b/packages/libarchive/libarchive.ucl similarity index 97% rename from release/packages/ucl/libarchive-all.ucl rename to packages/libarchive/libarchive.ucl index 742734bf8b6..8388fc91654 100644 --- a/release/packages/ucl/libarchive-all.ucl +++ b/packages/libarchive/libarchive.ucl @@ -32,7 +32,3 @@ archives in various formats such as tar and cpio. libarchive also supports reading and writing archives compressed using various compression filters such as gzip and bzip2. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libbegemot/Makefile b/packages/libbegemot/Makefile new file mode 100644 index 00000000000..ae9d4418d84 --- /dev/null +++ b/packages/libbegemot/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libbegemot +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libbegemot-all.ucl b/packages/libbegemot/libbegemot.ucl similarity index 97% rename from release/packages/ucl/libbegemot-all.ucl rename to packages/libbegemot/libbegemot.ucl index 5bead26f69f..db745ffe233 100644 --- a/release/packages/ucl/libbegemot-all.ucl +++ b/packages/libbegemot/libbegemot.ucl @@ -44,7 +44,3 @@ The rpoll(3) family of functions is designed to overcome these restrictions. They support the well known and understood technique of event driven programming and, in addition to select(2) and poll(2) also support timers. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libblocksruntime/Makefile b/packages/libblocksruntime/Makefile new file mode 100644 index 00000000000..5584b2e93f3 --- /dev/null +++ b/packages/libblocksruntime/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libblocksruntime +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libblocksruntime-all.ucl b/packages/libblocksruntime/libblocksruntime.ucl similarity index 95% rename from release/packages/ucl/libblocksruntime-all.ucl rename to packages/libblocksruntime/libblocksruntime.ucl index 72f1fca68a9..129dac965a0 100644 --- a/release/packages/ucl/libblocksruntime-all.ucl +++ b/packages/libblocksruntime/libblocksruntime.ucl @@ -23,7 +23,3 @@ The BlocksRuntime library provides runtime support for Blocks, a non-standard extension to the C programming language which adds support for lambda expressions and closures. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libbsdstat/Makefile b/packages/libbsdstat/Makefile new file mode 100644 index 00000000000..30e98f5ef52 --- /dev/null +++ b/packages/libbsdstat/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libbsdstat +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libbsdstat-all.ucl b/packages/libbsdstat/libbsdstat.ucl similarity index 95% rename from release/packages/ucl/libbsdstat-all.ucl rename to packages/libbsdstat/libbsdstat.ucl index 56efee79a33..294f55e47f7 100644 --- a/release/packages/ucl/libbsdstat-all.ucl +++ b/packages/libbsdstat/libbsdstat.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libcasper-all.ucl b/packages/libcasper/libcasper.ucl similarity index 95% rename from release/packages/ucl/libcasper-all.ucl rename to packages/libcasper/libcasper.ucl index 387200b6d1b..8d980987dff 100644 --- a/release/packages/ucl/libcasper-all.ucl +++ b/packages/libcasper/libcasper.ucl @@ -24,7 +24,3 @@ under the Capsicum capability-based security framework. libcasper allows passing messages and capabilities between the sandboxed application and a helper process to allow restricted access to system and network resources. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libcompat/Makefile b/packages/libcompat/Makefile new file mode 100644 index 00000000000..ea97204a17f --- /dev/null +++ b/packages/libcompat/Makefile @@ -0,0 +1,15 @@ +.include + +WORLDPACKAGE= libcompat +SUBPACKAGES= dev +COMPAT_PKGS= dev + +# libcompat only contains static libraries and manpages, and therefore +# doesn't have a base package. +PKG_NO_BASE= + +.if ${MK_MANSPLITPKG} != "no" +SUBPACKAGES= man +.endif + +.include diff --git a/release/packages/ucl/libcompat-all.ucl b/packages/libcompat/libcompat.ucl similarity index 95% rename from release/packages/ucl/libcompat-all.ucl rename to packages/libcompat/libcompat.ucl index f78c54d9321..a150709d1bc 100644 --- a/release/packages/ucl/libcompat-all.ucl +++ b/packages/libcompat/libcompat.ucl @@ -22,7 +22,3 @@ desc = < + +WORLDPACKAGE= libcompiler_rt +SUBPACKAGES= dev +COMPAT_PKGS= dev + +# libcompiler_rt only contains static libraries and manpages, and therefore +# doesn't have a base package. +PKG_NO_BASE= + +.include diff --git a/release/packages/ucl/libcompiler_rt-all.ucl b/packages/libcompiler_rt/libcompiler_rt.ucl similarity index 65% rename from release/packages/ucl/libcompiler_rt-all.ucl rename to packages/libcompiler_rt/libcompiler_rt.ucl index af7890c6163..f21e629ac88 100644 --- a/release/packages/ucl/libcompiler_rt-all.ucl +++ b/packages/libcompiler_rt/libcompiler_rt.ucl @@ -2,7 +2,3 @@ comment = "LLVM compiler_rt library" desc = < diff --git a/release/packages/ucl/libcuse-all.ucl b/packages/libcuse/libcuse.ucl similarity index 96% rename from release/packages/ucl/libcuse-all.ucl rename to packages/libcuse/libcuse.ucl index 422fcb6d3d9..0d81ee40841 100644 --- a/release/packages/ucl/libcuse-all.ucl +++ b/packages/libcuse/libcuse.ucl @@ -33,7 +33,3 @@ desc = < diff --git a/release/packages/ucl/libdwarf-all.ucl b/packages/libdwarf/libdwarf.ucl similarity index 97% rename from release/packages/ucl/libdwarf-all.ucl rename to packages/libdwarf/libdwarf.ucl index 00ec7fcdc45..456ace323a6 100644 --- a/release/packages/ucl/libdwarf-all.ucl +++ b/packages/libdwarf/libdwarf.ucl @@ -32,7 +32,3 @@ The DWARF Access Library provides functions that allow an application to read and write debugging information in object files. The format of debugging information accessible through this API is defined by the DWARF standard. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libevent1/Makefile b/packages/libevent1/Makefile new file mode 100644 index 00000000000..4788977359b --- /dev/null +++ b/packages/libevent1/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libevent1 +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libevent1-all.ucl b/packages/libevent1/libevent1.ucl similarity index 95% rename from release/packages/ucl/libevent1-all.ucl rename to packages/libevent1/libevent1.ucl index 31fdf055d8d..9bfd8836207 100644 --- a/release/packages/ucl/libevent1-all.ucl +++ b/packages/libevent1/libevent1.ucl @@ -21,7 +21,3 @@ comment = "Private libevent1 library" desc = < diff --git a/release/packages/ucl/libexecinfo-all.ucl b/packages/libexecinfo/libexecinfo.ucl similarity index 95% rename from release/packages/ucl/libexecinfo-all.ucl rename to packages/libexecinfo/libexecinfo.ucl index 5cdbea8153d..bbb91e5c015 100644 --- a/release/packages/ucl/libexecinfo-all.ucl +++ b/packages/libexecinfo/libexecinfo.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libipt-all.ucl b/packages/libipt/libipt.ucl similarity index 85% rename from release/packages/ucl/libipt-all.ucl rename to packages/libipt/libipt.ucl index 21f8cf29d43..eb0ef6a32d4 100644 --- a/release/packages/ucl/libipt-all.ucl +++ b/packages/libipt/libipt.ucl @@ -4,7 +4,3 @@ The Intel Processor Trace (Intel PT) Decoder Library is Intel's reference implementation for decoding Intel PT. It can be used as a standalone library or it can be partially or fully integrated into your tool. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libldns/Makefile b/packages/libldns/Makefile new file mode 100644 index 00000000000..8ad2b44562d --- /dev/null +++ b/packages/libldns/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libldns +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libldns-all.ucl b/packages/libldns/libldns.ucl similarity index 95% rename from release/packages/ucl/libldns-all.ucl rename to packages/libldns/libldns.ucl index 98aa86f9bc5..43402d1c488 100644 --- a/release/packages/ucl/libldns-all.ucl +++ b/packages/libldns/libldns.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libmagic-all.ucl b/packages/libmagic/libmagic.ucl similarity index 95% rename from release/packages/ucl/libmagic-all.ucl rename to packages/libmagic/libmagic.ucl index dc623a14b57..dca9a430a32 100644 --- a/release/packages/ucl/libmagic-all.ucl +++ b/packages/libmagic/libmagic.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libmilter-all.ucl b/packages/libmilter/libmilter.ucl similarity index 86% rename from release/packages/ucl/libmilter-all.ucl rename to packages/libmilter/libmilter.ucl index 336e9f8c2c7..5c0e4925a9c 100644 --- a/release/packages/ucl/libmilter-all.ucl +++ b/packages/libmilter/libmilter.ucl @@ -5,7 +5,3 @@ programs access to mail messages as they are being processed in order to filter meta-information and content. libmilter provides support for applications implementing the milter interface. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libpathconv/Makefile b/packages/libpathconv/Makefile new file mode 100644 index 00000000000..01ddb3dc01e --- /dev/null +++ b/packages/libpathconv/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= libpathconv +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/libpathconv-all.ucl b/packages/libpathconv/libpathconv.ucl similarity index 95% rename from release/packages/ucl/libpathconv-all.ucl rename to packages/libpathconv/libpathconv.ucl index 98577498651..d19efbd7d93 100644 --- a/release/packages/ucl/libpathconv-all.ucl +++ b/packages/libpathconv/libpathconv.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/librpcsec_gss-all.ucl b/packages/librpcsec_gss/librpcsec_gss.ucl similarity index 97% rename from release/packages/ucl/librpcsec_gss-all.ucl rename to packages/librpcsec_gss/librpcsec_gss.ucl index a520b75be17..b95be8a498c 100644 --- a/release/packages/ucl/librpcsec_gss-all.ucl +++ b/packages/librpcsec_gss/librpcsec_gss.ucl @@ -41,7 +41,3 @@ no third party can access the data for a connection. The librpcsec_gss provides an API to allow applications to interact with the RPCSEC_GSS security mechanism. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/librss/Makefile b/packages/librss/Makefile new file mode 100644 index 00000000000..2dac4c98d33 --- /dev/null +++ b/packages/librss/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= librss +SUBPACKAGES= dbg dev +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/librss-all.ucl b/packages/librss/librss.ucl similarity index 80% rename from release/packages/ucl/librss-all.ucl rename to packages/librss/librss.ucl index 68b1ae5fbb1..8d5ea747592 100644 --- a/release/packages/ucl/librss-all.ucl +++ b/packages/librss/librss.ucl @@ -4,7 +4,3 @@ desc = < diff --git a/release/packages/ucl/libsqlite3-all.ucl b/packages/libsqlite3/libsqlite3.ucl similarity index 95% rename from release/packages/ucl/libsqlite3-all.ucl rename to packages/libsqlite3/libsqlite3.ucl index 8b770e1ce5e..de0d58b5f7c 100644 --- a/release/packages/ucl/libsqlite3-all.ucl +++ b/packages/libsqlite3/libsqlite3.ucl @@ -21,7 +21,3 @@ comment = "Private SQLite library" desc = < diff --git a/release/packages/ucl/libthread_db-all.ucl b/packages/libthread_db/libthread_db.ucl similarity index 95% rename from release/packages/ucl/libthread_db-all.ucl rename to packages/libthread_db/libthread_db.ucl index 540e155ccd9..3497e4dd76b 100644 --- a/release/packages/ucl/libthread_db-all.ucl +++ b/packages/libthread_db/libthread_db.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libucl-all.ucl b/packages/libucl/libucl.ucl similarity index 95% rename from release/packages/ucl/libucl-all.ucl rename to packages/libucl/libucl.ucl index 4763038a866..9785ce7e7dc 100644 --- a/release/packages/ucl/libucl-all.ucl +++ b/packages/libucl/libucl.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/libvgl-all.ucl b/packages/libvgl/libvgl.ucl similarity index 97% rename from release/packages/ucl/libvgl-all.ucl rename to packages/libvgl/libvgl.ucl index 88fd51fffff..e497ded006a 100644 --- a/release/packages/ucl/libvgl-all.ucl +++ b/packages/libvgl/libvgl.ucl @@ -45,7 +45,3 @@ memory before switching to another virtual console, and restoring when the user switches back. This allows several graphic applications at once, but on different virtual consoles. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/libvmmapi/Makefile b/packages/libvmmapi/Makefile new file mode 100644 index 00000000000..2cf3e0cf1fc --- /dev/null +++ b/packages/libvmmapi/Makefile @@ -0,0 +1,4 @@ +WORLDPACKAGE= libvmmapi +SUBPACKAGES= dbg dev + +.include diff --git a/release/packages/ucl/libvmmapi-all.ucl b/packages/libvmmapi/libvmmapi.ucl similarity index 95% rename from release/packages/ucl/libvmmapi-all.ucl rename to packages/libvmmapi/libvmmapi.ucl index 1246a488d4b..800e5365cfa 100644 --- a/release/packages/ucl/libvmmapi-all.ucl +++ b/packages/libvmmapi/libvmmapi.ucl @@ -21,7 +21,3 @@ comment = "Front-end library for the vmm(4) virtualization driver" desc = < diff --git a/release/packages/ucl/libyaml-all.ucl b/packages/libyaml/libyaml.ucl similarity index 95% rename from release/packages/ucl/libyaml-all.ucl rename to packages/libyaml/libyaml.ucl index abfded908a8..793b9437633 100644 --- a/release/packages/ucl/libyaml-all.ucl +++ b/packages/libyaml/libyaml.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/lld-all.ucl b/packages/lld/lld.ucl similarity index 95% rename from release/packages/ucl/lld-all.ucl rename to packages/lld/lld.ucl index c5711a292ea..74272aa1864 100644 --- a/release/packages/ucl/lld-all.ucl +++ b/packages/lld/lld.ucl @@ -23,9 +23,3 @@ ld.lld, installed as ld(1), is the ELF link loader provided by the LLVM project. lld is used to assemble compiled object files into an ELF executable or shared object file. EOD - -licenses = [ NCSA ] - -annotations { - set = devel -} diff --git a/packages/lldb/Makefile b/packages/lldb/Makefile new file mode 100644 index 00000000000..17ba3927136 --- /dev/null +++ b/packages/lldb/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= lldb + +PKG_SETS= devel +PKG_LICENSES= "Apache-2.0 WITH LLVM-exception" + +.include diff --git a/release/packages/ucl/lldb-all.ucl b/packages/lldb/lldb.ucl similarity index 94% rename from release/packages/ucl/lldb-all.ucl rename to packages/lldb/lldb.ucl index ab807adfe35..e82db2e8a35 100644 --- a/release/packages/ucl/lldb-all.ucl +++ b/packages/lldb/lldb.ucl @@ -21,9 +21,3 @@ comment = "LLVM debugger" desc = < diff --git a/release/packages/ucl/local-unbound-all.ucl b/packages/local-unbound/common.ucl similarity index 94% rename from release/packages/ucl/local-unbound-all.ucl rename to packages/local-unbound/common.ucl index e66f00be16a..e1db9380035 100644 --- a/release/packages/ucl/local-unbound-all.ucl +++ b/packages/local-unbound/common.ucl @@ -27,9 +27,3 @@ via the local_unbound rc(8) service. A full-featured version of Unbound is available in the FreeBSD Ports Collection as "dns/unbound". EOD - -licenses = [ BSD4CLAUSE ] - -annotations { - set = "optional,optional-jail" -} diff --git a/release/packages/ucl/local-unbound.ucl b/packages/local-unbound/local-unbound.ucl similarity index 87% rename from release/packages/ucl/local-unbound.ucl rename to packages/local-unbound/local-unbound.ucl index 34d4c3664c9..4c4c327a4b5 100644 --- a/release/packages/ucl/local-unbound.ucl +++ b/packages/local-unbound/local-unbound.ucl @@ -16,6 +16,8 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ +.include(try=false) "${SRCDIR}/common.ucl" + messages = [ { type: upgrade @@ -25,11 +27,3 @@ by running "service local_unbound setup" before restarting the service. EOM } ] - -deps { - # local-unbound uses resolvconf to update resolv.conf and to generate - # its forward.conf. - "resolvconf" { - version = "${VERSION}" - }, -} diff --git a/packages/locales/Makefile b/packages/locales/Makefile new file mode 100644 index 00000000000..ee2230e51f3 --- /dev/null +++ b/packages/locales/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= locales +SUBPACKAGES= + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/locales-all.ucl b/packages/locales/locales.ucl similarity index 95% rename from release/packages/ucl/locales-all.ucl rename to packages/locales/locales.ucl index 7a011a92d1d..d1c335a3fca 100644 --- a/release/packages/ucl/locales-all.ucl +++ b/packages/locales/locales.ucl @@ -23,7 +23,3 @@ This package provides the locale definitions (LC_*) for supported locales, allowing applications to adapt the format of numbers, dates and other values to the user's preferred locale and character encoding. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/lp/Makefile b/packages/lp/Makefile new file mode 100644 index 00000000000..d7d86c63a13 --- /dev/null +++ b/packages/lp/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= lp + +.include diff --git a/release/packages/ucl/lp-all.ucl b/packages/lp/lp.ucl similarity index 96% rename from release/packages/ucl/lp-all.ucl rename to packages/lp/lp.ucl index 6c4e55dbdfe..c8de754fb7c 100644 --- a/release/packages/ucl/lp-all.ucl +++ b/packages/lp/lp.ucl @@ -27,7 +27,3 @@ and dispatches them to an appropriate printer. Some sample lp filters for common printers are also provided in /usr/share/examples/printing. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/mandoc/Makefile b/packages/mandoc/Makefile new file mode 100644 index 00000000000..7cea32f7cdc --- /dev/null +++ b/packages/mandoc/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= mandoc + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/mandoc-all.ucl b/packages/mandoc/mandoc.ucl similarity index 95% rename from release/packages/ucl/mandoc-all.ucl rename to packages/mandoc/mandoc.ucl index ebd6a9da59e..60d995489dd 100644 --- a/release/packages/ucl/mandoc-all.ucl +++ b/packages/mandoc/mandoc.ucl @@ -23,7 +23,3 @@ This package provides man(1), a utility which can format and display system manual pages, along with the related utilities apropos(1) and makewhatis(8), and the mandoc(1) rendering backend. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/mlx-tools/Makefile b/packages/mlx-tools/Makefile new file mode 100644 index 00000000000..bb2bee4da83 --- /dev/null +++ b/packages/mlx-tools/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= mlx-tools + +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/mlx-tools-all.ucl b/packages/mlx-tools/mlx-tools.ucl similarity index 98% rename from release/packages/ucl/mlx-tools-all.ucl rename to packages/mlx-tools/mlx-tools.ucl index 3b254bf5157..ef02c60ae8b 100644 --- a/release/packages/ucl/mlx-tools-all.ucl +++ b/packages/mlx-tools/mlx-tools.ucl @@ -33,7 +33,3 @@ The mlx5tool utility is provided for management of the Connect-X4, 5 and 6 network adapters in the aspects not covered by the generic ifconfig(8) command, mostly related to the PCIe attachment and internal card working. EOD - -annotations { - set = "optional" -} diff --git a/packages/mtree/Makefile b/packages/mtree/Makefile new file mode 100644 index 00000000000..9c12a4aba17 --- /dev/null +++ b/packages/mtree/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= mtree + +PKG_SETS= devel + +.include diff --git a/release/packages/ucl/mtree-all.ucl b/packages/mtree/mtree.ucl similarity index 97% rename from release/packages/ucl/mtree-all.ucl rename to packages/mtree/mtree.ucl index daead4824b8..e7d6d81f571 100644 --- a/release/packages/ucl/mtree-all.ucl +++ b/packages/mtree/mtree.ucl @@ -27,7 +27,3 @@ and create or modify a hierarchy from a specification. This package also provides mtree(1) definitions for the base system filesystem in /etc/mtree. EOD - -annotations { - set = devel -} diff --git a/packages/natd/Makefile b/packages/natd/Makefile new file mode 100644 index 00000000000..80aadaf08d3 --- /dev/null +++ b/packages/natd/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= natd +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +.include diff --git a/release/packages/ucl/natd-all.ucl b/packages/natd/natd.ucl similarity index 96% rename from release/packages/ucl/natd-all.ucl rename to packages/natd/natd.ucl index 95f8e8cff03..e15496a4075 100644 --- a/release/packages/ucl/natd-all.ucl +++ b/packages/natd/natd.ucl @@ -26,7 +26,3 @@ with existing installations, or for users who require functionality not available in ipfw, such as Application Level Gateway (ALG) for the FTP or IRC protocols. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ncurses/Makefile b/packages/ncurses/Makefile new file mode 100644 index 00000000000..a3e1506ee52 --- /dev/null +++ b/packages/ncurses/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= ncurses +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/ncurses-all.ucl b/packages/ncurses/ncurses.ucl similarity index 97% rename from release/packages/ucl/ncurses-all.ucl rename to packages/ncurses/ncurses.ucl index 007ab15084f..d2739b3b43f 100644 --- a/release/packages/ucl/ncurses-all.ucl +++ b/packages/ncurses/ncurses.ucl @@ -39,7 +39,3 @@ curses interface, and is also backward compatible with traditional BSD curses. This package ships with a limited termcap database, but it is designed to use a terminfo database provided by ports, such as in misc/terminfo-db. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/netmap/Makefile b/packages/netmap/Makefile new file mode 100644 index 00000000000..366ad270b9c --- /dev/null +++ b/packages/netmap/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= netmap +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/netmap-all.ucl b/packages/netmap/netmap.ucl similarity index 96% rename from release/packages/ucl/netmap-all.ucl rename to packages/netmap/netmap.ucl index e0770c14c0f..998ed82324a 100644 --- a/release/packages/ucl/netmap-all.ucl +++ b/packages/netmap/netmap.ucl @@ -27,7 +27,3 @@ bpf(4), tap(4), or raw sockets. This package provides libnetmap, a library used by applications to interact with netmap, and valectl(8), a utility to manage vale(4) network switches. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/newsyslog/Makefile b/packages/newsyslog/Makefile new file mode 100644 index 00000000000..98c1619ea06 --- /dev/null +++ b/packages/newsyslog/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= newsyslog + +PKG_SETS= minimal minimal-jail + +# newsyslog uses bzip2 to compress log files. +PKG_DEPS.newsyslog+= bzip2 + +.include diff --git a/release/packages/ucl/newsyslog-all.ucl b/packages/newsyslog/newsyslog.ucl similarity index 96% rename from release/packages/ucl/newsyslog-all.ucl rename to packages/newsyslog/newsyslog.ucl index 033d497ab7b..80962464f96 100644 --- a/release/packages/ucl/newsyslog-all.ucl +++ b/packages/newsyslog/newsyslog.ucl @@ -26,7 +26,3 @@ By default, newsyslog will rotate the log files used by the syslogd(8) daemon, but it can be configured to rotate any user-configured logfile based on a set of rules defined in its configuration file. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/nfs/Makefile b/packages/nfs/Makefile new file mode 100644 index 00000000000..f7880b9ed34 --- /dev/null +++ b/packages/nfs/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= nfs + +.include diff --git a/release/packages/ucl/nfs-all.ucl b/packages/nfs/nfs.ucl similarity index 96% rename from release/packages/ucl/nfs-all.ucl rename to packages/nfs/nfs.ucl index 0c9141f2076..7aa3b1f573d 100644 --- a/release/packages/ucl/nfs-all.ucl +++ b/packages/nfs/nfs.ucl @@ -32,7 +32,3 @@ NFS server, and the mount_nfs(8) utility used to mount an NFS filesystem on the client. Several other daemons and utilities are also provided which may be necessary depending on the NFS configuration. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/ntp/Makefile b/packages/ntp/Makefile new file mode 100644 index 00000000000..97d79c1c2cf --- /dev/null +++ b/packages/ntp/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= ntp + +.include diff --git a/release/packages/ucl/ntp-all.ucl b/packages/ntp/ntp.ucl similarity index 97% rename from release/packages/ucl/ntp-all.ucl rename to packages/ntp/ntp.ucl index c0a3fb688d9..9585c371d0e 100644 --- a/release/packages/ucl/ntp-all.ucl +++ b/packages/ntp/ntp.ucl @@ -37,7 +37,3 @@ utility which can be used for testing or one-off time synchronisation. A periodic(8) script to monitor the status of the NTP daemon is also provided. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/nuageinit/Makefile b/packages/nuageinit/Makefile new file mode 100644 index 00000000000..3e8a0f799b3 --- /dev/null +++ b/packages/nuageinit/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= nuageinit +SUBPACKAGES= man + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/nuageinit-all.ucl b/packages/nuageinit/nuageinit.ucl similarity index 97% rename from release/packages/ucl/nuageinit-all.ucl rename to packages/nuageinit/nuageinit.ucl index 8c7a0754040..9211beff0e5 100644 --- a/release/packages/ucl/nuageinit-all.ucl +++ b/packages/nuageinit/nuageinit.ucl @@ -33,7 +33,3 @@ deps { version = "${VERSION}" }, } - -annotations { - set = minimal -} diff --git a/packages/nvme-tools/Makefile b/packages/nvme-tools/Makefile new file mode 100644 index 00000000000..2d074dc31b6 --- /dev/null +++ b/packages/nvme-tools/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= nvme-tools + +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/nvme-tools-all.ucl b/packages/nvme-tools/nvme-tools.ucl similarity index 97% rename from release/packages/ucl/nvme-tools-all.ucl rename to packages/nvme-tools/nvme-tools.ucl index ca4d8daff0d..910936f6e70 100644 --- a/release/packages/ucl/nvme-tools-all.ucl +++ b/packages/nvme-tools/nvme-tools.ucl @@ -23,7 +23,3 @@ This package provides the nvmecontrol(8) utility, which is used to monitor and configure NVMe devices connected to the local system, and to discover and connect to remote NVMe over Fabrics (NVMe-oF) targets. EOD - -annotations { - set = optional -} diff --git a/packages/openssl/Makefile b/packages/openssl/Makefile new file mode 100644 index 00000000000..9f1926a460d --- /dev/null +++ b/packages/openssl/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= openssl +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/openssl-all.ucl b/packages/openssl/openssl.ucl similarity index 97% rename from release/packages/ucl/openssl-all.ucl rename to packages/openssl/openssl.ucl index 4c393efe3b8..b63e94b59f7 100644 --- a/release/packages/ucl/openssl-all.ucl +++ b/packages/openssl/openssl.ucl @@ -35,7 +35,3 @@ the TLS protocol itself. OpenSSL also provides support for the obsolete Secure Sockets Layer (SSL) protocol, which was commonly used prior to the standardisation of TLS. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/pam/Makefile b/packages/pam/Makefile new file mode 100644 index 00000000000..91c84ebd121 --- /dev/null +++ b/packages/pam/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= pam +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/pam-all.ucl b/packages/pam/pam.ucl similarity index 96% rename from release/packages/ucl/pam-all.ucl rename to packages/pam/pam.ucl index c77b926532e..7245192645e 100644 --- a/release/packages/ucl/pam-all.ucl +++ b/packages/pam/pam.ucl @@ -29,7 +29,3 @@ PAM was originally implemented by Sun Microsystems as part of the Solaris operating system. This implementation of PAM comes from OpenPAM, and aims to be compatible with Solaris PAM. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/periodic/Makefile b/packages/periodic/Makefile new file mode 100644 index 00000000000..86d43f07689 --- /dev/null +++ b/packages/periodic/Makefile @@ -0,0 +1,11 @@ +WORLDPACKAGE= periodic +SUBPACKAGES= man + +PKG_SETS= minimal minimal-jail + +# periodic scripts are invoked from cron. +PKG_DEPS.periodic+= cron +# periodic scripts are written in shell script. +PKG_DEPS.periodic+= runtime + +.include diff --git a/release/packages/ucl/periodic.ucl b/packages/periodic/periodic.ucl similarity index 76% rename from release/packages/ucl/periodic.ucl rename to packages/periodic/periodic.ucl index 2a8a482f959..3a4bc270094 100644 --- a/release/packages/ucl/periodic.ucl +++ b/packages/periodic/periodic.ucl @@ -16,8 +16,10 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -deps { - "cron" { - version = "${VERSION}" - } -} +comment = "Run periodic system functions" + +desc = < diff --git a/release/packages/ucl/pf-all.ucl b/packages/pf/pf.ucl similarity index 96% rename from release/packages/ucl/pf-all.ucl rename to packages/pf/pf.ucl index b1d0ca915d7..07bebf80489 100644 --- a/release/packages/ucl/pf-all.ucl +++ b/packages/pf/pf.ucl @@ -32,7 +32,3 @@ system startup, and a periodic(8) script to report connections denied by pf. Several example pf rulesets are also provided in /usr/share/examples/pf. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/pkg-bootstrap/Makefile b/packages/pkg-bootstrap/Makefile new file mode 100644 index 00000000000..fc8625c8128 --- /dev/null +++ b/packages/pkg-bootstrap/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= pkg-bootstrap + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/pkg-bootstrap-all.ucl b/packages/pkg-bootstrap/pkg-bootstrap.ucl similarity index 95% rename from release/packages/ucl/pkg-bootstrap-all.ucl rename to packages/pkg-bootstrap/pkg-bootstrap.ucl index 211dc196298..493b1734e4a 100644 --- a/release/packages/ucl/pkg-bootstrap-all.ucl +++ b/packages/pkg-bootstrap/pkg-bootstrap.ucl @@ -23,7 +23,3 @@ desc = < diff --git a/release/packages/ucl/pkgconf-all.ucl b/packages/pkgconf/pkgconf.ucl similarity index 96% rename from release/packages/ucl/pkgconf-all.ucl rename to packages/pkgconf/pkgconf.ucl index 062fb2e71e1..9ac12400135 100644 --- a/release/packages/ucl/pkgconf-all.ucl +++ b/packages/pkgconf/pkgconf.ucl @@ -30,9 +30,3 @@ software bill of materials (SBOM) for a given set of pkg-config modules. The output of this tool can then be translated into other SBOM formats as necessary. EOD - -licenses = [ "pkgconf" ] - -annotations { - set = "devel" -} diff --git a/packages/pmc/Makefile b/packages/pmc/Makefile new file mode 100644 index 00000000000..622476040a1 --- /dev/null +++ b/packages/pmc/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= pmc +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/pmc-all.ucl b/packages/pmc/pmc.ucl similarity index 91% rename from release/packages/ucl/pmc-all.ucl rename to packages/pmc/pmc.ucl index 1562bde741a..5c8e44d264b 100644 --- a/release/packages/ucl/pmc-all.ucl +++ b/packages/pmc/pmc.ucl @@ -10,7 +10,3 @@ offered by the hwpmc(4) driver. The utilities pmc(8), pmcannotate(8), pmccontrol(8) and pmcstat(8) provide command-line access to the facilities provided by libpmc. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/powerd/Makefile b/packages/powerd/Makefile new file mode 100644 index 00000000000..a8401bc4226 --- /dev/null +++ b/packages/powerd/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= powerd + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/powerd-all.ucl b/packages/powerd/powerd.ucl similarity index 89% rename from release/packages/ucl/powerd-all.ucl rename to packages/powerd/powerd.ucl index b6a2b3034f8..af445f28faa 100644 --- a/release/packages/ucl/powerd-all.ucl +++ b/packages/powerd/powerd.ucl @@ -5,7 +5,3 @@ The powerd utility monitors the system state and sets various power control options accordingly. It offers power-saving modes that can be individually selected for operation on AC power or batteries. EOD - -annotations { - set = minimal -} diff --git a/packages/ppp/Makefile b/packages/ppp/Makefile new file mode 100644 index 00000000000..d379310a4e3 --- /dev/null +++ b/packages/ppp/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= ppp + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/ppp-all.ucl b/packages/ppp/ppp.ucl similarity index 96% rename from release/packages/ucl/ppp-all.ucl rename to packages/ppp/ppp.ucl index 9841e297d79..cf21789d7cb 100644 --- a/release/packages/ucl/ppp-all.ucl +++ b/packages/ppp/ppp.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/quotacheck-all.ucl b/packages/quotacheck/quotacheck.ucl similarity index 97% rename from release/packages/ucl/quotacheck-all.ucl rename to packages/quotacheck/quotacheck.ucl index de29ff373f0..77943ac7365 100644 --- a/release/packages/ucl/quotacheck-all.ucl +++ b/packages/quotacheck/quotacheck.ucl @@ -41,7 +41,3 @@ file for the file system. If any inconsistencies are detected, both the quota file and the current system copy of the incorrect quotas are updated (the latter only occurs if an active file system is checked). EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/rc/Makefile b/packages/rc/Makefile new file mode 100644 index 00000000000..9a163b0581c --- /dev/null +++ b/packages/rc/Makefile @@ -0,0 +1,11 @@ +WORLDPACKAGE= rc + +PKG_SETS= minimal minimal-jail + +# rc scripts require /bin/sh. +PKG_DEPS.rc+= runtime + +# /etc/rc.d/var_run depends on mtree. +PKG_DEPS.rc+= mtree + +.include diff --git a/release/packages/ucl/rc.ucl b/packages/rc/rc.ucl similarity index 77% rename from release/packages/ucl/rc.ucl rename to packages/rc/rc.ucl index b750c731469..d62f416d0f4 100644 --- a/release/packages/ucl/rc.ucl +++ b/packages/rc/rc.ucl @@ -16,12 +16,10 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -deps { - "runtime": { - version = "${VERSION}" - }, - # /etc/rc.d/var_run depends on mtree. - "mtree": { - version = "${VERSION}" - }, -} +comment = "rc(8) subsystem" + +desc = < diff --git a/release/packages/ucl/rcmds-all.ucl b/packages/rcmds/rcmds.ucl similarity index 95% rename from release/packages/ucl/rcmds-all.ucl rename to packages/rcmds/rcmds.ucl index c2295af91f9..a72228d28cd 100644 --- a/release/packages/ucl/rcmds-all.ucl +++ b/packages/rcmds/rcmds.ucl @@ -24,7 +24,3 @@ with remote hosts over the network. This includes the command-line utilities rwho, ruptime, rup, rusers and rwall and the daemons rwhod, rpc.rstatd, rpc.rusersd, and rpc.rwalld. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/rdma/Makefile b/packages/rdma/Makefile new file mode 100644 index 00000000000..f30e5ea552f --- /dev/null +++ b/packages/rdma/Makefile @@ -0,0 +1,5 @@ +WORLDPACKAGE= rdma +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +.include diff --git a/release/packages/ucl/rdma-all.ucl b/packages/rdma/rdma.ucl similarity index 95% rename from release/packages/ucl/rdma-all.ucl rename to packages/rdma/rdma.ucl index c1210417073..cdc0ac2faa8 100644 --- a/release/packages/ucl/rdma-all.ucl +++ b/packages/rdma/rdma.ucl @@ -23,7 +23,3 @@ This package provides utilities for working with RDMA and InfiniBand networks, including the rping(1) and mckey(1) utilities used to test network functionality. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/rescue/Makefile b/packages/rescue/Makefile new file mode 100644 index 00000000000..a7df824c6f6 --- /dev/null +++ b/packages/rescue/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= rescue +SUBPACKAGES= + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/rescue-all.ucl b/packages/rescue/rescue.ucl similarity index 97% rename from release/packages/ucl/rescue-all.ucl rename to packages/rescue/rescue.ucl index d0aa9889eaf..ce9bb9f576b 100644 --- a/release/packages/ucl/rescue-all.ucl +++ b/packages/rescue/rescue.ucl @@ -25,7 +25,3 @@ utilities from working. Unlike the standard system utilities, the rescue tools are statically linked, so they can be used even if the runtime linker or system libraries are missing or damaged. EOD - -annotations { - set = minimal -} diff --git a/packages/resolvconf/Makefile b/packages/resolvconf/Makefile new file mode 100644 index 00000000000..7f27446ac4e --- /dev/null +++ b/packages/resolvconf/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= resolvconf +SUBPACKAGES= man + +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/resolvconf-all.ucl b/packages/resolvconf/resolvconf.ucl similarity index 97% rename from release/packages/ucl/resolvconf-all.ucl rename to packages/resolvconf/resolvconf.ucl index 535c397e7f7..a9fbc6ce17f 100644 --- a/release/packages/ucl/resolvconf-all.ucl +++ b/packages/resolvconf/resolvconf.ucl @@ -23,7 +23,3 @@ resolvconf(8) is used to manage /etc/resolv.conf for systems which move between different networks, such as laptops. It is typically invoked by dhclient(8) to provide new nameservers when connecting to a network. EOD - -annotations { - set = minimal -} diff --git a/packages/rip/Makefile b/packages/rip/Makefile new file mode 100644 index 00000000000..a0713aa2d37 --- /dev/null +++ b/packages/rip/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= rip + +.include diff --git a/release/packages/ucl/rip-all.ucl b/packages/rip/rip.ucl similarity index 95% rename from release/packages/ucl/rip-all.ucl rename to packages/rip/rip.ucl index f3cfc2c8021..a3b681b6cf9 100644 --- a/release/packages/ucl/rip-all.ucl +++ b/packages/rip/rip.ucl @@ -25,7 +25,3 @@ routers. RIP and RIPng support is deprecated and will be removed in FreeBSD 16.0. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/runtime/Makefile b/packages/runtime/Makefile new file mode 100644 index 00000000000..d14b9538076 --- /dev/null +++ b/packages/runtime/Makefile @@ -0,0 +1,14 @@ +WORLDPACKAGE= runtime +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +.include +PKG_UCLVARS+= CAP_MKDB_ENDIAN "${CAP_MKDB_ENDIAN}" + +PKG_SETS= minimal minimal-jail +PKG_VITAL.runtime= + +UCLSRC= common.ucl +UCLSRC.runtime= runtime.ucl + +.include diff --git a/release/packages/ucl/runtime-all.ucl b/packages/runtime/common.ucl similarity index 95% rename from release/packages/ucl/runtime-all.ucl rename to packages/runtime/common.ucl index ccf76e41c96..26db17d7e3f 100644 --- a/release/packages/ucl/runtime-all.ucl +++ b/packages/runtime/common.ucl @@ -22,7 +22,3 @@ desc = < + +WORLDPACKAGE= sendmail + +# sendmail requires make to build its configuration file. However, sendmail +# is still built even if WITHOUT_MAKE is set; in that case, just assume the +# user has some other way to create the configuration file. +.if ${MK_MAKE} != "no" +PKG_DEPS.sendmail+= bmake +.endif + +.include diff --git a/release/packages/ucl/sendmail-all.ucl b/packages/sendmail/sendmail.ucl similarity index 96% rename from release/packages/ucl/sendmail-all.ucl rename to packages/sendmail/sendmail.ucl index 2b26f982db7..7a80c69b633 100644 --- a/release/packages/ucl/sendmail-all.ucl +++ b/packages/sendmail/sendmail.ucl @@ -32,7 +32,3 @@ When the full functionality of sendmail is not required, consider using the $PKG_NAME_PREFIX-dma package instead, a lightweight MTA which can send (but not receive) mail over SMTP. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/smbutils/Makefile b/packages/smbutils/Makefile new file mode 100644 index 00000000000..a0c9f6eaf7e --- /dev/null +++ b/packages/smbutils/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= smbutils +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/smbutils-all.ucl b/packages/smbutils/smbutils.ucl similarity index 97% rename from release/packages/ucl/smbutils-all.ucl rename to packages/smbutils/smbutils.ucl index 719afd295d8..746441d83f7 100644 --- a/release/packages/ucl/smbutils-all.ucl +++ b/packages/smbutils/smbutils.ucl @@ -26,7 +26,3 @@ Message Block (SMB) protocol, sometimes called CIFS. This facility only supports SMB version 1, which is strongly deprecated and not supported by most SMB servers. EOD - -annotations { - set = optional -} diff --git a/packages/sound/Makefile b/packages/sound/Makefile new file mode 100644 index 00000000000..dd4894a71ab --- /dev/null +++ b/packages/sound/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= sound +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/sound-all.ucl b/packages/sound/sound.ucl similarity index 97% rename from release/packages/ucl/sound-all.ucl rename to packages/sound/sound.ucl index 6a8ad098c6b..e39130a4ee8 100644 --- a/release/packages/ucl/sound-all.ucl +++ b/packages/sound/sound.ucl @@ -36,7 +36,3 @@ This package provides several sound-related userland utilities: * mididump(1) can monitor the incoming MIDI events on a MIDI port. EOD - -annotations { - set = "optional" -} diff --git a/packages/ssh/Makefile b/packages/ssh/Makefile new file mode 100644 index 00000000000..a90e5e85aa2 --- /dev/null +++ b/packages/ssh/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= ssh +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +PKG_LICENSES= ISCL + +.include diff --git a/release/packages/ucl/ssh-all.ucl b/packages/ssh/ssh.ucl similarity index 95% rename from release/packages/ucl/ssh-all.ucl rename to packages/ssh/ssh.ucl index 1bf93f85dbb..0d84fef3308 100644 --- a/release/packages/ucl/ssh-all.ucl +++ b/packages/ssh/ssh.ucl @@ -33,9 +33,3 @@ This package provides the ssh(1) remote login client, along with the scp(1) and sftp(1) file transfer utilities, the ssh-agent(1) key management agent and related utilities for managing SSH keys, and the sshd(8) server daemon. EOD - -licenses = [ ISCL ] - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/syscons-data/Makefile b/packages/syscons-data/Makefile new file mode 100644 index 00000000000..b0205997909 --- /dev/null +++ b/packages/syscons-data/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= syscons-data +SUBPACKAGES= + +PKG_SETS= optional + +.include diff --git a/release/packages/ucl/syscons-data-all.ucl b/packages/syscons-data/syscons-data.ucl similarity index 96% rename from release/packages/ucl/syscons-data-all.ucl rename to packages/syscons-data/syscons-data.ucl index 140eebc42a7..5284b8f6dc1 100644 --- a/release/packages/ucl/syscons-data-all.ucl +++ b/packages/syscons-data/syscons-data.ucl @@ -21,7 +21,3 @@ comment = "syscons(4) fonts and keymaps" desc = < diff --git a/release/packages/ucl/syslogd-all.ucl b/packages/syslogd/syslogd.ucl similarity index 96% rename from release/packages/ucl/syslogd-all.ucl rename to packages/syslogd/syslogd.ucl index 206da9e325c..ff810e18167 100644 --- a/release/packages/ucl/syslogd-all.ucl +++ b/packages/syslogd/syslogd.ucl @@ -25,7 +25,3 @@ system and write them to local files or forward them to a remote system. It can also receive log messages from a remote system and write them to a local file. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/tcpd/Makefile b/packages/tcpd/Makefile new file mode 100644 index 00000000000..a6f81f09552 --- /dev/null +++ b/packages/tcpd/Makefile @@ -0,0 +1,6 @@ +WORLDPACKAGE= tcpd +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +.include diff --git a/release/packages/ucl/tcpd-all.ucl b/packages/tcpd/tcpd.ucl similarity index 96% rename from release/packages/ucl/tcpd-all.ucl rename to packages/tcpd/tcpd.ucl index c9cdcab9dde..be0e6fabfa2 100644 --- a/release/packages/ucl/tcpd-all.ucl +++ b/packages/tcpd/tcpd.ucl @@ -31,7 +31,3 @@ Wrappers using the tcpd(8) utility. This package also provides a periodic(8) script used to report TCP Wrappers activity. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/telnet/Makefile b/packages/telnet/Makefile new file mode 100644 index 00000000000..d21b32836b1 --- /dev/null +++ b/packages/telnet/Makefile @@ -0,0 +1,3 @@ +WORLDPACKAGE= telnet + +.include diff --git a/release/packages/ucl/telnet-all.ucl b/packages/telnet/telnet.ucl similarity index 96% rename from release/packages/ucl/telnet-all.ucl rename to packages/telnet/telnet.ucl index af4c9001be0..0f496e1b124 100644 --- a/release/packages/ucl/telnet-all.ucl +++ b/packages/telnet/telnet.ucl @@ -27,7 +27,3 @@ particular, the Kerberos 5 support is limited to DES encryption) and should not be used to transfer sensitive data such as passwords. In most situations, the Secure Shell protocol is preferred over TELNET. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/tests/Makefile b/packages/tests/Makefile new file mode 100644 index 00000000000..da4038c4e04 --- /dev/null +++ b/packages/tests/Makefile @@ -0,0 +1,22 @@ +WORLDPACKAGE= tests +SUBPACKAGES= dbg + +PKG_SETS= tests + +# Nearly all the tests require atf to run. +PKG_DEPS.tests+= atf + +# Quite a few tests require flua. +PKG_DEPS.tests+= flua + +# Some tests need GoogleTest +PKG_DEPS.tests+= googletest + +# The test framework requires Kyua. +PKG_DEPS.tests+= kyua + +# Since the purpose of the tests is to test the base system, the base +# system must be installed. +PKG_DEPS.tests+= set-base + +.include diff --git a/release/packages/ucl/tests-all.ucl b/packages/tests/tests.ucl similarity index 97% rename from release/packages/ucl/tests-all.ucl rename to packages/tests/tests.ucl index 315ac2e8cce..9fa84923ebd 100644 --- a/release/packages/ucl/tests-all.ucl +++ b/packages/tests/tests.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/toolchain-all.ucl b/packages/toolchain/toolchain.ucl similarity index 97% rename from release/packages/ucl/toolchain-all.ucl rename to packages/toolchain/toolchain.ucl index 5bbaab90785..eab12bb7de9 100644 --- a/release/packages/ucl/toolchain-all.ucl +++ b/packages/toolchain/toolchain.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/ufs-all.ucl b/packages/ufs/ufs.ucl similarity index 98% rename from release/packages/ucl/ufs-all.ucl rename to packages/ufs/ufs.ucl index b35e0f3d1dc..ec71493540e 100644 --- a/release/packages/ucl/ufs-all.ucl +++ b/packages/ufs/ufs.ucl @@ -34,7 +34,3 @@ an unclean shutdown or panic. The libufs library is also provided, which allows applications to access UFS filesystems programmatically. EOD - -annotations { - set = minimal -} diff --git a/packages/utilities/Makefile b/packages/utilities/Makefile new file mode 100644 index 00000000000..b68e2593a3c --- /dev/null +++ b/packages/utilities/Makefile @@ -0,0 +1,14 @@ +WORLDPACKAGE= utilities +SUBPACKAGES= dbg dev man +COMPAT_PKG= yes +COMPAT_PKGS= dbg dev + +.include +PKG_UCLVARS+= CAP_MKDB_ENDIAN "${CAP_MKDB_ENDIAN}" + +PKG_SETS= minimal minimal-jail + +UCLSRC= common.ucl +UCLSRC.utilities= utilities.ucl + +.include diff --git a/release/packages/ucl/utilities-all.ucl b/packages/utilities/common.ucl similarity index 95% rename from release/packages/ucl/utilities-all.ucl rename to packages/utilities/common.ucl index a5dba9bd7a5..81df2699a04 100644 --- a/release/packages/ucl/utilities-all.ucl +++ b/packages/utilities/common.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/vi-all.ucl b/packages/vi/vi.ucl similarity index 95% rename from release/packages/ucl/vi-all.ucl rename to packages/vi/vi.ucl index dd5c691bc89..38b00974093 100644 --- a/release/packages/ucl/vi-all.ucl +++ b/packages/vi/vi.ucl @@ -22,7 +22,3 @@ desc = < diff --git a/release/packages/ucl/vt-data-all.ucl b/packages/vt-data/vt-data.ucl similarity index 96% rename from release/packages/ucl/vt-data-all.ucl rename to packages/vt-data/vt-data.ucl index b628ffe7f4d..03ccc6d7f2b 100644 --- a/release/packages/ucl/vt-data-all.ucl +++ b/packages/vt-data/vt-data.ucl @@ -21,7 +21,3 @@ comment = "vt(4) fonts and keymaps" desc = < diff --git a/release/packages/ucl/wpa-all.ucl b/packages/wpa/wpa.ucl similarity index 98% rename from release/packages/ucl/wpa-all.ucl rename to packages/wpa/wpa.ucl index e7a5eb9ca89..a30878369dd 100644 --- a/release/packages/ucl/wpa-all.ucl +++ b/packages/wpa/wpa.ucl @@ -43,7 +43,3 @@ runs in the background and acts as the backend component controlling the wireless connection. It supports separate frontend programs such as the text-based wpa_cli(8) program. EOD - -annotations { - set = minimal -} diff --git a/packages/xz/Makefile b/packages/xz/Makefile new file mode 100644 index 00000000000..82560245f78 --- /dev/null +++ b/packages/xz/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= xz +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/xz-all.ucl b/packages/xz/xz.ucl similarity index 95% rename from release/packages/ucl/xz-all.ucl rename to packages/xz/xz.ucl index 3523dc70ca5..8ab5282fd8e 100644 --- a/release/packages/ucl/xz-all.ucl +++ b/packages/xz/xz.ucl @@ -23,7 +23,3 @@ xz compresses data using the LZMA2 data compression algorithm. This package provides the front-end xz(1) utility, and the liblzma library which allows applications to use this functionality programmatically. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/yp/Makefile b/packages/yp/Makefile new file mode 100644 index 00000000000..194ef32642c --- /dev/null +++ b/packages/yp/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= yp +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +# YP requires bmake to rebuild the database. +PKG_DEPS.yp+= bmake + +.include diff --git a/release/packages/ucl/yp-all.ucl b/packages/yp/yp.ucl similarity index 96% rename from release/packages/ucl/yp-all.ucl rename to packages/yp/yp.ucl index fb337394fc4..be3f76e0f03 100644 --- a/release/packages/ucl/yp-all.ucl +++ b/packages/yp/yp.ucl @@ -24,7 +24,3 @@ information across machines on a network. This package contains the YP server, YP management utilities, the YP-LDAP gateway (ypldap), YP client utilities and a sample Makefile for building the YP database. EOD - -annotations { - set = "optional,optional-jail" -} diff --git a/packages/zfs/Makefile b/packages/zfs/Makefile new file mode 100644 index 00000000000..b43dbbe8aa2 --- /dev/null +++ b/packages/zfs/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= zfs +SUBPACKAGES= dbg dev lib man +COMPAT_PKGS= dbg dev lib + +PKG_LICENSES= CDDL-1.0 +PKG_SETS= minimal + +.include diff --git a/release/packages/ucl/zfs-all.ucl b/packages/zfs/zfs.ucl similarity index 96% rename from release/packages/ucl/zfs-all.ucl rename to packages/zfs/zfs.ucl index 9d166452188..8e40ff0218b 100644 --- a/release/packages/ucl/zfs-all.ucl +++ b/packages/zfs/zfs.ucl @@ -41,9 +41,3 @@ utilities, as well as the runtime libraries used internally by ZFS itself, and the libzfs_core library providing a stable interface for managing ZFS programmatically. EOD - -licenses = [ "CDDL-1.0" ] - -annotations { - set = minimal -} diff --git a/packages/zlib/Makefile b/packages/zlib/Makefile new file mode 100644 index 00000000000..f6abde40b1b --- /dev/null +++ b/packages/zlib/Makefile @@ -0,0 +1,8 @@ +WORLDPACKAGE= zlib +SUBPACKAGES= dbg dev man +COMPAT_PKGS= dbg dev lib + +PKG_LICENSES= Zlib +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/zlib-all.ucl b/packages/zlib/zlib.ucl similarity index 94% rename from release/packages/ucl/zlib-all.ucl rename to packages/zlib/zlib.ucl index d7596c698e3..77164af5e82 100644 --- a/release/packages/ucl/zlib-all.ucl +++ b/packages/zlib/zlib.ucl @@ -24,9 +24,3 @@ GNU gzip(1) utility. DEFLATE is widely used in many situations, such as network protocols (including HTTP) that need to compress data in transit, and in utilities that compress data on disk. EOD - -licenses = [ "Zlib" ] - -annotations { - set = "minimal,minimal-jail" -} diff --git a/packages/zoneinfo/Makefile b/packages/zoneinfo/Makefile new file mode 100644 index 00000000000..668d5210930 --- /dev/null +++ b/packages/zoneinfo/Makefile @@ -0,0 +1,7 @@ +WORLDPACKAGE= zoneinfo +SUBPACKAGES= + +PKG_LICENSES= PD +PKG_SETS= minimal minimal-jail + +.include diff --git a/release/packages/ucl/zoneinfo-all.ucl b/packages/zoneinfo/zoneinfo.ucl similarity index 93% rename from release/packages/ucl/zoneinfo-all.ucl rename to packages/zoneinfo/zoneinfo.ucl index 028a2273e2f..3f37da3dca5 100644 --- a/release/packages/ucl/zoneinfo-all.ucl +++ b/packages/zoneinfo/zoneinfo.ucl @@ -22,9 +22,3 @@ desc = < diff --git a/release/packages/ucl/zstd-all.ucl b/packages/zstd/zstd.ucl similarity index 96% rename from release/packages/ucl/zstd-all.ucl rename to packages/zstd/zstd.ucl index ada125444b6..51d70720664 100644 --- a/release/packages/ucl/zstd-all.ucl +++ b/packages/zstd/zstd.ucl @@ -24,7 +24,3 @@ by Meta Platforms, Inc. and standardised by the IETF in RFC 8478. Zstd is designed to offer a compression ratio comparable to DEFLATE (zlib), but with performance suitable for real-time compression applications. EOD - -annotations { - set = "minimal,minimal-jail" -} diff --git a/release/packages/ucl/at.ucl b/release/packages/ucl/at.ucl deleted file mode 100644 index 1e2495028b3..00000000000 --- a/release/packages/ucl/at.ucl +++ /dev/null @@ -1,31 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # atrun relies on cron to work. - "cron" { - version = "${VERSION}" - }, - - # at(1) passes the command to /bin/sh - "runtime" { - version = "${VERSION}" - }, -} - - diff --git a/release/packages/ucl/bluetooth.ucl b/release/packages/ucl/bluetooth.ucl deleted file mode 100644 index e9c4787fdbf..00000000000 --- a/release/packages/ucl/bluetooth.ucl +++ /dev/null @@ -1,27 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # rfcomm_pppd(8) uses ppp(8) - "ppp" { - version = "${VERSION}" - }, -} - - - diff --git a/release/packages/ucl/bsdconfig.ucl b/release/packages/ucl/bsdconfig.ucl deleted file mode 100644 index 98981f65bea..00000000000 --- a/release/packages/ucl/bsdconfig.ucl +++ /dev/null @@ -1,24 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # bsdconfig is written in shell script, so it needs /bin/sh - "runtime" { - version = "${VERSION}" - }, -} diff --git a/release/packages/ucl/bsdinstall.ucl b/release/packages/ucl/bsdinstall.ucl deleted file mode 100644 index 96ff220bfb5..00000000000 --- a/release/packages/ucl/bsdinstall.ucl +++ /dev/null @@ -1,29 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # bsdinstall is written in shell script, so it needs /bin/sh - "runtime" { - version = "${VERSION}" - }, - - # the pkgbase script requires flua - "flua" { - version = "${VERSION}" - }, -} diff --git a/release/packages/ucl/certctl.ucl b/release/packages/ucl/certctl.ucl deleted file mode 100644 index d2b4790946e..00000000000 --- a/release/packages/ucl/certctl.ucl +++ /dev/null @@ -1,23 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - "openssl": { - version = "${VERSION}" - } -} diff --git a/release/packages/ucl/clang.ucl b/release/packages/ucl/clang.ucl deleted file mode 100644 index deee636dc0a..00000000000 --- a/release/packages/ucl/clang.ucl +++ /dev/null @@ -1,14 +0,0 @@ -deps { - "lld" { - version = "${VERSION}" - } - - "libcompiler_rt-dev" { - version = "${VERSION}" - } -} - -shlibs_required_ignore: [ - "libc.so.7:32", - "libgcc_s.so.1:32", -] diff --git a/release/packages/ucl/clibs.ucl b/release/packages/ucl/clibs.ucl deleted file mode 100644 index 093fbb60248..00000000000 --- a/release/packages/ucl/clibs.ucl +++ /dev/null @@ -1 +0,0 @@ -vital: true diff --git a/release/packages/ucl/devd.ucl b/release/packages/ucl/devd.ucl deleted file mode 100644 index c5fcfef1c36..00000000000 --- a/release/packages/ucl/devd.ucl +++ /dev/null @@ -1,24 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # devd uses /bin/sh to invoke hooks. - "runtime" { - version = "${VERSION}" - }, -} diff --git a/release/packages/ucl/dhclient.ucl b/release/packages/ucl/dhclient.ucl deleted file mode 100644 index f15ca8703ed..00000000000 --- a/release/packages/ucl/dhclient.ucl +++ /dev/null @@ -1,26 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # dhclient uses resolvconf to update /etc/resolv.conf in case the - # DHCP server returns nameserver addresses. - "resolvconf" { - version = "${VERSION}" - }, -} - diff --git a/release/packages/ucl/newsyslog.ucl b/release/packages/ucl/newsyslog.ucl deleted file mode 100644 index 27b212a42b7..00000000000 --- a/release/packages/ucl/newsyslog.ucl +++ /dev/null @@ -1,6 +0,0 @@ -deps { - # newsyslog uses bzip2 to compress log files. - "bzip2" { - version = "${VERSION}" - } -} diff --git a/release/packages/ucl/periodic-all.ucl b/release/packages/ucl/periodic-all.ucl deleted file mode 100644 index 028959d49e1..00000000000 --- a/release/packages/ucl/periodic-all.ucl +++ /dev/null @@ -1,29 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -comment = "Run periodic system functions" - -desc = < - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -comment = "rc(8) subsystem" - -desc = < - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # The RPC daemons require rpcbind. - "utilities" { - version = "${VERSION}" - } -} - diff --git a/release/packages/ucl/sendmail.ucl b/release/packages/ucl/sendmail.ucl deleted file mode 100644 index 318fd5aabbe..00000000000 --- a/release/packages/ucl/sendmail.ucl +++ /dev/null @@ -1,24 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # sendmail requires make to build its configuration file. - "bmake": { - version = "${VERSION}" - } -} diff --git a/release/packages/ucl/tests.ucl b/release/packages/ucl/tests.ucl deleted file mode 100644 index da9eb59295b..00000000000 --- a/release/packages/ucl/tests.ucl +++ /dev/null @@ -1,46 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - - -deps { - # Nearly all the tests require atf to run. - "atf": { - version = "${VERSION}" - }, - - # Quite a few tests require flua. - "flua" { - version = "${VERSION}" - }, - - # Some tests need GoogleTest - "googletest": { - version = "${VERSION}" - }, - - # The test framework requires Kyua. - "kyua": { - version = "${VERSION}" - }, - - # Since the purpose of the tests is to test the base system, the base - # system must be installed. - "set-base": { - version = "${VERSION}" - } -} diff --git a/release/packages/ucl/yp.ucl b/release/packages/ucl/yp.ucl deleted file mode 100644 index 9babdbe98fb..00000000000 --- a/release/packages/ucl/yp.ucl +++ /dev/null @@ -1,24 +0,0 @@ -/* - * SPDX-License-Identifier: ISC - * - * Copyright (c) 2025 Lexi Winter - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -deps { - # YP requires bmake to rebuild the database. - "bmake": { - version = "${VERSION}" - } -} diff --git a/share/mk/bsd.pkg.mk b/share/mk/bsd.pkg.mk new file mode 100644 index 00000000000..86bc96591ef --- /dev/null +++ b/share/mk/bsd.pkg.mk @@ -0,0 +1,218 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +# bsd.pkg.mk: Create a package based on an existing plist and the template +# UCL files. This is intended for use by packages/* during the build, and +# cannot be used to generate standalone packages. + +.if !defined(REPODIR) +. error REPODIR must be set +.endif + +.if !defined(PKG_VERSION) +. error PKG_VERSION must be set +.endif + +_PKG_NEED_ABI= +.include +.include +.include + +# Allow flua to be overridden; the world build does this to use the +# bootstrap version. +FLUA?= /usr/libexec/flua + +# The directory that files to be packaged have been staged into. +# If ${WSTAGEDIR} is set from Makefile.inc1, use that, otherwise +# use the default location. +.if defined(WSTAGEDIR) +_PKG_WORLDSTAGE= ${WSTAGEDIR} +.else +_PKG_WORLDSTAGE= ${OBJTOP}/worldstage +.endif + +_PKGDIR= ${SRCTOP}/packages +_STAGEDIR= ${REPODIR}/${PKG_ABI}/${PKG_VERSION} + +# These are the default UCL variables we pass to generate-ucl.lua. +# Allow the caller to add additional variables via PKG_UCLVARS. +_UCLVARS= \ + VERSION "${PKG_VERSION}" \ + PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \ + PKG_WWW "${PKG_WWW}" \ + PKG_MAINTAINER "${PKG_MAINTAINER}" \ + ${PKG_UCLVARS} + +# Global pkg(8) arguments. +_PKG_ARGS= \ + -o ABI=${PKG_ABI} \ + -o OSVERSION=${PKG_OSVERSION} \ + -o ALLOW_BASE_SHLIBS=yes \ + -o SHLIB_PROVIDE_PATHS_NATIVE=/lib,/usr/lib \ + ${_ALL_LIBCOMPATS:range:@i@-o SHLIB_PROVIDE_PATHS_COMPAT_${_ALL_LIBCOMPATS:[$i]}=/usr/lib${_ALL_libcompats:[$i]}@} \ + +# Arguments to pkg-create(8). +_PKG_CREATE_ARGS= \ + -f ${PKG_FORMAT} \ + ${PKG_CLEVEL} \ + -T ${PKG_CTHREADS} \ + -r ${_PKG_WORLDSTAGE} \ + -o ${.OBJDIR} + +_PKG_CREATE= ${PKG_CMD} ${_PKG_ARGS} create ${_PKG_CREATE_ARGS} + +# If WORLDPACKAGE is set, we're building a world package. +.if defined(WORLDPACKAGE) + +# Default to using the same UCL file for all subpackages, since the vast +# majority of packages are built this way. +UCLSRC?= ${WORLDPACKAGE}.ucl + +# Nearly all packages have a dbg and man subpackage, so enable that by default. +SUBPACKAGES?= dbg man + +# This lets the caller use constructs like SUBPACKAGES.${MK_FOO}+= foo +_SUBPACKAGES= ${SUBPACKAGES} ${SUBPACKAGES.yes} ${SUBPACKAGES.yes.yes} + +# Remove the dbg subpackage if debug files are disabled. +.if ${MK_DEBUG_FILES} == "no" +_SUBPACKAGES:= ${_SUBPACKAGES:Ndbg} +. if defined(COMPAT_PKGS) +COMPAT_PKGS:= ${COMPAT_PKGS:Ndbg} +. endif # defined(COMPAT_PKGS) +.endif # ${MK_DEBUG_FILES} == "no" + +# Remove the man subpackage if split man packages are disabled. +.if ${MK_MANSPLITPKG} == "no" +_SUBPACKAGES:= ${_SUBPACKAGES:Nman} +.endif # ${MK_MANSPLITPKG} == "no" + +# Add the base package, unless there isn't one, which can happen with +# static library packages. +.if !defined(PKG_NO_BASE) +_ALLPACKAGES= ${WORLDPACKAGE} +.endif + +# Add basic subpackages. +.for _subpackage in ${_SUBPACKAGES} +_ALLPACKAGES+= ${_subpackage:S/^/${WORLDPACKAGE}-/} +.endfor # _subpackage in ${_SUBPACKAGES} + +# Add libcompat subpackages. +.for LIBCOMPAT libcompat in ${_ALL_LIBCOMPATS_libcompats} +. if ${MK_LIB${LIBCOMPAT}} != "no" + +# For the base package... +. if ${COMPAT_PKG:Uno} != "no" +_ALLPACKAGES+= ${WORLDPACKAGE}-lib${libcompat} +. endif + +# And for subpackages. +. for _pkg in ${COMPAT_PKGS} +# lib is special, because it gets -lib32, not -lib-lib32. +. if ${_pkg} == "lib" +_ALLPACKAGES+= ${WORLDPACKAGE}-lib${libcompat} +. else +_ALLPACKAGES+= ${WORLDPACKAGE}-${_pkg}-lib${libcompat} +. endif +. endfor + +. endif # ${MK_LIB${LIBCOMPAT}} != "no" +.endfor + +CLEANFILES+= *.pkgucl *.ucl.in *.plist *.pkg + +all: .PHONY + +. for _pkg in ${_ALLPACKAGES} +_pkgfullname:= ${PKG_NAME_PREFIX}-${_pkg} +_pkgfilename:= ${_pkgfullname}-${PKG_VERSION}.pkg + +all: ${_pkgfilename} + +${_pkgfilename}: ${_pkgfullname}.pkgucl ${_pkg}.plist + # We should never create an empty package; this means we intended to + # build the package, but we didn't build the things which are supposed + # to be in the package, which means something went wrong somewhere. + # If you hit this check when building, it probably means a package is + # not properly excluded in packages/Makefile based on src.conf options. + @if [ "$$(grep -vc '^@dir' "${.ALLSRC:M*.plist}")" -eq 0 ]; \ + then \ + printf >&2 'ERROR: Refusing to build empty package %s from %s\n' \ + "${.TARGET}" "${.ALLSRC:M*.plist}"; \ + exit 1; \ + fi + ${_PKG_CREATE} -M ${.ALLSRC:M*.pkgucl} -p ${.ALLSRC:M*.plist} + +${_pkgfullname}.ucl.in: ${UCLSRC.${_pkg}:U${UCLSRC:U${_pkg}.ucl}} + @echo 'Generating ${.TARGET} from ${.ALLSRC}' + @cp ${.ALLSRC} ${.TARGET} + @echo >>${.TARGET} 'name = "${PKG_NAME_PREFIX}-${_pkg}"' + @echo >>${.TARGET} 'origin = "base/${PKG_NAME_PREFIX}-${_pkg}"' + @echo >>${.TARGET} 'categories [ "base" ]' + @echo >>${.TARGET} 'prefix = "/"' + @echo >>${.TARGET} 'version = "${PKG_VERSION}"' + @echo >>${.TARGET} 'maintainer = "${PKG_MAINTAINER}"' + @echo >>${.TARGET} 'www = "${PKG_WWW}"' +.if defined(PKG_VITAL.${_pkg}) + @echo >>${.TARGET} 'vital = true' +.endif + @echo >>${.TARGET} 'licenselogic = "${PKG_LICENSELOGIC}"' + @echo >>${.TARGET} 'licenses [' +.for _license in ${PKG_LICENSES} + # When a value contains spaces and is quoted (e.g., "X WITH Y"), + # make preserves the quotes in the value, so we need to strip them. + @echo >>${.TARGET} ' "${_license:S/"//g}",' +.endfor + @echo >>${.TARGET} ']' + @echo >>${.TARGET} 'annotations {' +.for _annotation in ${PKG_ANNOTATIONS} + @echo >>${.TARGET} ' ${_annotation} = "${PKG_ANNOTATIONS.${_annotation}}"' +.endfor + @echo >>${.TARGET} '}' +.if defined(PKG_DEPS.${_pkg}) + @echo >>${.TARGET} 'deps {' +. for _dep in ${PKG_DEPS.${_pkg}} + @echo >>${.TARGET} ' "${_dep}" {' + @echo >>${.TARGET} ' "origin" = "base/${PKG_NAME_PREFIX}-${_dep}"' + @echo >>${.TARGET} ' "version" = "${PKG_VERSION}"' + @echo >>${.TARGET} ' },' +. endfor + @echo >>${.TARGET} '}' +.endif + +${_pkgfullname}.pkgucl: ${_pkgfullname}.ucl.in + ${FLUA} ${SRCTOP}/release/packages/generate-ucl.lua \ + ${_UCLVARS} \ + PKGNAME "${_pkg}" \ + PKGGENNAME "${WORLDPACKAGE}" \ + SRCDIR "${.CURDIR}" \ + "${.ALLSRC:M*.ucl.in}" ${.TARGET} + +. endfor # _pkg in ${_ALLPACKAGES} +.endif # defined(WORLDPACKAGE) + +# Stage the packages from objdir into repodir. + +stagepackages: .PHONY + mkdir -p ${_STAGEDIR} + cp ${_ALLPACKAGES:S/^/${PKG_NAME_PREFIX}-/:S/$/-${PKG_VERSION}.pkg/} \ + ${_STAGEDIR} + +.SUFFIXES: .plist .ucl .pkg +.PATH: ${_PKG_WORLDSTAGE} + +.include diff --git a/share/mk/bsd.pkg.pre.mk b/share/mk/bsd.pkg.pre.mk new file mode 100644 index 00000000000..bcd6f71c5b7 --- /dev/null +++ b/share/mk/bsd.pkg.pre.mk @@ -0,0 +1,92 @@ +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2026 Lexi Winter +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +# Variable definitions used by bsd.pkg.mk. All of these may be overridden: +# +# PKG_CMD The pkg command. [pkg] +# PKG_FORMAT The archive format used when creating packages. One of +# "tzst", "txz", "tbz", "tgz" or "tar". [tzst] +# PKG_LEVEL The compression level for compressed package formats. +# The meaning depends on the exact format, or one of the +# special values "fast" or "best" may be used. [-1] +# PKG_CTHREADS How many threads to use when creating compressed packages. +# Set to "0" or "auto" to auto-detect based on the number +# of CPUs. [0] +# PKG_ABI_FILE The file used to determine the ABI to use when creating +# packages. This should refer to the system being built, +# not the host system. [${WSTAGEDIR}/usr/bin/uname} +# +# +# Package metadata: +# +# PKG_NAME_PREFIX The prefix to use for package names. [FreeBSD] +# PKG_MAINTAINER The package maintainer. [re@FreeBSD.org] +# PKG_WWW The package website. [https://www.FreeBSD.org] +# +# +# Only if _PKG_NEED_ABI is defined: +# +# PKG_ABI The ABI string to use when creating packages. [autodetected] +# +.if !target(____) +____: .NOTMAIN + +# How we invoke pkg. +PKG_CMD?= pkg +PKG_FORMAT?= tzst +PKG_LEVEL?= -1 +PKG_CLEVEL= ${"${PKG_FORMAT:Mtar}" != "":?:-l ${PKG_LEVEL}} +PKG_CTHREADS?= 0 +PKG_ABI_FILE?= ${WSTAGEDIR}/usr/bin/uname + +# These are used in the generated packages, and can be overridden for +# downstream builds. +PKG_NAME_PREFIX?= FreeBSD +PKG_MAINTAINER?= re@FreeBSD.org +PKG_WWW?= https://www.FreeBSD.org + +# These can be set per-package. +PKG_LICENSELOGIC?= single +PKG_LICENSES?= BSD2CLAUSE +PKG_SETS?= optional optional-jail + +# The set annotation may be removed in the future, so don't rely on +# it being here. +PKG_ANNOTATIONS+= set +PKG_ANNOTATIONS.set= ${PKG_SETS:ts,:[*]} + +.endif # !target(____) + +# This always needs to be evaluated since something may have previously +# included us without setting _PKG_NEED_ABI. +.if defined(_PKG_NEED_ABI) + +. if !defined(PKG_ABI) +PKG_ABI!= ${PKG_CMD} -o ABI_FILE=${PKG_ABI_FILE} config ABI +. endif + +# Usually SRCRELDATE comes from Makefile.inc1, but if it's missing, +# find it ourselves. +. if !defined(PKG_OSVERSION) +. if defined(SRCRELDATE) +PKG_OSVERSION= ${SRCRELDATE} +. else +PKG_OSVERSION!= awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \ + ${SRCTOP}/sys/sys/param.h +. endif +. endif + +.endif # defined(_PKG_NEED_ABI) diff --git a/share/mk/bsd.subdir.mk b/share/mk/bsd.subdir.mk index 289e3d591c8..e8bebd07361 100644 --- a/share/mk/bsd.subdir.mk +++ b/share/mk/bsd.subdir.mk @@ -45,14 +45,14 @@ SUBDIR_TARGETS+= \ cleanobj depend distribute files includes installconfig \ installdirs \ installfiles installincludes print-dir realinstall \ - maninstall manlint ${_obj} objlink tags \ + maninstall manlint ${_obj} objlink stagepackages tags \ # Described above. STANDALONE_SUBDIR_TARGETS+= \ all-man buildconfig buildfiles buildincludes check checkdpadd \ clean cleandepend cleandir cleanilinks cleanobj files includes \ installconfig installdirs installincludes installfiles print-dir \ - maninstall manlint obj objlink + maninstall manlint obj objlink stagepackages .include