Commit Graph

3154 Commits

Author SHA1 Message Date
christos 540e10dff2 Add -fmacro-prefix-map set like -fdebug-prefix-map (Jan-Benedict Glaw)
See:
https://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html\
    #index-fmacro-prefix-map
https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html\
    #index-fdebug-prefix-map
2023-11-06 22:35:48 +00:00
mrg 958d2a6b74 bump xorg server version. 2023-10-25 04:37:59 +00:00
riastradh fa838d7c8f heimdal: No need for -lm, was only added for -lsqlite3.
PR lib/57406

XXX pullup-10
2023-10-11 14:08:25 +00:00
riastradh 48e4cfe1da bsd.prog.mk: krb5 stuff no longer needs to link against sqlite3.
(Why is this here?  Seems like it should be a .mk fragment under
crypto/external/bsd/heimdal -- that way I would have found it for the
previous commit.)

PR lib/57406

XXX pullup-10
2023-10-11 14:08:17 +00:00
lukem 5622c47680 bsd.own.mk: sort the CC_WNO variables 2023-09-02 12:09:10 +00:00
rin f8b4e528be bsd.own.mk: Switch mips64e[bl] to binutils 2.39 again
Potential fix for PR toolchain/57241 has been committed.
Let us see whether this works fine or not.
2023-08-24 06:18:07 +00:00
rin b7377c06a9 bsd.own.mk: Put gdb back for m68000
However, unfortunately, it does not work even if MAXTSIZ is bumped.
It seems to be too large for 24-bit address space.

This is not a regression; gdb.old does not work also.
2023-08-20 02:11:21 +00:00
christos 8f452ed84f Add elfedit (needed to tag binaries as linux) from GSoC 2023 (Theodore Preduta) 2023-08-19 22:58:15 +00:00
wiz adb944c5df fix typo in previous 2023-08-13 21:52:32 +00:00
christos d0b5c4dbc0 sun2 can't make gdb anymore. there is no gmp because no gcc. 2023-08-13 21:17:05 +00:00
christos b25c1038e8 switch everyone to gdb-13.2 2023-08-11 20:29:17 +00:00
christos 945f88fd2e put back the new gdb 2023-08-09 14:57:19 +00:00
mrg 832d47522a introduce new GCC 12 warning disables and use them in a few places
this introduces 4 new warning disable flags:

   CC_WNO_MISSING_TEMPLATE_KEYWORD
   CC_WNO_REGISTER
   CC_WNO_STRINGOP_OVERREAD
   CC_WNO_ARRAY_BOUNDS

and documents them in README.warnings.  of these, the string op
and array bounds are both problematic (real bugs) and also spurious
(not real bugs), and the other 2 are mostly temporary for older
3rd party code.

add some new uses of CC_WNO_STRINGOP_OVERFLOW.

fix m68k build for gallium and GCC 12.
2023-08-08 06:27:31 +00:00
mrg 69fe22838c put amd64 back to GDB 11. it doesn't build for me, or others.
the first problem is that this rule:

GDBvn.texi: ${DIST}/gdb/version.in
	echo "@set GDBVN $$(${TOOL_CAT} ${.ALLSRC})" > ${.TARGET}

conflicts with the "GDBvn.texi" in the source tree and fail to write
this file with r/o source trees.

the second problem is that gdbserver fails to link because it compiles
the wrong file to create target.o.  this seems like a very bad make or
bsd.*.mk bug -- "SRCS= .. target.cc ...", and yet, make manages to
compile the file "target.c" to create target.o, and then the required
symbols the rest of gdbserver needs are missing.

the third problem is that when you make it build the right target.cc,
it wants bfd.h, and gmp.h, and even after solving those issues, i'm
still getting a fourth issue linking gdbserver and thus reverting.
2023-08-08 03:44:12 +00:00
christos acba6b74f4 switch gdb to 13.20 for x86_64 2023-08-06 20:44:49 +00:00
rin f91ef6a605 bsd.own.mk: Revert CC_WNO_USE_AFTER_FREE
This is an undefined behavior in general. Implementation details of
pointer are not defined in C standards; it is not necessarily address
of memory objects.

Pointed out by uwe@. Thanks!!
2023-08-03 14:55:54 +00:00
rin da04be2518 bsd.own.mk: Introduce CC_WNO_USE_AFTER_FREE for GCC12
-Wuse-after-free for GCC 12 is premature. It fires on a common idiom:

	newbuf = realloc(buf, size);
	p = newbuf + (p - buf);

Let shut this up for GCC 12 (with hoping it gets improved for 13!).
2023-08-03 13:33:26 +00:00
mrg 718c7faca0 we skipped GCC 11, so change the test to GCC 12. 2023-08-01 06:52:06 +00:00
christos ea52ff2b8a we ended up importing 13.2 2023-07-31 17:35:31 +00:00
lukem 07c42e4bc2 bsd.own.mk: force MKSTRIPSYM=no if MKDEBUG=yes
Local symbols are desirable with MKDEBUG=yes, so don't strip them.
Per request from mrg@
2023-07-23 16:52:37 +00:00
lukem cff541e1aa bsd.own.mk: style: block comments, move CC_flag vars
Add #{ .. #} block comments to a long conditional.

Move the CC_flag variables closer to other compiler-related
variables instead of being in the middle of some arch-specific
overrides.
2023-07-23 16:49:29 +00:00
lukem 3575dfc126 bsd.README: sync with mk.conf(5), deduping entries
Remove most duplication of variables already documented in mk.conf(5).
Add lists of supported and obsolete mk.conf(5) variables
so that searches in this document at least find them
(as per BUILDING).

Sync text from mk.conf(5) for entries that remain.
Explicitly document DESTDIR and RELEASEDIR.

Replace MKMAN=no antipattern with NOMAN=.

Consistently use "option" versus "flag"; option is more generic,
and may include a flag with an argument.
2023-07-22 18:50:31 +00:00
riastradh 17503da2a0 bsd.own.mk: Use MACHINE_ARCH for default MKCTF/MKDTRACE=yes x86.
The substantive impact of this is that it enables MKCTF=yes for Xen
kernels.  This is a change because, when building a Xen kernel
(XEN3_DOM0, XEN3_DOMU), MACHINE is set to `xen', not to `i386' or
`amd64', so the conditional never took effect.

(The side effect of setting MKDTRACE=yes when building Xen kernels is
unlikely to matter; that affects module and userland builds.)

PR port-xen/57535

XXX pullup-10
2023-07-21 20:03:13 +00:00
lukem 5b36091254 sets: enhance MAKEVERBOSE support
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.
2023-06-10 16:08:41 +00:00
lukem 429f92fe0c bsd.README: update to reality, sync from mk.conf(5)
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.
2023-06-05 22:36:58 +00:00
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 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
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
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
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
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
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
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