Commit graph

5689 commits

Author SHA1 Message Date
Warner Losh 2d8fabef75 ino64: Fix incremental builds
These files were removed, so we need to fix up depends for WITHOUT_CLEAN
builds (the default). Metamode builds aren't affected.

Sponsored by:		Netflix
Feedback from:		emaste
Tested by:		Pierre Pronchery
Differential Revision:	https://reviews.freebsd.org/D42433
2023-11-02 12:07:59 -06:00
Warner Losh 34632ed1a4 arm: Introduce MK_KERNEL_BIN to control generation of kernel.bin
It's sometimes desirable to generate kernel.bin and install it. While
the mainstream has moved on to UEFI booting on arm, some specialized
gear can't support it. For that gear, we unconditionally generate
kernel.bin. Add a knob so that WITH_KERNEL_BIN or WITHOUT_KERNEL_BIN
control its generation and installation. config files should add
'makeoptions WITH_KERNEL_BIN=t' to enable it. Since its use is
specialized, it is off by default now since the arm world has largely
moved on to UEFI.

It only affects arm and arm64 (since those are the only two that support
it).

Sponsored by:		Netflix
Reviewed by:		mmel
Differential Revision:	https://reviews.freebsd.org/D39013
2023-10-26 21:10:36 -06:00
Andrew Turner ceefd491c7 tools/build: Support building with glibc 2.38
Ubuntu 23.10 uses glibc 2.38. This adds strlcpy and strlcmp so we need
to remove them from the cross build environment.

Reviewed by:	jrtc27 (earlier version), arichardson
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D42303
2023-10-20 16:45:06 +01:00
Mitchell Horne b293497146 pmc.amd(3): rename from pmc.k8(3)
This is the first step in recognizing that the K8 microarchitecture
represents a small and aged subset of AMD CPUs supported by this class.
Future changes will update the code and documentation details to better
reflect this.

Keep the old filename as an alias.

Reviewed by:	jkoshy
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D41279
2023-10-18 15:05:45 -03:00
Mitchell Horne 82d6d46d0d pmc: remove last bits of AMD K7 CPU support
This includes event definitions from sys/pmc_events.h, definitions from
sys/pmc.h, and the man pages.

Reviewed by:	jkoshy
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D41275
2023-10-18 15:05:45 -03:00
Dag-Erling Smørgrav f2ffadeb03 rm description of EXTRA_TCP_STACKS option.
Fixes:		3a338c5341
Reported by:	mhorne
2023-10-18 17:02:05 +02:00
Peter Holm ef1dad6d83 stress2: Fix "-Wunused-but-set-variable" warnings 2023-10-18 08:54:38 +02:00
Richard Scheffenegger 569f2292ca test: iterate both reader and writer threads starting at the actual pagesize
Reviewed By: pho
Sponsored by: NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D42160
2023-10-11 23:11:57 +02:00
Baptiste Daroussin 742f7ec59e dialog: correctly mark the libaries
Mark the libraries as such in order for make delete-old to not
remove them when the DIALOG option is off
2023-10-11 13:36:16 +02:00
John Baldwin f53355131f Trim various $FreeBSD$
Approved by:	markj (cddl/contrib changes)
Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41961
2023-10-10 10:34:43 -07:00
Baptiste Daroussin 38981026e7 dialog(1): switch off dialog(1) by default
Every direct consumers in base have switch to use bsddialog(1) by
default
2023-10-10 09:19:48 +02:00
Baptiste Daroussin ff01d71e48 bsdconfig: do not remove files id MK_DIALOG=no
bsdconfig does not depends anymore on anything related to dialog(1)
and libdialog(1) and has totally switched to bsddialog(1)
2023-10-10 09:17:29 +02:00
Mitchell Horne 773606fcdf ofwdump: install dependent on MK_FDT
The utility depends on the presence of the openfirm(4) pseudo-device,
which is gated by the FDT kernel option. The MK_FDT knob is correctly
set to "yes" for FDT/OFW-enabled platforms (powerpc* included); use it
to install the utility and eliminate the arch-specific Makefile logic.

No functional change intended.

