dreamcast. The problem is not sh3 per-se, but the fact that for sh3
we use -Os by default. That causes false positives since gcc doesn't
detect that e.g. a variable is set and used under the same condition
in different "if" statements.
XXX: This should probably check for optimization level instead,
though, for all I know, phase of moon might be a contributing cause
too.
XXX2: MACHINE_CPU is set in bsd.own.mk and is not available here, so
we have to spell the test in terms of MACHINE_ARCH.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
This has the side effect of complaining for missing prototypes
implicit type declarations and missing return statements.
NB: I've only ran a build on amd64, so other platforms MI code might break.
If you can't wait for me to fix them, revert this commit.
SSP for building the whole source tree. Set this to "yes" for
NetBSD/amd64 and NetBSD/i386. It is now possible to get the old
behavior (build libs and certain programs with SSP) by setting
"USE_SSP_DEFAULT" to "no".
NetBSD/i386 as previously discussed on the "port-amd64" and
"port-i386" mailing lists. No objections from the core team.
Thanks a lot to Tobias Nygren for helping me with the benchmarking
and to Christos Zoulas for fixing SSP problems in cgd(4).
Test compiled on i386 and amd64; there may be some stragglers
on other platforms.
Note: -Wall has this by default in gcc4, and we explicitly disable it at
WARNS=1 (i.e., -Wall -Wno-sign-compare). A goal is to reduce the WARNS level
where this feature is enabled, so we can eventually remove -Wno-sign-compare.
Previously, they were defined in bsd.own.mk if USETOOLS=yes, but in
bsd.sys.mk if USETOOLS!=yes. This caused makefiles that did this:
.include <bsd.own.mk>
FOO != ${TOOL_BAR} args...
to work in the USETOOLS=yes case but not in the USETOOLS!=yes case.
set to /usr/bin/bash if HOST_CYGWIN was defined, but now build.sh
tries to set HOST_SH appropriately.
Remove the HOST_CYGWIN variable, which was not used for any other purpose.
Document that HOST_SH should be an absolute path.
THis was proposed in tech-toolchain.
In bsd.README, document all TOOL_* variables that are set in bsd.sys.mk.
There are several TOOL_* variables that are set in bsd.own.mk, but not
set in bsd.sys.mk and not documented in bsd.README.
* in games/fortune/strfile/Makefile, build strfile as a
regular program instead of as a host tool;
* add tools/strfile directory to build strfile as a host tool;
* in tools/Makefile, add strfile to SUBDIR list;
* in BSD.*.mk, define TOOL_STRFILE variable;
* in games/fortune/datfiles/Makefile, use TOOL_STRFILE when creating
databases at build time;
* in distrib/sets/lists/games/mi, mention usr/games/strfile.
-Wa,--fatal-warnings
to CFLAGS to set assembler warnings to be fatal.
(Done via CFLAGS instead of AFLAGS so that all assembling, not just
that of .S/.s files, uses the option.)
> Don't make linker warnings fatal on linking static libs since
> there is no proper way to avoid "FOO is a patented algorithm" warnings.
Ok'ed by christos@ and dogcow@ on tech-toolchain, and
tested build.sh build for sun2, news68k, alpha and newsmips.