Commit Graph

7963 Commits

Author SHA1 Message Date
Mark Johnston
09d83a060f pkgbase: Remove package name mangling in generate-ucl.sh
The mangling was present in the initial revision of the script, but its
purpose is not clear.  It may have been to avoid defining make(1)
variables with a dash in the name, but this is permitted.  Furthermore,
it results in invalid dependency information if a dependency's name
contains an underscore, causing e.g., libcompiler_rt-dev to depend on
libcompiler-rt, and resulting in warnings when installing base system
packages.  Remove the mangling.

Reviewed by:	manu
MFC after:	2 months
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D29883
2021-04-26 15:16:04 -04:00
Ed Maste
4bbfa3d3ba release: move installworld before installkernel
To support -DNO_ROOT work.  The top-level installworld target creates a
new METALOG starting with `#mtree 2.0` so it needs to be first, to avoid
overwriting installkernel METALOG entries.

Reviewed by:	gjb
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D29582
2021-04-05 13:16:01 -04:00
Mina Igalic
1c1ff79795 pkgbase: make only vital packages vital, not their sub-packages
make "vital" a replaceable, which defaults to "false" and only set it for
the main clib, utilities and runtime packages, not their sub-packages

PR: 254174
Differential Revision:	https://reviews.freebsd.org/D29224
2021-03-28 12:18:09 +02:00
Emmanuel Vadot
90d2f7c413 release: amd64: Fix ISO/USB hybrid image
Recent mkimg changes forces to have partitions given in explicit order.
This is so we can have the first partition starting at a specific offset
and the next ones starting after without having to specify an offset.
Switch the partition in the mkisoimage.sh script so the first one created
is the isoboot one.

PR:    254490
Reported by:	Michael Dexter <editor@callfortesting.org
Tested by:	Vincent Milum Jr <freebsd@darkain.com>
MFC after:	Right now
2021-03-27 12:04:51 +01:00
Glen Barber
e5c6913a8d release: sync 'git count' logic with newvers.sh
Sync determining the git count with newvers.sh by adding the
--first-parent argument.  This ensures uname(1) reflects the
file name for snapshots.

Reported by:	Mark Millard
MFC after:	3 days
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-17 10:57:32 -04:00
Daniel Engerg
5bffdafd6c Remove tmpfs size and properly format generated fstab for arm
Remove tmpfs size limitation, this breaks make installworld and installation of some packages
Format generated fstab using tabs to make it consistent and readable

MFC after:	1 week
Differential Revision: https://reviews.freebsd.org/D29283
2021-03-17 15:02:05 +01:00
Glen Barber
0af8a2db34 release: do not set __MAKE_CONF and SRCCONF for the chroot build
PR:		254319
Submitted by:	truckman
MFC after:	1 week
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-16 12:01:48 -04:00
Emmanuel Vadot
c7e6cb9e08 pkgbase: Add an src.conf option for splitting man pages
Man pages can be big in total, add an options to split man pages
in -man packages so we produce smaller packages.
This is useful for small jails or mfsroot produced of pkgbase.
The option is off by default.

Reviewed by:	bapt, Mina Galić <me@igalic.co>
Differential Revision:	https://reviews.freebsd.org/D29169
MFC after:      2 weeks
2021-03-16 07:13:09 +01:00
Emmanuel Vadot
c76439da01 pkgbase: Remove case for runtime and jail package ucl generation
They aren't needed and produce wrong package comments :
We use to have "runtime-dev package" instead of
"FreeBSD Base System (Development Files)" for example

Reviewed by:	bapt
Differential Revision:	https://reviews.freebsd.org/D29168
MFC after:      2 weeks
2021-03-16 07:12:56 +01:00
Brad Davis
81c6dfbf56 release: Move the vagrant.vmx config out to its own file to match vbox
Silly to have all these echos and makes this easier to use in other tooling.

Reviewed by:	gjb (re)
2021-03-12 09:44:42 -07:00
Glen Barber
63749bfe96 release: sprinkle UNAME_r hacks following c883b6fd8c
Pass UNAME_r override to make(1) for ports builds when building
ports for another branch.

MFC after:	3 days
MFC with:	0be274d373, 80ab50e1de, c883b6fd8c
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-04 09:25:18 -05:00
Glen Barber
fa04db4762 release: fix VMSIZE following 1ca8842f3a
truncate(1) is not case-sensitive with regard to setting the size
of a file.  makefs(8), however, does not honor upper-case values.
Update release-specific files and the release(7) manual page to
reflect this.