Reviewed by:	emaste, pkubaj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D41977
2023-10-02 10:40:18 -03:00
Piotr Kubaj 4cf8075264 ObsoleteFiles.inc: only leave ofwdump.8.gz when WITH_FDT is set
Approved by:	mhorne
Differential Revision: https://reviews.freebsd.org/D41905
MFC after:	3 days
2023-10-01 23:36:37 +02:00
Peter Holm 2b716e00cf stress2: Extent timeout limit to avoid false positive errors 2023-09-27 13:01:00 +02:00
Peter Holm 0f35fd3347 stress2: Remove tests from the exclude list 2023-09-27 13:00:01 +02:00
Peter Holm 0ec1bbe579 stress2: Cap total runtime 2023-09-27 12:58:39 +02:00
Ed Maste 61f8df6a13 mfc-candidates: search by committer only, not author
When both --author and --committer are specified, `git log` requires
both to match.  Search only by committer, as it is typically the FreeBSD
committer who will perform the MFC.

Reviewed by:	jhb
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D41964
2023-09-25 16:11:28 -04:00
John Baldwin c4e2333cb2 Update a few tools to not embed $FreeBSD$ in generated files
Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41959
2023-09-25 07:55:43 -07:00
John Baldwin 99159b076a Update a couple of tools to not embed __FBSDID in generated files
Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41955
2023-09-25 07:50:11 -07:00
Simon J. Gerraty f9df609750 Add support for host32 for DIRDEPS_BUILD
Allow building 32bit libs for host.

Move CFLAGS additions from local.sys.dirdeps.mk (which is too early
and impacts CFLAGS defaults) to local.sys.mk

Reviewed by:	stevek
Sponsored by:	Juniper Networks, Inc.
Differential Revision:	https://reviews.freebsd.org/D41946
2023-09-22 23:27:37 -07:00
Ed Maste d3a9d605a8 Add WITHOUT_MANSPLITPKG description
Fixes: 74da9c39c3 ("pkgbase: Split out manpages by default")
Sponsored by: The FreeBSD Foundation
2023-09-16 16:40:41 +01:00
Bjoern A. Zeeb 530c13c540 tools/wlanstats: fix -Wunused-but-set-variable
The "allnodes" code is currently #if 0 so also #if 0 the setting of the
command line option and variable in order to keep wlanstats compiling.

Sponsored by:	The FreeBSD Foundation
MFC after:	10 days
2023-09-11 14:28:07 +00:00
John Baldwin 9c80d66ec1 makeman: Use ${make} instead of plain make to compute ${requireds}
This is currently a no-op but can matter for downstreams whose ${make}
includes additional settings.

Reviewed by:	imp, emaste
Obtained from:	CheriBSD
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D41777
2023-09-08 16:36:52 -07:00
Ed Maste b461276d75 Update WITH_/WITHOUT_SSP descriptions
ProPolice refers to a specific implementation by Hiroaki Etoh and
Kunikazu Yoda.  The implementation in contemporary Clang and GCC is
somewhat different and newer, so use a generic term in the src.conf
descriptions.

Sponsored by:	The FreeBSD Foundation
2023-09-07 11:59:46 -04:00
Baptiste Daroussin 358f8a7add sendmail: remove all m4 files with WITHOUT_SENDMAIL 2023-09-06 14:23:27 +02:00
Brooks Davis a8ae129e6e LIBC_MALLOC: description typo fix
Fixes:		09e32b2fdd
Reported by:	jrtc27
2023-09-01 18:23:33 +01:00
Brooks Davis 2befa269b8 Add INIT_ALL build option
This option replaces WITH_INIT_ALL_PATTERN and WITH_INIT_ALL_ZERO with
INIT_ALL=pattern and INIT_ALL=zero respectively.  As these are
relatively rarely used options no backwards compatibility is
implemented.

