Commit Graph

18755 Commits

Author SHA1 Message Date
lukem a9a927dd92 adapt to ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
Simplify CWARNFLAGS to use ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
which works for both clang and gcc, and remove compiler-specific
equivalents.
2023-06-03 21:26:27 +00:00
lukem 2ffa4e20ef bsd.*.mk: move MKSTRIPSYM default to bsd.own.mk
Add default for MKSTRIPSYM=yes to to bsd.own.mk _MKVARS.no.
Test ${MKSTRIPSYM} != "no".
2023-06-03 21:24:57 +00:00
lukem 23c510a48b bsd.obj.mk: move MKHOSTOBJ to bsd.own.mk
Add default for MKHOSTOBJ=no to to bsd.own.mk _MKVARS.no.
Simplify bsd.obj.mk check.
2023-06-03 21:23:49 +00:00
lukem 3b104e300e bsd.dep.mk: move MKDEPINCLUDES to bsd.own.mk
Add default for MKDEPINCLUDES=no to to bsd.own.mk _MKVARS.no.
Simplify bsd.dep.mk check.
2023-06-03 21:23:07 +00:00
lukem b3558439e9 bsd.*.mk: move MKCLEAN* to bsd.own.mk
Move the defaults for MKCLEANSRC and MKCLEANVERIFY
from bsd.clean.mk to bsd.own.mk _MKVARS.yes.
2023-06-03 21:21:32 +00:00
lukem 0f2b82fc80 mk.conf: fix the year 2023-06-03 11:13:40 +00:00
lukem c4b7a9e794 bsd.own.mk: rename GCC_NO_* to CC_WNO_*
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.
2023-06-03 09:09:01 +00:00
lukem f937c412f3 bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER
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.
2023-06-03 08:52:53 +00:00
lukem b329684b89 bsd.own.mk: obsolete non-MK variants MANZ UNPRIVED UPDATE
Remove support for variables deprecated 20 years ago
by their MK* equivalents.
2023-06-02 14:30:23 +00:00
andvar cb40c69b16 follow the steps of Andrew Doran (ad) commit and fix more s/loose/lose/ typos.
also s/beyound/beyond/ and few others along the way, mainly in comments.
2023-06-02 08:51:46 +00:00
lukem 1ebcf5670b mk.conf(5): update to reality
- Document:
	MKAMDGPUFIRMWARE, MKARGON2, MKARZERO, MKBSDGREP,
	MKCOMPATMODULES, MKCOMPATTESTS, MKCOMPATX11, MKCXX,
	MKDEPINCLUDES, MKDTB, MKDTC, MKFIRMWARE, MKGROFF,
	MKGROFFHTMLDOC, MKLIBCSANITIZER, MKLIBCXX, MKLIBSTDCXX,
	MKLLVM, MKLLVMRT, MKMAKEMANDB, MKMANDOC, MKNSD,
	MKRADEONFIRMWARE, MKRELRO, MKSANITIZER, MKSLJIT,
	MKSTATICPIE, MKTEGRAFIRMWARE, MKTPM, MKUNBOUND,
	MKXORG_SERVER, NETBSD_OFFICIAL_RELEASE,
	USE_LIBCSANITIZER, USE_PIGZGZIP, USE_SANITIZER,
	USE_XZ_SETS, X11MOTIFPATH
- Document obsolete/deprecated:
	EXTSRCSRCDIR, MKBFD, MKCRYPTO, MKEXTSRC, MKKDEBUG,
	MKKERBEROS4, MKLLD, MKLLDB, MKMCLINKER, MKPERFUSE,
	MKTOOLSDEBUG, SHAREDSTRINGS, USE_COMBINE
- Fix defaults: MKLINT=no MKPICINSTALL=no USE_SKEY=no
- Expand upon defaults that are platform specific.
- Sort variable entries.
- If a NOxxx variable disables a variable, describe it.
- Layout of each variable: supported values, description,
  any other variables that change this variable, optional note,
  default value.