MFC with:	1ca8842f3a
Submitted by:	ehem_freebsd_m5p.com (original)
Differential Review:	https://reviews.freebsd.org/D28979
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-04 08:43:02 -05:00
Nathan Whitehorn
2c26d77d98 Remove /boot/efi from mtree, missed in 0b7472b3d8.
This had prevented the bootconfig step from determining if an ESP exists,
resulting in its unconditional setup. On BIOS-booted amd64, this wasn't
harmful, just unnecessary, but it resulted in failed installations on
non-EFI-supporting platforms like powerpc64.

MFC after:	3 days
2021-03-02 11:49:41 -05:00
Glen Barber
c883b6fd8c Include Makefile.inc1 in Makefile.vm, missed in previous change
MFC after:	3 days
MFC with:	80ab50e1de, 0be274d373
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-02 10:19:59 -05:00
Glen Barber
0be274d373 Adjust where UNAME_r is defined for ports builds
In followup to 80ab50e1de,
export UNAME_r in Makefile.inc1 instead of Makefile.vm.

MFC after:	3 days
MFC with:	80ab50e1de
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-02 10:11:04 -05:00
Nathan Whitehorn
1ca8842f3a Use makefs(8) in release VM-image generation instead of md(4) and newfs.
Using makefs instead reduces the privileges needed to build VM images,
simplifies the script (no need to copy files to a fresh image at the end),
and improves portability by allowing generation of cross-endian images.
As a result of the last, this patch also adds support for generation of
powerpc64 and powerpc64le VM images.

No other changes to the output. Tested and working for both amd64 and
powerpc64 targets.

Reviewed by:	gjb
Differential Revision:	https://reviews.freebsd.org/D28912
2021-02-24 21:16:56 -05:00
Nathan Whitehorn
e70eb40271 Mount the ESP on /boot/efi in VM images.
This follows an earlier change (0b7472b3d8) for mounting the ESP from
systems set up through the installer and should be MFC'ed with it.
2021-02-24 08:18:07 -05:00
Nathan Whitehorn
1af48800c2 Delete memstick images for PowerPC.
These images only ever worked on Apple Powermacs, which are now a very
old platform, and did so only for a very loose definition of "worked"
(they booted on a small subset of supported machines). Moreover, all
the machines they *did* boot on also would boot from a memstick made
by dd'ing an CD image to a flash drive. Since a flash drive prepared
in this way would also boot all the newer systems we support, the
memstick images were strictly less functional than the CD images, even
for booting from memory sticks.
Reviewed by:	jhibbits
MFC after:	1 week
2021-02-23 22:17:20 -05:00
Glen Barber
80ab50e1de pass UNAME_r to fix building 14.x ports on 13.x
MFC after:	1 week
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-18 18:53:20 -05:00
Glen Barber
f61e92ca5a release: permanently remove the 'reldoc' target and associates
Following 7b1d1a1658, the structure
for the reldoc target has significantly changed as result of the
ASCIIDoctor/Hugo migration.  As the release notes related files
on the installation medium are inherently out of date, purge them
entirely.

Discussed within:	re, doceng
No objection:		re (silence), doceng (silence)
Timeout:		2 weeks
MFC after:		1 week
MFC to:			stable/13, stable/12, and stable/11 only
Sponsored by:		Rubicon Communications, LLC ("Netgate")
2021-02-17 23:00:03 -05:00
Glen Barber
6462113b70 release.sh: fix OSVERSION and UNAME_r overrides
Add PBUILD_FLAGS and UNAME_r overrides to extra_chroot_setup()
to fix building ports for 14-CURRENT builds on 13.x.

MFC after:	3 days
MFC with:	c511a5ab53
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-11 10:46:38 -05:00
Glen Barber
c511a5ab53 release: fix overriding UNAME_r
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-10 21:23:58 -05:00
Glen Barber
7b1d1a1658 release: disable the 'reldoc' target after the ASCIIDoctor switch
The 'reldoc' target includes release-related documentation on
installation medium.  Since the switch from XML to ASCIIDoctor,
the file locations have moved, and it will take some time to sort
out how this target should work now.