Reviewed by:	emaste
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D41675
2023-09-01 17:54:24 +01:00
Brooks Davis 09e32b2fdd libc: add LIBC_MALLOC option
This will enable alternative mallocs to be included in the tree and
selected by setting LIBC_MALLOC.  As there is only one today (jemalloc)
this option does nothing, but we expect to add other implementations
in the future.  This will also reduce diffs to CheriBSD.

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D41660
2023-09-01 17:54:23 +01:00
Brooks Davis 897ae85f7d makeman: add minimal support for group options
Ignore OPT_* values in showconfig out in exising code paths and add
a new path to include descriptions for each. For now, hardcode the
description contents rather than attempting to generate it.  This runs
the risk of docs getting out of date, limits the amount of new shell
code added today while a lua rewrite is nearly ready to land.

This change requires a followup commit to enable OPT_* values in
"make showconfig" in order to actually find group options.

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D41681
2023-09-01 17:54:23 +01:00
Brooks Davis 89aed8837f makeman: clarify scope of ignored option values
The values of WITH_ and WITHOUT_ options are ignored, but group options
are not.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41683
2023-09-01 00:58:39 +01:00
John Baldwin 023ef8015e OptionalObsoleteFiles.inc: Add libprivate{cbor,fido2}_p.a
Two more profile libraries that should be removed by WITHOUT_PROFILE.
Found when upgrading a stable/13 VM to stable/14.
2023-08-25 16:22:01 -07:00
Jessica Clarke 62f243acea tools/build/make.py: Make --with-default-sys-path mirror usr.bin/bmake
The top-level Makefile passes -m to its sub-makes in order to ensure
they use the in-tree mk files in share/mk, but the top-level make itself
has to rely on whatever environment the bmake used has. For FreeBSD, we
configure the system bmake with .../share/mk:/usr/share/mk, which means
it will pick up src's share/mk whenever run from within the src tree,
but currently for non-FreeBSD we configure our bootstrap bmake only with
bmake's own mk files. This is mostly compatible, with two exceptions:

1. "targets" runs at the top level, but needs TARGET_MACHINE_LIST and
   the corresponding MACHINE_ARCH_LIST_${target}, otherwise it will just
   print an empty list.

2. "universe" and "universe-toolchain", when run at the top level (i.e.
   not via the various wrappers around universe like tinderbox), end up
   failing in universe-toolchain itself with:

     bmake[1]: "/path/to/freebsd/share/mk/src.sys.obj.mk" line 112: Cannot use MAKEOBJDIR=
     Unset MAKEOBJDIR to get default:  MAKEOBJDIR='${.CURDIR:S,^${SRCTOP},${OBJTOP},}'

By including .../share/mk in the default sys path like FreeBSD's system
bmake we ensure that we get the in-tree mk files for the top-level make,
not just sub-makes, and avoid such issues.

Note that we cannot (yet) stop using the installed mk files, since the
MAKEOBJDIRPREFIX check in Makefile runs in the object directory and uses
env -i, thereby losing the MAKESYSPATH exported by src.sys.env.mk. Other
such issues may also exist, though are likely rare if so.

Reviewed by:	sjg
Differential Revision:	https://reviews.freebsd.org/D41544
2023-08-23 17:56:56 +01:00
Jessica Clarke 69cfdc81ea tools/build/make.py: Keep bootstrapped bmake binary up-to-date
We currently assume that any existing bootstrapped bmake binary will
work, but this means it never gets updated as contrib/bmake is, and
similarly we won't rebuild it as and when the configure arguments given
to boot-strap change. Whilst the former isn't necessarily a huge problem
given WANT_MAKE_VERSION rarely gets bumped in Makefile, having fewer
variables is a good thing, and so it's easiest if we just always keep it
up-to-date rather than trying to do something similar to what's already
in Makefile (which may or may not be accurate, given updating FreeBSD
gives you an updated bmake, but nothing does so for our bootstrapped
bmake on non-FreeBSD). The latter is more problematic, though, and the
next commit will be changing this configuration.

We thus now add in two checks. The first is to compare MAKE_VERSION
against _MAKE_VERSION from contrib/bmake/VERSION. The second is to
record at bootstrap time the exact configuration used, and compare that
against what we would bootstrap with.