- Consistent double quotes around default strings (even paths).
- Consistent "will be" instead of "is" or "are".
- Sort order of internal macro definitions.
- Add NODEF and NOVAR macros.
- Oxford comma and semi-colons where appropriate.
- Fix mandoc -Tlint.
2023-06-01 21:58:05 +00:00
lukem b2387f1a6b bsd.own.mk: describe recent convention in comments 2023-06-01 21:54:17 +00:00
lukem 09ef972abc bsd.own.mk: MKPERFUSE isn't used anywhere
perfuse is built unconditionally, and MKPERFUSE
isn't tested anywhere.
2023-06-01 21:50:26 +00:00
lukem 70c6660252 bsd.own.mk: MKLLD, MKLLDB, MKMCLINKER are obsolete
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).
2023-06-01 21:47:19 +00:00
lukem ea42860061 bsd.own.mk: support ${MACHINE} defaults in MK* = yes
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.
2023-05-31 20:47:35 +00:00
lukem 5d3629a706 bsd.own.mk: sort lists. whitespace fixes
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.
2023-05-31 20:45:02 +00:00
gutteridge 92ce9f6bbb sysctl.7: be a little more descriptive about kern.osrevision
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).
2023-05-29 23:30:47 +00:00
lukem 11f18d4109 bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER
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.
2023-05-29 20:31:09 +00:00
lukem 0c67090a00 bsd.own.mk: sort list of NO* variables
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.
2023-05-29 17:35:11 +00:00
lukem 5c5a9a025f bsd.own.mk: deprecate NOCRYPTO
MKCRYPTO was removed by riastradh@ on 2017-05-22,
so the NOCRYPTO override is now unnecessary.
2023-05-28 10:49:00 +00:00
lukem 09b4f93adb share/mk: finish USE_COMBINE, NOCOMBINE deprecation
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.
2023-05-28 10:33:13 +00:00
jschauma c95e8ff987 +CRDT conflict-free replicated data type
+UDS    Unix Domain Socket
2023-05-26 03:30:57 +00:00
lukem 7a543a5f74 deprecate SHAREDSTRINGS build option
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
2023-05-24 10:07:16 +00:00
lukem 55152776e1 tools/compat: MAKEVERBOSE support in regen 2023-05-23 20:20:54 +00:00
riastradh 819a01cff3 uiomove(9): Add uiopeek/uioskip operations.
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.)
2023-05-22 14:07:24 +00:00
lukem bfb7ad4003 man0: support objdirs, tools, parallel builds
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>
2023-05-22 12:55:44 +00:00
lukem 35586877ba man0: add bind/dist/bin/tests to noman 2023-05-22 12:34:48 +00:00
andvar 48564e1bf4 +LRO Large Receive Offload, +RSC Receive Segment Coalescing (win counterpart)
PR 57408
2023-05-15 20:54:53 +00:00
christos 9acd1c4e9e switch everyone to OpenSSL-3.x 2023-05-15 16:12:39 +00:00
christos dbed30af1e move hppa and powerpc to OpenSSL-3.x 2023-05-14 22:44:53 +00:00
christos 4ebea0019d move arm to OpenSSL-3.x 2023-05-14 19:01:34 +00:00
riastradh f3f4271d89 x86/boot(8): Nix trailing whitespace. 2023-05-14 09:03:02 +00:00
riastradh 093750639d options(4): Nix trailing whitespace. 2023-05-14 09:02:05 +00:00
christos 26931968e6 switch alpha to OpenSSL-3.x 2023-05-14 01:17:08 +00:00
christos 1246b2c5b1 switch i386 and m68k to OpenSSL-3.x 2023-05-13 15:44:59 +00:00
riastradh 57f1bae4e0 compat: Disable relro in 32-bit arm compat.
Not supported by binutils:

ld: warning: -z relro ignored

PR toolchain/57405
2023-05-13 10:56:54 +00:00
ryoon 87640e2fe9 Fix broken conditional 2023-05-12 11:49:47 +00:00
christos a64becd867 switch vax to OpenSSL-3.x 2023-05-12 11:27:48 +00:00
christos 147b6c818d switch sparc64/aarch64 to OpenSSL-3.x 2023-05-11 17:57:14 +00:00
skrll d39483a90d risc-v: use ${MACHINE}-${MACHINE_ARCH} for the default RELEASEMACHINEDIR
Hopefully, this fixes the release binaries being available on cdn/nyftp.
2023-05-11 08:49:41 +00:00
christos baef51cba2 switch amd64 to OpenSSL-3.0.8 2023-05-10 16:46:39 +00:00
riastradh 5fd5d7ec6a bsd.lib.mk: Nix trailing whitespace. 2023-05-09 22:52:22 +00:00
khorben 6a742d0039 video(4): fix a typo
From Li-Wen Hsu in PR misc/57364; thanks!
2023-05-09 22:00:00 +00:00
skrll 64e2e8792e RISC-V: enabled GDB 2023-05-08 20:58:17 +00:00
christos 7bcea16228 Allow linking against archives like PROGDPLIBS does. 2023-05-08 14:31:43 +00:00
christos ea33b0e454 remove stuff accidentally committed 2023-05-08 14:31:08 +00:00
manu a804834721 Remove XXX todo marker left by mistake 2023-05-08 00:40:50 +00:00
christos 79f27b9d8a Provide a hook to link in libraries statically in PROGDPLIBS.
OpenSSL protects the symbols in the shared object via a linker
script, but programs and tests need those protected symbols, so
they either must link against the archive, or I need to expose the
symbols. For now, I chose to expose the symbols.  Note that we
cannot use -Bstatic -Lpath -llibrary -Bdynamic because this seems
to be broken with collect2 and so we use the path directly.
2023-05-07 23:24:51 +00:00
skrll 75b842b847 RISC-V support that works on QEMU with a single hart.
Thanks for Simon Burge for plic(4).
2023-05-07 12:41:45 +00:00
martin bb0d78374f Switch mips64eb back to old binutils too, with new binutils it causes
random autobuild failures (same reason mips64el had been switched back
before)
2023-05-07 12:26:32 +00:00