MFC after:	3 days
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-05 11:47:15 -05:00
Glen Barber
805e2876ec release.sh: Skip installing textproc/docproj when NODOC is set
PR:		253192
Submitted by:	Yasuhiro Kimura
MFC after:	3 days
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-02 19:04:11 -05:00
Glen Barber
70dfc101b6 release: update workaround during transition to git
PR:		253181
Submitted by:	Yasuhiro Kimura
MFC after:	3 days
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-02-02 12:19:36 -05:00
Emmanuel Vadot
183d6cc0e0 release: ROCKPRO64: Remove the quirk that disable the big cores
It's not needed anymore.
2021-01-27 23:31:18 +01:00
Glen Barber
5b0914aea2 release: fix PORT variable
Reported by:	Yasuhiro Kimura (yasu xat utahime dot org)
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-01-20 12:15:13 -05:00
Glen Barber
33f38c8a98 release.sh: bump Copyright year after previous commit
Sponsored by:	Rubicon Communications, LLC (netgate.com)
2021-01-19 13:53:29 -05:00
Glen Barber
041b28524a release: Add workaround to use SVN for ports
The ports tree is scheduled to be converted from Subversion to Git
after the currently-scheduled 13.0-RELEASE, so the source of truth
will be Subversion for the ports tree.

Implement a hack specifically for this case.

Sponsored by:	Rubicon Communications, LLC (netgate.com)
2021-01-19 13:38:33 -05:00
Ed Maste
8fc41ced9f pkgbase: correct typo in System Accounting Utilities
Reported by:	avg, N. J. Mann
2021-01-11 08:44:17 -05:00
Ed Maste
af1878dac7 pkgbase: Rename -acct package System Accounting Utilities
Man pages for these tools refer to 'system accounting'.
2021-01-10 22:27:56 -05:00
Glen Barber
70e64ba449 release.sh: Update GITROOT URL
Hard-code the GITROOT for the ports tree to use cgit-beta
until the ports repository is converted.

While here, remove $FreeBSD$ RCS IDs.

Sponsored by:	Rubicon Communications, LLC (netgate.com)
2020-12-29 09:40:28 -05:00
Mitchell Horne
d8462732ce riscv: increase GENERICSD gap
Leave more room for bootloaders at the beginning of the image. In
particular, the u-boot files for the HiFive Unleashed are ~5MB in size.
2020-12-16 20:21:56 +00:00
Glen Barber
d3df64ad99 Append the branch commit count to _SNAP_SUFFIX for development
snapshot builds.

Sponsored by:	Rubicon Communications, LLC (netgate.com)
2020-12-16 18:40:49 +00:00
Emmanuel Vadot
ff9c6d3f09 release: Rename arm64/RPI3.conf to arm64/RPI.conf
We now have a u-boot port and config.txt for booting on all 64bits
variant of the RPI boards (RPI2v1.1, RPI3* and RPI4*) so use
the new u-boot-rpi-arm64 and the config_arm64.txt files.

Discussed with: karels, kevans
2020-12-15 15:13:06 +00:00
Glen Barber
4708d329f8 Fix staging riscv images.
Sponsored by:	Rubicon Communications, LLC (netgate.com)
2020-12-09 20:38:26 +00:00
Glen Barber
5523003a4c Copy arm64 make-memstick.sh and mkisoimages.sh to the riscv
directory to allow properly building *.iso and *.img files.

Sponsored by:	Rubicon Communications, LLC (netgate.com)
2020-12-09 02:21:25 +00:00
Mitchell Horne
3083b412e9 release: don't checksum images if there are none
For platforms that don't have any of the memstick, cdrom, or dvdrom
release images (i.e. riscv64), the release-install target will trip up
when invoking md5(1) on the non-existent image files. Skipping this
allows the install to complete successfully.
2020-12-08 00:48:50 +00:00
Mitchell Horne
a0b9e2e854 RISC-V release confs
Add two release flavors for RISC-V. First, the traditional "big-iron"
images, capable of generating distribution sets and VM images. Installer
images won't be built yet, but can be trivially enabled in the future
with the addition of riscv/make-memstick.sh.

Second, a GENERICSD embedded image. I've opted for this instead of
board-specific SD card images as it allows users to just dd the u-boot
they want. The RISC-V hardware ecosystem is still young, so a
configuration for e.g. the new PolarFire SoC Icicle Kit would likely see
very few users.

Reviewed by:	gjb
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D27045
2020-12-08 00:42:03 +00:00
Mitchell Horne
d46a2a0013 riscv: allow building virtual machine images
RISC-V has the same booting requirements as arm64 (loader.efi, no legacy
boot options), so generated images for both architectures have the same
partition layout.

