Addresses PR misc/57441 from Taylor R Campbell. (Not yet hooked into
source sets, will be done separately.)
(Borrows heavily from the equivalent pflog.4 man page already in tree,
and so retains the original copyright attribution as well.)
protected with spec_io_enter()/spec_io_exit() so there is no need
to force specific vnode locking.
Set locking requirement to '= = =' (unchanged, locked or unlocked).
PR kern/57450 (unplugging hung USB disk triggers panic via _vstate_assert)
Add more variables from build.sh, BUILDING, and various
Makefile's documentation:
CDEXTRA CONFIGOPTS KERNARCHDIR KERNCONFDIR
KERNOBJDIR KERNSRCDIR LOCALTIME
Default sentences now consistently end with ".".
Consistency tweaks in "otherwise".
Editorial tweaks.
Add more variables from BUILDING:
INSTALLBOOT_BOARDS INSTALLWORLDDIR NOCLEANDIR
NODISTRIBDIRS NOINCLUDES.
Add build.sh related notes (from BUILDING).
Clarify "target" as "target architecture" where appropriate
(versus a make target where that's obvious from context.)
Move all obsolete and deprecated variables to
new "OBSOLETE VARIABLES" section at the end.
Add some per-variable editorial improvements from BUILDING.
Change sub headings to headings; it's easier to read.
(I don't know why mdoc doesn't allow blank lines around .Ss)
Add more messages for various sets operations.
Add ${_MKMSG_CREATE} to bsd.own.mk.
Enhance maketars to be a bit more verbose even with -q,
to make it more obvious why certain operations may be slow.
May help debugging PR 47562.
Sync user variables from mk.conf(5), sorted.
(Arguably this could just refer to mk.conf(5)
or share/man/man5/mk.conf.5 and remove the copypasta.)
Document NOxxx overrides in own subsection.
Unexpand tabs, tweak after.
MKDTB and MKPIE are .YorN.
MKX11=yes wants MKINET6=yes.
MKLINKLIB deserves a dash list (like bsd.README).
Expand per bsd.README: MKSTATICPIC, MKUNPRIVED,
MKX11, MKZFS, USE_LIBCSANITIZER, USE_SSP
Change the width of the variable lists to 14n (from 15n)
so that when the lists are rendered and then left aligned,
the column is 16 characters (aka 2 tabs) which makes
copypasta to bsd.README easier.
Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.
GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH
Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER
Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
MKLLD, MKLLDB, MKMCLINKER aren't used in the build,
so remove them.
These were obsoleted by joerg@ on 2019-11-11
with the update of LLVM to 10.0.0git (01f3a59).
For MK* variables (in _MKVARS.yes), default to
MK*.${MACHINE} if MK*.${MACHINE_ARCH} isn't defined.
Equivalent to _MKVARS.no change by mrg@ in rev 1.1065 on 2018-06-16.
Create _NOVARS for the list of NO* variables,
for consistency with _MKVARS.yes and _MKVARS.no
Format _NOVARS, _MKVARS.yes, and _MKVARS.no with
one entry per line, and sort the lists.
Simplifies review and adding new entries.
Per suggestion from riastradh@
Line up some variable assignments more consistently.
It's expressed as an integer, and is also returned as an integer type
should one retrieve it via sysctl(3) (as this man page already
correctly documents in the table above its description).
Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.
We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.
This reserves "NO_*" Makefile variables to disable other features.
Some space->tab fixes.
List the NO variables in order, leaving enough room to add more entries,
not splitting the next letter after "NO" across a line.
No functional change; just prettier and easier to review.
Remove the leftover remnants of deprecated USE_COMBINE and NOCOMBINE,
as gcc -combine has been EOL for many years.
Completes the work done by maya@ on 2019-05-10 in bsd.kmodule.mk rev 1.61.
Hasn't worked for at least 20 years (and never in the cross-build environment,
nor did it work with parallel make), and has never been needed in NetBSD as we
don't have the older BSD programs (pascal, pre-nvi ex) that needed mkstr/xstr
on PDP-11.
PR toolchain/35964
This allows a caller to grab some data, consume part of it, and
atomically update the uio with only the amount it consumed. This
way, the caller can use a buffer of a size that doesn't depend on how
much it will actually consume, which it may not know in advance --
e.g., because it depends on how much an underlying hardware tty
device will accept before it decides it has had too much.
Proposed on tech-kern:
https://mail-index.netbsd.org/tech-kern/2023/05/09/msg028883.html
(Opinions were divided between `uioadvance' and `uioskip'. I stuck
with `uioskip' because that was less work for me.)
man0 creates files, so write to the the OBJDIR instead of the
source directory.
Use TOOL_ appropriately.
Add MAKEVERBOSE support.
Add separate rules to generate:
- all.files: the list of all man files to process (based on mkman)
- manNpages.files: per-section files from all.files. (based on mkman)
- manNpages.ps: per-section .ps from manNpages.files, with
per-file MAKEVERBOSE messages to stderr (as before, just prettier).
- manNpages.pdf: per-section .pdf from manNpages.ps.
Remove the now-obsolete mkman script.
Add TOOL_GROPS and _MKSHMSG_FORMAT to <bsd.own.mk>