Commit graph

5704 commits

Author SHA1 Message Date
Peter Holm
4b0615e585 stress2: Handle a define with comments 2023-12-01 10:37:13 +01:00
Bjoern A. Zeeb
643d6dce6c tools/net80211: add mlme_assoc
mlme_assoc is a tool to trigger net80211::ieee80211_sta_join1() calls
which in certain conditions cause problems to the LinuxKPI 802.11 compat
code (but also believed to possibly cause problems in case of race to
other firmware based drivers).  This has proven to be a good reproducer
for the problem even on setups which otherwise could run for days without
hitting it.

Sponsored by:	The FreeBSD Foundation
PR:		271979
2023-12-01 01:48:34 +00:00
Warner Losh
6bfca4dcab tools: Automated cleanup of cdefs and other formatting
Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by:		Netflix
2023-11-26 22:24:01 -07:00
Warner Losh
e717cb04be misc: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two
minor fixup to keep things compiling. All the common forms in the tree
were removed with a perl script.

This is for the misfits that have only a few: COPYRIGHT, gnu, tools,
rescue, and etc.

Sponsored by:		Netflix
2023-11-26 22:23:27 -07:00
Peter Holm
49a83b9439 stress2: Do not make assumptions about the value of UFS_LINK_MAX 2023-11-25 10:36:00 +01:00
Brooks Davis
4cd0f014a1 OptionalObsoleteFiles.inc: document block order
Options should be in sort(1) order by primary option (usually, but not
always, first in the if statement).

Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:50:52 +00:00
Brooks Davis
c90d0600ee Sort MK_NETLINK option
Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:50:01 +00:00
Brooks Davis
2b3bf27da4 Sort MK_GNU_DIFF option
Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:59 +00:00
Brooks Davis
fb173fc89e Combine and sort MK_LLVM_COV
These used to be grouped with MK_GCOV option or the like.

Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:55 +00:00
Brooks Davis
16743f0e0b Sort MK_EFI and MK_FTP options
Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:53 +00:00
Brooks Davis
a62cefbb5c Sort MK_DTRACE and MK_ZFS options
Presumably these were under MK_CDDL at some point, but these days
src.opts.mk takes care of setting them to "no" when MK_CDDL is.

Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:50 +00:00
Brooks Davis
e70ad278f4 Sort MK_HYPERV option
Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:47 +00:00
Brooks Davis
4ca5df8039 Sort MK_BSD_CPIO before MK_BSDINSTALL
Using sort(1) order makes verification of the sort easier.

Reviewed by:	emaste, imp, netchild
Pull Request:	https://github.com/freebsd/freebsd-src/pull/896
2023-11-14 16:49:41 +00:00
Brooks Davis
ec4c2adb50 Retire LLD_IS_LD option
The option was added to parallel the CLANG_IS_CC which was removed in
commit 20a66ab4bf.

Reviewed by:	imp, dim, emaste
Differential Revision:	https://reviews.freebsd.org/D42575
2023-11-13 21:34:14 +00:00
Guido Falsi
e6eb94a8ff nanobsd: fix typo in utility function call name
Approved by:		imp
Differential Revision:	https://reviews.freebsd.org/D42475
2023-11-06 22:18:35 +01:00
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