Reviewed by:	gjb
Differential Revision:	https://reviews.freebsd.org/D27044
2020-12-08 00:37:11 +00:00
Mitchell Horne
86635d4992 release.sh: add support for RISC-V embedded builds
Since the few existing RISC-V hardware platforms are single board
computers, we can piggyback off of arm/arm64's embedded build support
for generating SD card images.

I don't see a pressing need to change the naming in this file at this
time.

Reviewed by:	gjb, manu
Differential Revision:	https://reviews.freebsd.org/D27043
2020-12-08 00:35:13 +00:00
Emmanuel Vadot
e6b9cee76b release: Merge the RPI2 and BEAGLEBONE image with the GENERICSD one
Both RPI2 and BEAGLEBONE are still popular and used arm boards.
Both u-boots can coexist as they are named differently and live in the
fat partition.
This leave us with only one image that can be used for both of those
boards and all the other ones supported by FreeBSD provided that you
install the correct u-boot on it.

Reviewed by:	imp
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D27283
2020-11-24 17:53:13 +00:00
Emmanuel Vadot
a3b4dcfd68 Release: arm: Remove config for old boards
All those board are impossible to buy nowadays and could boot using the
GENERICSD image after putting the correct u-boot on them.

Reviewed by:	imp
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D27282
2020-11-24 17:52:01 +00:00
Emmanuel Vadot
5321a88409 release: rpi3: Copy the bcm2710 variant of the rpi2
This is the dtb intented to be used for booting RPI2 v1.2 in aarch64.
2020-11-22 18:42:08 +00:00
Emmanuel Vadot
44bef6729b release: Switch the Allwinner board to GPT
Allwinner bootrom have an alternate location for u-boot at 128k.
Work was made recently in u-boot to relocate correctly if loaded from
there.
The advantage of this offset is that we can now use a GPT scheme.
2020-11-19 14:27:01 +00:00
Emmanuel Vadot
308c75d1e5 pkgbase: Remove %VCS_REVISION% from utilities comments
We don't do that on other packages so be consistent.
It also don't work when building from git.
2020-11-06 15:21:53 +00:00
Emmanuel Vadot
ea07005137 release: Add an image for CI
A lot of projects CI can't do FreeBSD tests currently.
The main reason is that the project CI infrastructure is runned on Linux
and that our images aren't modifiable from a Linux hosts.
Add a basic image specific for this case (called BASIC-CI for a lack of a
better name).
The image have no package pre-installed.
It only have a few modification to have dhcp client runned on the default
interface and sshd started with option to be able to log on without a password
as root.

Sponsored by: The FreeBSD Foundation

Reviewed by:	re (gjb@)
Differential Revision:	https://reviews.freebsd.org/D25598
2020-11-02 21:10:49 +00:00
Mitchell Horne
e0f9cec7d6 arm64: set the correct partition type in make-memstick.sh
We create a UFS root filesystem using makefs(8), and later pass it to
mkimg(1) when creating the final image. The correct partition type is
freebsd-ufs; the freebsd parition type is for partitions containing a
BSD disklabel.

Reviewed by:	emaste
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D26987
2020-10-30 18:22:46 +00:00
Mitchell Horne
1d76e25a67 arm64: convert virtual machine images to GPT
These images were switched to MBR in r281876 as a way to cope with a
hard-coded partition GUID in QEMU's default EFI firmware. Enough time
has passed that this is no longer a problem; QEMU versions >= 4.0
include a copy of edk2 EFI firmware that can detect the root filesystem
properly. Alternatively, sysutils/u-boot-qemu-arm64 can be used.

Switch back to building these images with a GPT partition table, and
re-enable the swap partition.

Reviewed by:	gjb, emaste
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D26986
2020-10-30 18:20:52 +00:00
Mitchell Horne
0d51f9e589 vmimage.subr: noisier failure for unsupported targets
The return code of write_partition_layout() doesn't bubble up, so an
invocation of make vm-release for an incorrect/unsupported target will
appear to succeed while make vm-install will fail due to missing
files. This isn't a common point of failure, but is worth handling
properly.

Upgrade this case to print a message to stderr, and exit in place. This
is okay to do since at this point in the execution of mk-vmimage.sh,
cleanup() has already been run.

Reviewed by:	gjb
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D26985
2020-10-30 18:18:25 +00:00