Why is this marked for MFC? FreeBSD 12 uses base GCC 4.2.1 on some platforms.
On Tue, May 12, 2020, at 1:34 PM, Ravi Pokala wrote: > This feels like it deserves an UPDATING (and possibly a RELNOTES) entry. > > -Ravi (rpokala@) > > -----Original Message----- > From: <owner-src-committ...@freebsd.org> on behalf of Eric van Gyzen > <vangy...@freebsd.org> > Date: 2020-05-12, Tuesday at 08:22 > To: <src-committ...@freebsd.org>, <svn-src-all@freebsd.org>, > <svn-src-h...@freebsd.org> > Subject: svn commit: r360964 - in head: lib/libclang_rt lib/libthr > lib/msun libexec/rtld-elf libexec/tftpd/tests share/mk stand > stand/arm/uboot stand/efi stand/efi/boot1 stand/efi/loader > stand/i386/boot2 st... > > Author: vangyzen > Date: Tue May 12 15:22:40 2020 > New Revision: 360964 > URL: https://svnweb.freebsd.org/changeset/base/360964 > > Log: > Remove tests for obsolete compilers in the build system > > Assume gcc is at least 6.4, the oldest xtoolchain in the ports tree. > Assume clang is at least 6, which was in 11.2-RELEASE. Drop conditions > for older compilers. > > Reviewed by: imp (earlier version), emaste, jhb > MFC after: 2 weeks > Sponsored by: Dell EMC Isilon > Differential Revision: https://reviews.freebsd.org/D24802 > > Modified: > head/lib/libclang_rt/Makefile.inc > head/lib/libthr/Makefile > head/lib/msun/Makefile > head/libexec/rtld-elf/Makefile > head/libexec/tftpd/tests/Makefile > head/share/mk/bsd.compiler.mk > head/share/mk/bsd.sys.mk > head/stand/arm/uboot/Makefile > head/stand/defs.mk > head/stand/efi/Makefile > head/stand/efi/boot1/Makefile > head/stand/efi/loader/Makefile > head/stand/i386/boot2/Makefile > head/stand/i386/isoboot/Makefile > head/stand/libsa/Makefile > head/sys/conf/Makefile.arm > head/sys/conf/Makefile.powerpc > head/sys/conf/kern.mk > head/sys/conf/kern.post.mk > head/sys/conf/kern.pre.mk > head/sys/conf/kmod.mk > head/sys/modules/Makefile > head/usr.sbin/acpi/acpidb/Makefile > head/usr.sbin/trpt/Makefile > head/usr.sbin/zic/zic/Makefile > > Modified: head/lib/libclang_rt/Makefile.inc > > ============================================================================== > --- head/lib/libclang_rt/Makefile.inc Tue May 12 14:47:38 > 2020 (r360963) > +++ head/lib/libclang_rt/Makefile.inc Tue May 12 15:22:40 > 2020 (r360964) > @@ -32,7 +32,7 @@ CFLAGS+= ${PICFLAG} > CFLAGS+= -fno-builtin > CFLAGS+= -fno-exceptions > CXXFLAGS+= -fno-rtti > -.if ${COMPILER_TYPE} == clang && ${COMPILER_VERSION} >= 30700 > +.if ${COMPILER_TYPE} == clang > CFLAGS+= -fno-sanitize=safe-stack > .endif > CFLAGS+= -fno-stack-protector > > Modified: head/lib/libthr/Makefile > > ============================================================================== > --- head/lib/libthr/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/lib/libthr/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -29,10 +29,7 @@ CFLAGS+=-Winline > > CFLAGS.thr_stack.c+= -Wno-cast-align > CFLAGS.rtld_malloc.c+= -Wno-cast-align > -.include <bsd.compiler.mk> > -.if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 40300) > CFLAGS.thr_symbols.c+= -Wno-missing-variable-declarations > -.endif > > .ifndef NO_THREAD_UNWIND_STACK > CFLAGS+=-fexceptions > > Modified: head/lib/msun/Makefile > > ============================================================================== > --- head/lib/msun/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/lib/msun/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -108,13 +108,13 @@ COMMON_SRCS+= catrigl.c \ > s_nextafterl.c s_nexttoward.c s_remquol.c s_rintl.c s_roundl.c \ > s_scalbnl.c s_sinl.c s_sincosl.c \ > s_tanhl.c s_tanl.c s_truncl.c w_cabsl.c > -# Work around this warning from gcc 6: > +# Work around this warning from gcc: > # lib/msun/ld80/e_powl.c:275:1: error: floating constant > exceeds range of > # 'long double' [-Werror=overflow] > # if( y >= LDBL_MAX ) > # See also: > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=130067 > .include <bsd.compiler.mk> > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 60000 > +.if ${COMPILER_TYPE} == "gcc" > CFLAGS.e_powl.c+= -Wno-error=overflow > .endif > .endif > > Modified: head/libexec/rtld-elf/Makefile > > ============================================================================== > --- head/libexec/rtld-elf/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/libexec/rtld-elf/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -90,8 +90,4 @@ ${PROG_FULL}: ${VERSION_MAP} > # GCC warns about redeclarations even though they have __exported > # and are therefore not identical to the ones from the system > headers. > CFLAGS+= -Wno-redundant-decls > -.if ${COMPILER_VERSION} < 40300 > -# Silence -Wshadow false positives in ancient GCC > -CFLAGS+= -Wno-shadow > -.endif > .endif > > Modified: head/libexec/tftpd/tests/Makefile > > ============================================================================== > --- head/libexec/tftpd/tests/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/libexec/tftpd/tests/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -2,11 +2,8 @@ > > .include <bsd.own.mk> > > -# Skip on GCC 4.2, because it lacks __COUNTER__ > -.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40300 > ATF_TESTS_C= functional > TEST_METADATA.functional+= timeout=15 > -.endif > > LIBADD= util > WARNS?= 6 > > Modified: head/share/mk/bsd.compiler.mk > > ============================================================================== > --- head/share/mk/bsd.compiler.mk Tue May 12 14:47:38 2020 > (r360963) > +++ head/share/mk/bsd.compiler.mk Tue May 12 15:22:40 2020 > (r360964) > @@ -205,20 +205,12 @@ ${X_}COMPILER_FREEBSD_VERSION= unknown > ${X_}COMPILER_RESOURCE_DIR!= ${${cc}:N${CCACHE_BIN}} > -print-resource-dir 2>/dev/null || echo unknown > .endif > > -${X_}COMPILER_FEATURES= > -.if (${${X_}COMPILER_TYPE} == "clang" && ${${X_}COMPILER_VERSION} > >= 30300) || \ > - (${${X_}COMPILER_TYPE} == "gcc" && ${${X_}COMPILER_VERSION} >= > 40800) > -${X_}COMPILER_FEATURES+= c++11 > -.endif > -.if (${${X_}COMPILER_TYPE} == "clang" && ${${X_}COMPILER_VERSION} > >= 30400) || \ > - (${${X_}COMPILER_TYPE} == "gcc" && ${${X_}COMPILER_VERSION} >= > 50000) > -${X_}COMPILER_FEATURES+= c++14 > -.endif > -.if (${${X_}COMPILER_TYPE} == "clang" && ${${X_}COMPILER_VERSION} > >= 50000) || \ > +${X_}COMPILER_FEATURES= c++11 c++14 > +.if ${${X_}COMPILER_TYPE} == "clang" || \ > (${${X_}COMPILER_TYPE} == "gcc" && ${${X_}COMPILER_VERSION} >= > 70000) > ${X_}COMPILER_FEATURES+= c++17 > .endif > -.if ${${X_}COMPILER_TYPE} == "clang" && ${${X_}COMPILER_VERSION} > >= 60000 > +.if ${${X_}COMPILER_TYPE} == "clang" > ${X_}COMPILER_FEATURES+= retpoline > .endif > > > Modified: head/share/mk/bsd.sys.mk > > ============================================================================== > --- head/share/mk/bsd.sys.mk Tue May 12 14:47:38 2020 > (r360963) > +++ head/share/mk/bsd.sys.mk Tue May 12 15:22:40 2020 > (r360964) > @@ -6,8 +6,7 @@ > # Enable various levels of compiler warning checks. These may be > # overridden (e.g. if using a non-gcc compiler) by defining > MK_WARNS=no. > > -# for 4.2.1 GCC: > http://gcc.gnu.org/onlinedocs/gcc-4.2.1/gcc/Warning-Options.html > -# for current GCC: > https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html > +# for GCC: > https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html > # for clang: https://clang.llvm.org/docs/DiagnosticsReference.html > > .include <bsd.compiler.mk> > @@ -29,15 +28,6 @@ CFLAGS+= -std=${CSTD} > CXXFLAGS+= -std=${CXXSTD} > .endif > > -# > -# Turn off -Werror for gcc 4.2.1. The compiler is on the glide > path out of the > -# system, and any warnings specific to it are no longer relevant > as there are > -# too many false positives. > -# > -.if ${COMPILER_VERSION} < 50000 > -NO_WERROR.gcc= yes > -.endif > - > # -pedantic is problematic because it also imposes namespace > restrictions > #CFLAGS+= -pedantic > .if defined(WARNS) > @@ -81,19 +71,13 @@ CWARNFLAGS+= -Wno-pointer-sign > # is set to low values, these have to be disabled explicitly. > .if ${WARNS} <= 6 > CWARNFLAGS.clang+= -Wno-empty-body -Wno-string-plus-int > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30400 > CWARNFLAGS.clang+= -Wno-unused-const-variable > -.endif > .endif # WARNS <= 6 > .if ${WARNS} <= 3 > CWARNFLAGS.clang+= -Wno-tautological-compare -Wno-unused-value\ > -Wno-parentheses-equality -Wno-unused-function > -Wno-enum-conversion > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30600 > CWARNFLAGS.clang+= -Wno-unused-local-typedef > -.endif > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 40000 > CWARNFLAGS.clang+= -Wno-address-of-packed-member > -.endif > .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 90100 > CWARNFLAGS.gcc+= -Wno-address-of-packed-member > .endif > @@ -113,7 +97,7 @@ CWARNFLAGS.clang+= -Wno-array-bounds > .endif # NO_WARRAY_BOUNDS > .if defined(NO_WMISLEADING_INDENTATION) && \ > ((${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= > 100000) || \ > - (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 60100)) > + ${COMPILER_TYPE} == "gcc") > CWARNFLAGS+= -Wno-misleading-indentation > .endif # NO_WMISLEADING_INDENTATION > .endif # WARNS > @@ -137,8 +121,10 @@ CWARNFLAGS+= -Werror > CWARNFLAGS+= -Wno-format > .endif # NO_WFORMAT || NO_WFORMAT.${COMPILER_TYPE} > > -# GCC 5.2.0 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 50200 > +# GCC > +# We should clean up warnings produced with these flags. > +# They were originally added as a quick hack to enable gcc5/6. > +.if ${COMPILER_TYPE} == "gcc" > CWARNFLAGS+= -Wno-error=address \ > -Wno-error=array-bounds \ > -Wno-error=attributes \ > @@ -150,23 +136,18 @@ CWARNFLAGS+= -Wno-error=address > \ > -Wno-error=extra \ > -Wno-error=inline \ > -Wno-error=logical-not-parentheses \ > + -Wno-error=nonnull-compare \ > + -Wno-error=shift-negative-value \ > -Wno-error=strict-aliasing \ > + -Wno-error=tautological-compare \ > -Wno-error=uninitialized \ > -Wno-error=unused-but-set-variable \ > + -Wno-error=unused-const-variable \ > -Wno-error=unused-function \ > -Wno-error=unused-value > -.endif > > -# GCC 6.1.0 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 60100 > -CWARNFLAGS+= -Wno-error=nonnull-compare \ > - -Wno-error=shift-negative-value \ > - -Wno-error=tautological-compare \ > - -Wno-error=unused-const-variable > -.endif > - > # GCC 7.1.0 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 70100 > +.if ${COMPILER_VERSION} >= 70100 > CWARNFLAGS+= -Wno-error=bool-operation \ > -Wno-error=deprecated \ > -Wno-error=expansion-to-defined \ > @@ -182,7 +163,7 @@ CWARNFLAGS+= -Wno-error=bool-operation > \ > .endif > > # GCC 8.1.0 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 80100 > +.if ${COMPILER_VERSION} >= 80100 > CWARNFLAGS+= -Wno-error=aggressive-loop-optimizations \ > -Wno-error=cast-function-type \ > -Wno-error=catch-value \ > @@ -191,9 +172,10 @@ CWARNFLAGS+= -Wno-error=aggressive-loop-optimizations > -Wno-error=sizeof-pointer-memaccess \ > -Wno-error=stringop-truncation > .endif > +.endif # gcc > > # How to handle FreeBSD custom printf format specifiers. > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30600 > +.if ${COMPILER_TYPE} == "clang" > FORMAT_EXTENSIONS= -D__printf__=__freebsd_kprintf__ > .else > FORMAT_EXTENSIONS= -fformat-extensions > @@ -223,11 +205,7 @@ CFLAGS+=-nobuiltininc -idirafter > ${COMPILER_RESOURCE_D > > CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\ > -mllvm -simplifycfg-dup-ret > -.if ${COMPILER_VERSION} >= 30500 && ${COMPILER_VERSION} < 30700 > -CLANG_OPT_SMALL+= -mllvm -enable-gvn=false > -.else > CLANG_OPT_SMALL+= -mllvm -enable-load-pre=false > -.endif > CFLAGS.clang+= -Qunused-arguments > # The libc++ headers use c++11 extensions. These are normally > silenced because > # they are treated as system headers, but we explicitly disable > that warning > @@ -238,14 +216,8 @@ CXXFLAGS.clang+= -Wno-c++11-extensions > > .if ${MK_SSP} != "no" && \ > ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips" > -.if (${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30500) || \ > - (${COMPILER_TYPE} == "gcc" && \ > - (${COMPILER_VERSION} == 40201 || ${COMPILER_VERSION} >= 40900)) > # Don't use -Wstack-protector as it breaks world with -Werror. > SSP_CFLAGS?= -fstack-protector-strong > -.else > -SSP_CFLAGS?= -fstack-protector > -.endif > CFLAGS+= ${SSP_CFLAGS} > .endif # SSP && !ARM && !MIPS > > > Modified: head/stand/arm/uboot/Makefile > > ============================================================================== > --- head/stand/arm/uboot/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/stand/arm/uboot/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -24,7 +24,7 @@ UBLDR_LOADADDR?= 0x1000000 > # Architecture-specific loader code > SRCS= start.S conf.c self_reloc.c vers.c > > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} > 40201 > +.if ${COMPILER_TYPE} == "gcc" > CWARNFLAGS.self_reloc.c+= -Wno-error=maybe-uninitialized > .endif > > > Modified: head/stand/defs.mk > > ============================================================================== > --- head/stand/defs.mk Tue May 12 14:47:38 2020 (r360963) > +++ head/stand/defs.mk Tue May 12 15:22:40 2020 (r360964) > @@ -143,11 +143,7 @@ CFLAGS+= -fPIC -mno-red-zone > # Do not generate movt/movw, because the relocation fixup for them > does not > # translate to the -Bsymbolic -pie format required by self_reloc() > in loader(8). > # Also, the fpu is not available in a standalone environment. > -.if ${COMPILER_VERSION} < 30800 > -CFLAGS.clang+= -mllvm -arm-use-movt=0 > -.else > CFLAGS.clang+= -mno-movt > -.endif > CFLAGS.clang+= -mfpu=none > CFLAGS+= -fPIC > .endif > > Modified: head/stand/efi/Makefile > > ============================================================================== > --- head/stand/efi/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/stand/efi/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -4,16 +4,10 @@ NO_OBJ=t > > .include <bsd.init.mk> > > -# In-tree GCC does not support __attribute__((ms_abi)), but gcc newer > -# than 4.5 supports it. > -.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500 > - > SUBDIR.${MK_FDT}+= fdt > SUBDIR.yes+= libefi boot1 gptboot > SUBDIR.${MK_FORTH}+= loader_4th > SUBDIR.${MK_LOADER_LUA}+= loader_lua > SUBDIR.yes+= loader_simp > - > -.endif # ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500 > > .include <bsd.subdir.mk> > > Modified: head/stand/efi/boot1/Makefile > > ============================================================================== > --- head/stand/efi/boot1/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/stand/efi/boot1/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -42,10 +42,6 @@ > CFLAGS.zfs_module.c+= -I${SYSDIR}/cddl/contrib/opensol > CFLAGS+= -DEFI_ZFS_BOOT > .endif > > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} > 40201 > -CWARNFLAGS.self_reloc.c+= -Wno-error=maybe-uninitialized > -.endif > - > CFLAGS+= -I${EFIINC} > CFLAGS+= -I${EFIINCMD} > CFLAGS+= -I${SYSDIR}/contrib/dev/acpica/include > > Modified: head/stand/efi/loader/Makefile > > ============================================================================== > --- head/stand/efi/loader/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/stand/efi/loader/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -31,10 +31,6 @@ CFLAGS+= -DEFI_ZFS_BOOT > HAVE_ZFS= yes > .endif > > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} > 40201 > -CWARNFLAGS.self_reloc.c+= -Wno-error=maybe-uninitialized > -.endif > - > # We implement a slightly non-standard %S in that it always takes a > # CHAR16 that's common in UEFI-land instead of a wchar_t. This only > # seems to matter on arm64 where wchar_t defaults to an int instead > > Modified: head/stand/i386/boot2/Makefile > > ============================================================================== > --- head/stand/i386/boot2/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/stand/i386/boot2/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -37,9 +37,6 @@ CFLAGS+=-fomit-frame-pointer \ > CFLAGS.gcc+= -Os \ > -fno-asynchronous-unwind-tables \ > --param max-inline-insns-single=100 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} <= 40201 > -CFLAGS.gcc+= -mno-align-long-strings > -.endif > > CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL} > > > Modified: head/stand/i386/isoboot/Makefile > > ============================================================================== > --- head/stand/i386/isoboot/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/stand/i386/isoboot/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -32,9 +32,6 @@ CFLAGS+=-DBOOTPROG=\"isoboot\" \ > -Winline -Wno-pointer-sign > > CFLAGS.gcc+= --param max-inline-insns-single=100 > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} <= 40201 > -CFLAGS.gcc+= -Wno-uninitialized > -.endif > CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL} > > LD_FLAGS+=${LD_FLAGS_BIN} > > Modified: head/stand/libsa/Makefile > > ============================================================================== > --- head/stand/libsa/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/stand/libsa/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -46,11 +46,7 @@ SRCS+= subr_boot.c > # Do not generate movt/movw, because the relocation fixup for them > does not > # translate to the -Bsymbolic -pie format required by self_reloc() > in loader(8). > # Also, the fpu is not available in a standalone environment. > -.if ${COMPILER_VERSION} < 30800 > -CFLAGS.clang+= -mllvm -arm-use-movt=0 > -.else > CFLAGS.clang+= -mno-movt > -.endif > CFLAGS.clang+= -mfpu=none > > .PATH: ${SRCTOP}/contrib/llvm-project/compiler-rt/lib/builtins/arm/ > > Modified: head/sys/conf/Makefile.arm > > ============================================================================== > --- head/sys/conf/Makefile.arm Tue May 12 14:47:38 2020 > (r360963) > +++ head/sys/conf/Makefile.arm Tue May 12 15:22:40 2020 > (r360964) > @@ -44,10 +44,6 @@ CFLAGS.clang += -mfpu=none > > .if !empty(DDB_ENABLED) > CFLAGS += -funwind-tables > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 30500 > -# clang < 3.5.0 requires us to tell it to emit assembly with > unwind information > -CFLAGS += -mllvm -arm-enable-ehabi > -.endif > .endif > > # "makeoptions KERNVIRTADDR=" is now optional, supply the default value. > > Modified: head/sys/conf/Makefile.powerpc > > ============================================================================== > --- head/sys/conf/Makefile.powerpc Tue May 12 14:47:38 > 2020 (r360963) > +++ head/sys/conf/Makefile.powerpc Tue May 12 15:22:40 > 2020 (r360964) > @@ -51,7 +51,7 @@ DPAAWARNFLAGS += \ > -Wno-error=incompatible-pointer-types-discards-qualifiers \ > -Wno-error=non-literal-null-conversion \ > -Wno-error=enum-conversion > -.elif "${COMPILER_TYPE}" == "gcc" && ${COMPILER_VERSION} >= 50200 > +.elif "${COMPILER_TYPE}" == "gcc" > DPAAWARNFLAGS += \ > -Wno-error=redundant-decls \ > -Wno-error=int-in-bool-context > > Modified: head/sys/conf/kern.mk > > ============================================================================== > --- head/sys/conf/kern.mk Tue May 12 14:47:38 2020 (r360963) > +++ head/sys/conf/kern.mk Tue May 12 15:22:40 2020 (r360964) > @@ -31,19 +31,14 @@ NO_WTAUTOLOGICAL_POINTER_COMPARE= > -Wno-tautological-po > CWARNEXTRA?= -Wno-error-tautological-compare -Wno-error-empty-body > \ > -Wno-error-parentheses-equality -Wno-error-unused-function \ > -Wno-error-pointer-sign > -.if ${COMPILER_VERSION} >= 30700 > CWARNEXTRA+= -Wno-error-shift-negative-value > -.endif > -.if ${COMPILER_VERSION} >= 40000 > CWARNEXTRA+= -Wno-address-of-packed-member > -.endif > .if ${COMPILER_VERSION} >= 100000 > NO_WMISLEADING_INDENTATION= -Wno-misleading-indentation > .endif > -.endif > +.endif # clang > > .if ${COMPILER_TYPE} == "gcc" > -.if ${COMPILER_VERSION} >= 40800 > # Catch-all for all the things that are in our tree, but for which > we're > # not yet ready for this compiler. > NO_WUNUSED_BUT_SET_VARIABLE = -Wno-unused-but-set-variable > @@ -55,15 +50,13 @@ CWARNEXTRA?= -Wno-error=address > \ > -Wno-error=enum-compare \ > -Wno-error=inline \ > -Wno-error=maybe-uninitialized \ > + -Wno-error=misleading-indentation \ > + -Wno-error=nonnull-compare \ > -Wno-error=overflow \ > -Wno-error=sequence-point \ > - -Wno-unused-but-set-variable > -.if ${COMPILER_VERSION} >= 60100 > -CWARNEXTRA+= -Wno-error=misleading-indentation \ > - -Wno-error=nonnull-compare \ > -Wno-error=shift-overflow \ > - -Wno-error=tautological-compare > -.endif > + -Wno-error=tautological-compare \ > + -Wno-unused-but-set-variable > .if ${COMPILER_VERSION} >= 70100 > CWARNEXTRA+= -Wno-error=stringop-overflow > .endif > @@ -76,15 +69,7 @@ CWARNEXTRA+= -Wno-error=packed-not-aligned > .if ${COMPILER_VERSION} >= 90100 > CWARNEXTRA+= -Wno-address-of-packed-member > .endif > -.else > -# For gcc 4.2, eliminate the too-often-wrong warnings about > uninitialized vars. > -CWARNEXTRA?= -Wno-uninitialized > -# GCC 4.2 doesn't have -Wno-error=cast-qual, so just disable the > warning for > -# the few files that are already known to generate cast-qual > warnings. > -NO_WCAST_QUAL= -Wno-cast-qual > -NO_WNONNULL= -Wno-nonnull > -.endif > -.endif > +.endif # gcc > > # This warning is utter nonsense > CWARNFLAGS+= -Wno-format-zero-length > @@ -93,7 +78,7 @@ CWARNFLAGS+= -Wno-format-zero-length > # to be disabled. WARNING: format checking is disabled in this case. > .if ${MK_FORMAT_EXTENSIONS} == "no" > FORMAT_EXTENSIONS= -Wno-format > -.elif ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30600 > +.elif ${COMPILER_TYPE} == "clang" > FORMAT_EXTENSIONS= -D__printf__=__freebsd_kprintf__ > .else > FORMAT_EXTENSIONS= -fformat-extensions > @@ -201,12 +186,7 @@ CFLAGS.gcc+= -mno-spe > # DDB happy. ELFv2, if available, has some other efficiency benefits. > # > .if ${MACHINE_ARCH} == "powerpc64" > -.if ${COMPILER_VERSION} >= 40900 > -CFLAGS.gcc+= -mabi=elfv2 > -.else > -CFLAGS.gcc+= -mcall-aixdesc > -.endif > -CFLAGS.clang+= -mabi=elfv2 > +CFLAGS+= -mabi=elfv2 > .endif > > # > > Modified: head/sys/conf/kern.post.mk > > ============================================================================== > --- head/sys/conf/kern.post.mk Tue May 12 14:47:38 2020 > (r360963) > +++ head/sys/conf/kern.post.mk Tue May 12 15:22:40 2020 > (r360964) > @@ -345,10 +345,7 @@ ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}} > > .depend: .PRECIOUS ${SRCS} > > -.if ${COMPILER_TYPE} == "clang" || \ > - (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 60000) > _MAP_DEBUG_PREFIX= yes > -.endif > > _ILINKS= machine > .if ${MACHINE} != ${MACHINE_CPUARCH} && ${MACHINE} != "arm64" > > Modified: head/sys/conf/kern.pre.mk > > ============================================================================== > --- head/sys/conf/kern.pre.mk Tue May 12 14:47:38 2020 > (r360963) > +++ head/sys/conf/kern.pre.mk Tue May 12 15:22:40 2020 > (r360964) > @@ -93,11 +93,7 @@ CFLAGS.gcc+= -fms-extensions > .if defined(CFLAGS_ARCH_PARAMS) > CFLAGS.gcc+=${CFLAGS_ARCH_PARAMS} > .endif > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 50000 > -WERROR?= -Wno-error > -.else > WERROR?= -Werror > -.endif > # The following should be removed no earlier than LLVM11 being > imported into the > # tree, to ensure we don't regress the build. LLVM11 and GCC10 > will switch the > # default over to -fno-common, making this redundant. > > Modified: head/sys/conf/kmod.mk > > ============================================================================== > --- head/sys/conf/kmod.mk Tue May 12 14:47:38 2020 (r360963) > +++ head/sys/conf/kmod.mk Tue May 12 15:22:40 2020 (r360964) > @@ -88,11 +88,7 @@ __KLD_SHARED=no > .if !empty(CFLAGS:M-O[23s]) && empty(CFLAGS:M-fno-strict-aliasing) > CFLAGS+= -fno-strict-aliasing > .endif > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 50000 > -WERROR?= -Wno-error > -.else > WERROR?= -Werror > -.endif > > LINUXKPI_GENSRCS+= \ > bus_if.h \ > @@ -160,11 +156,7 @@ CFLAGS+= -fPIC > # Temporary workaround for PR 196407, which contains the > fascinating details. > # Don't allow clang to use fpu instructions or registers in kernel > modules. > .if ${MACHINE_CPUARCH} == arm > -.if ${COMPILER_VERSION} < 30800 > -CFLAGS.clang+= -mllvm -arm-use-movt=0 > -.else > CFLAGS.clang+= -mno-movt > -.endif > CFLAGS.clang+= -mfpu=none > CFLAGS+= -funwind-tables > .endif > @@ -283,10 +275,7 @@ ${FULLPROG}: ${OBJS} > ${OBJCOPY} --strip-debug ${.TARGET} > .endif > > -.if ${COMPILER_TYPE} == "clang" || \ > - (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 60000) > _MAP_DEBUG_PREFIX= yes > -.endif > > _ILINKS=machine > .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" > > Modified: head/sys/modules/Makefile > > ============================================================================== > --- head/sys/modules/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/sys/modules/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -620,9 +620,7 @@ _aac= aac > _aacraid= aacraid > _acpi= acpi > .if ${MK_CRYPT} != "no" || defined(ALL_MODULES) > -.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} > 40201 > _aesni= aesni > -.endif > .endif > _amd_ecc_inject=amd_ecc_inject > _amdsbwd= amdsbwd > > Modified: head/usr.sbin/acpi/acpidb/Makefile > > ============================================================================== > --- head/usr.sbin/acpi/acpidb/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/usr.sbin/acpi/acpidb/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -87,6 +87,6 @@ LIBADD= pthread > # integer to pointer, which is a GNU extension. > # > # Turn off the warning, because this is in contributed code. > -.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 60000 > +.if ${COMPILER_TYPE} == "clang" > CWARNFLAGS+= -Wno-null-pointer-arithmetic > .endif > > Modified: head/usr.sbin/trpt/Makefile > > ============================================================================== > --- head/usr.sbin/trpt/Makefile Tue May 12 14:47:38 2020 > (r360963) > +++ head/usr.sbin/trpt/Makefile Tue May 12 15:22:40 2020 > (r360964) > @@ -8,18 +8,12 @@ MAN= trpt.8 > BINGRP= kmem > BINMODE= 2555 > > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 50000 > -WARNS?= 4 > -.endif > - > .if ${MK_INET6_SUPPORT} != "no" > CFLAGS+= -DINET6 > .endif > > .include <bsd.prog.mk> > > -.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 50000 > # Several included system headers tickle this warning in ways that are > # difficult to work around in this program. > CFLAGS+= -Wno-missing-variable-declarations > -.endif > > Modified: head/usr.sbin/zic/zic/Makefile > > ============================================================================== > --- head/usr.sbin/zic/zic/Makefile Tue May 12 14:47:38 > 2020 (r360963) > +++ head/usr.sbin/zic/zic/Makefile Tue May 12 15:22:40 > 2020 (r360964) > @@ -15,7 +15,7 @@ CFLAGS+= -I${.CURDIR:H} > -I${SRCTOP}/contrib/tzcode/std > > WARNS?= 2 > > -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 50300 > +.if ${COMPILER_TYPE} == "gcc" > CWARNFLAGS+= -Wno-error=strict-overflow > .endif > > > > -- Brandon Bergren Technical Generalist _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"