From a0a961c05c8916863a67a61f469c717f617e1c58 Mon Sep 17 00:00:00 2001
From: Alon Bar-Lev <alon.barlev@gmail.com>
Date: Fri, 31 May 2019 01:03:03 +0300
Subject: [PATCH 1/2] build: let autoconf detect system extensions

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
---
 configure.ac | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

https://github.com/tpm2-software/tpm2-abrmd/pull/632

diff --git a/configure.ac b/configure.ac
index 35a0c21..0cc8ce8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -7,6 +7,7 @@ AC_INIT([tpm2-abrmd],
 AC_CONFIG_MACRO_DIR([m4])
 AC_PROG_CC
 AC_PROG_LN_S
+AC_USE_SYSTEM_EXTENSIONS
 LT_INIT()
 PKG_INSTALLDIR()
 AM_INIT_AUTOMAKE([foreign subdir-objects])
@@ -151,9 +152,6 @@ AX_ADD_TOOLCHAIN_FLAG([-fstack-protector-all])
 AX_ADD_COMPILER_FLAG([-fpic])
 AX_ADD_COMPILER_FLAG([-fPIC])
 AX_ADD_COMPILER_FLAG([-Wstrict-overflow=5])
-AX_ADD_PREPROC_FLAG([-D_GNU_SOURCE])
-AX_ADD_PREPROC_FLAG([-U_FORTIFY_SOURCE])
-AX_ADD_PREPROC_FLAG([-D_FORTIFY_SOURCE=2])
 AX_ADD_LINK_FLAG([-Wl,--gc-sections])
 AX_ADD_LINK_FLAG([-Wl,--no-undefined])
 AX_ADD_LINK_FLAG([-Wl,-z,noexecstack])
-- 
2.21.0

From 977de33fe1499e7e8fa25f4c1247aaf9b71ba3a2 Mon Sep 17 00:00:00 2001
From: Alon Bar-Lev <alon.barlev@gmail.com>
Date: Fri, 31 May 2019 01:03:08 +0300
Subject: [PATCH 2/2] build: add --disable-defaultflags

Align with other tpm2 build systems.
Enable downstream to override flags.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
---
 configure.ac | 54 ++++++++++++++++++++++++++++++----------------------
 1 file changed, 31 insertions(+), 23 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0cc8ce8..dc32b09 100644
--- a/configure.ac
+++ b/configure.ac
@@ -134,29 +134,37 @@ AS_IF([test \( "x$enable_integration" = "xyes" \) -a \( "x$enable_test_hwtpm" =
     [AC_MSG_NOTICE([Integration tests will be executed against the TPM device.])])
 AM_CONDITIONAL([ENABLE_INTEGRATION],[test "x$enable_integration" = "xyes"])
 
-# preprocessor / compiler / linker flags
-#   these macros are defined in m4/flags.m4
-AX_ADD_COMPILER_FLAG([-Wall])
-AX_ADD_COMPILER_FLAG([-Wextra])
-AX_ADD_COMPILER_FLAG([-Werror])
-AX_ADD_COMPILER_FLAG([-std=gnu99])
-AX_ADD_COMPILER_FLAG([-Wformat])
-AX_ADD_COMPILER_FLAG([-Wformat-security])
-AX_ADD_COMPILER_FLAG([-Wno-missing-braces])
-# work around for Glib usage of function pointers type casting
-#   https://bugzilla.gnome.org/show_bug.cgi?id=793272
-AX_ADD_COMPILER_FLAG([-Wno-cast-function-type])
-AX_ADD_COMPILER_FLAG([-fdata-sections])
-AX_ADD_COMPILER_FLAG([-ffunction-sections])
-AX_ADD_TOOLCHAIN_FLAG([-fstack-protector-all])
-AX_ADD_COMPILER_FLAG([-fpic])
-AX_ADD_COMPILER_FLAG([-fPIC])
-AX_ADD_COMPILER_FLAG([-Wstrict-overflow=5])
-AX_ADD_LINK_FLAG([-Wl,--gc-sections])
-AX_ADD_LINK_FLAG([-Wl,--no-undefined])
-AX_ADD_LINK_FLAG([-Wl,-z,noexecstack])
-AX_ADD_LINK_FLAG([-Wl,-z,now])
-AX_ADD_LINK_FLAG([-Wl,-z,relro])
+AC_ARG_ENABLE([defaultflags],
+              [AS_HELP_STRING([--disable-defaultflags],
+                              [Disable default preprocessor, compiler, and linker flags.])],
+              [enable_defaultflags=$enableval],
+              [enable_defaultflags=yes])
+AS_IF([test "x$enable_defaultflags" = "xyes"],
+      [
+      # preprocessor / compiler / linker flags
+      #   these macros are defined in m4/flags.m4
+      AX_ADD_COMPILER_FLAG([-Wall])
+      AX_ADD_COMPILER_FLAG([-Wextra])
+      AX_ADD_COMPILER_FLAG([-Werror])
+      AX_ADD_COMPILER_FLAG([-std=gnu99])
+      AX_ADD_COMPILER_FLAG([-Wformat])
+      AX_ADD_COMPILER_FLAG([-Wformat-security])
+      AX_ADD_COMPILER_FLAG([-Wno-missing-braces])
+      # work around for Glib usage of function pointers type casting
+      #   https://bugzilla.gnome.org/show_bug.cgi?id=793272
+      AX_ADD_COMPILER_FLAG([-Wno-cast-function-type])
+      AX_ADD_COMPILER_FLAG([-fdata-sections])
+      AX_ADD_COMPILER_FLAG([-ffunction-sections])
+      AX_ADD_TOOLCHAIN_FLAG([-fstack-protector-all])
+      AX_ADD_COMPILER_FLAG([-fpic])
+      AX_ADD_COMPILER_FLAG([-fPIC])
+      AX_ADD_COMPILER_FLAG([-Wstrict-overflow=5])
+      AX_ADD_LINK_FLAG([-Wl,--gc-sections])
+      AX_ADD_LINK_FLAG([-Wl,--no-undefined])
+      AX_ADD_LINK_FLAG([-Wl,-z,noexecstack])
+      AX_ADD_LINK_FLAG([-Wl,-z,now])
+      AX_ADD_LINK_FLAG([-Wl,-z,relro])
+      ])
 
 AC_SUBST([PATH])
 
-- 
2.21.0

