From bbe5e72fc114e601fe2a6e6ec2b46b33c2def762 Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Sun, 13 Nov 2022 01:33:17 +0100 Subject: [PATCH] build: Activate warnings and LTO on *BSD. Newer versions of BSD ship compilers/packages which no longer throw warnings, so activate the warnings on all platforms. Also LTO (link-time optimization) seems to work on the test machines now, so activate this as well. Tested on FreeBSD-13.1 with clang-13.0.0 and on NetBSD-9.3 with gcc-7.5.0. --- Makefile.real | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Makefile.real b/Makefile.real index 95b68630..21cef7c7 100644 --- a/Makefile.real +++ b/Makefile.real @@ -119,6 +119,7 @@ CPPFLAGS += -DCC_VERSION='"$(cc_version)"' CPPFLAGS += -I$(lls_suite_dir) CPPFLAGS += -I$(yy_build_dir) CPPFLAGS += $(lopsub_cppflags) +CPPFLAGS += -Wunused-macros STRICT_CFLAGS += -fno-strict-aliasing STRICT_CFLAGS += -ftrapv @@ -133,6 +134,11 @@ STRICT_CFLAGS += -Wredundant-decls STRICT_CFLAGS += -Wno-sign-compare -Wno-unknown-pragmas STRICT_CFLAGS += -Wdeclaration-after-statement STRICT_CFLAGS += -Wformat -Wformat-security -Wmissing-format-attribute +STRICT_CFLAGS += -fdata-sections -ffunction-sections +STRICT_CFLAGS += -Wstrict-prototypes +STRICT_CFLAGS += -Wshadow + +LDFLAGS += -Wl,--gc-sections ifeq ($(ENABLE_UBSAN), yes) STRICT_CFLAGS += -fsanitize=undefined @@ -141,12 +147,7 @@ endif ifeq ($(uname_s),Linux) # these cause warnings on *BSD - CPPFLAGS += -Wunused-macros - STRICT_CFLAGS += -fdata-sections -ffunction-sections - STRICT_CFLAGS += -Wstrict-prototypes - STRICT_CFLAGS += -Wshadow STRICT_CFLAGS += -Wunused -Wall - LDFLAGS += -Wl,--gc-sections endif cc-option = $(shell \ -- 2.39.2