Reviewed by:	arichardson, sjg
Differential Revision:	https://reviews.freebsd.org/D41556
2023-08-23 17:56:50 +01:00
Jessica Clarke 968a3db715 kbdcontrol: Support building as a bootstrap tool on old and non-FreeBSD
Systems that predate 971bac5ace ("kbd: consolidate kb interfaces
(phase one)") cannot build kbdcontrol since kbdelays and kbrates moved
to sys/kbio.h. Moreover, on non-FreeBSD, it requires all kinds of ioctls
and sysctls that are highly FreeBSD-specific to build, but we use it as
a bootstrap tool to generate the keymaps used by some kernels (LINT ones
in particular). Thus, when bootstrapping kbdcontrol, disable everything
that's not needed for that singular use, and use the in-tree kbio.h to
get the definitions of the necessary structures.

This allows KBDMUX_DFLT_KEYMAP, UKBD_DFLT_KEYMAP and ATKBD_DFLT_KEYMAP
to be enabled when building on non-FreeBSD, and thus LINT kernels.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D41541
2023-08-22 21:00:28 +01:00
Jessica Clarke 5157b451c6 tools/build/make.py: Grow the list of MI targets 2023-08-22 18:53:13 +01:00
Jessica Clarke 3b4da25ead tools/build/make.py: Make flake8 clean 2023-08-22 18:52:57 +01:00
Warner Losh b376ef36f5 Update freebsd-yeet for mfc 2023-08-21 19:37:20 -06:00
Peter Holm 0d30f3afa6 stress2: No need to write to the console. Add revision to log string 2023-08-19 09:29:09 +02:00
Peter Holm f322816aaf stress2: Added a syzkaller reproducer 2023-08-19 09:28:10 +02:00
Enji Cooper 0c785f0602 Fix GoogleTest 1.14.0 import
- Prune headers and tests no longer installed after the upgrade.
- Remove GoogleTest-related files when MK_GOOGLETEST == no.
- Disable `-Werror` with gcc to unbreak the gcc12 CI run with
  `lib/googletest`. Any issues found by g++ will be filed
  upstream and hopefully resolved in a future version.
- Remove clang -Werror issues which are resolved in version 1.14.0 to
  avoid masking valid issues.

MFC after:	1 week
MFC with:	28f6c2f292
2023-08-18 19:33:58 -07:00
Enji Cooper 47fc52b181 Update make delete-old
This change updates `make delete-old` to account for files installed by the
following options:
- MK_BSDINSTALL
- MK_DMAGENT
- MK_EXAMPLES
- MK_SENDMAIL

MFC after:	2 weeks
2023-08-18 05:18:36 -07:00
Ed Maste 4722ceb7d5 Use 115200 bps by default for serial communication
9600 was a standard baud rate decades ago, but 115200 is now more common
so choose defaults that are useful to the largest number of users.

Note that boot0sio does not support rates above 9600 so it remains
unchanged.

Reviewed by:	bz, imp, manu
Relnotes:	Yes
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D36295
2023-08-17 13:31:38 -04:00
Dag-Erling Smørgrav e738085b94 Remove my middle name. 2023-08-17 15:08:30 +02:00
Warner Losh 3b6b476549 freebsd-yeet: Tool to remove $FreeBSD$ from tree
Use at your own risk, but this will remove $FreeBSD$ from your tree. It
does commits and tries to be at least a little smart about it.

Sponsored by:		Netflix
2023-08-16 12:06:37 -06:00
Warner Losh 6ef644f588 Remove $FreeBSD$: one-line lua tag
Remove /^--\s*\$FreeBSD\$.*$\n/
2023-08-16 11:55:34 -06:00
Warner Losh 05248206f7 Remove $FreeBSD$: one-line bare tag
Remove /^\s*\$FreeBSD\$$\n/
2023-08-16 11:55:20 -06:00
Warner Losh b2c76c41be Remove $FreeBSD$: one-line nroff pattern
Remove /^\.\\"\s*\$FreeBSD\$$\n/
2023-08-16 11:55:15 -06:00
Warner Losh fa9896e082 Remove $FreeBSD$: two-line nroff pattern
Remove /^\.\\"\n\.\\"\s*\$FreeBSD\$$\n/
2023-08-16 11:55:10 -06:00
Warner Losh d0b2dbfa0e Remove $FreeBSD$: one-line sh pattern
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
2023-08-16 11:55:03 -06:00