浏览代码

tpm2-abrmd: fix build with BR2_FORTIFY_SOURCE_1

The configure script passes -U FORTIFY_SOURCE -D FORTIFY_SOURCE=2 by
default, which conflicts with BR2_FORTIFY_SOURCE_1 as -Werror is used:

<cross>-gcc ..  -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 .. -D_FORTIFY_SOURCE=1
<command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]

Disable this so the FORTIFY_SOURCE flags in TARGET_CFLAGS (if any) is used
instead.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8286be28913ef3b93c6edacec15a01d7b23b1566)
[Peter: adjust variable names for abrmd-1.3.0]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Peter Korsgaard 6 年之前
父节点
当前提交
e04ae696d4
共有 1 个文件被更改,包括 5 次插入2 次删除
  1. 5 2
      package/tpm2-abrmd/tpm2-abrmd.mk

+ 5 - 2
package/tpm2-abrmd/tpm2-abrmd.mk

@@ -11,10 +11,13 @@ TPM2_ABRMD_LICENSE_FILES = LICENSE
 TPM2_ABRMD_INSTALL_STAGING = YES
 TPM2_ABRMD_DEPENDENCIES = dbus libglib2 tpm2-tss host-pkgconf
 
-# -fstack-protector-all is used by default. Disable that so the
-# BR2_SSP_* options in the toolchain wrapper are used instead
+# -fstack-protector-all and FORTIFY_SOURCE=2 is used by
+# default. Disable that so the BR2_SSP_* / BR2_FORTIFY_SOURCE_* options
+# in the toolchain wrapper and CFLAGS are used instead
 TPM2_ABRMD_CONF_ENV = \
 	ax_cv_check_cflags___fstack_protector_all=no
+	ax_cv_check_ccppflags___U_FORTIFY_SOURCE=no \
+	ax_cv_check_ccppflags___D_FORTIFY_SOURCE_2=no
 
 TPM2_ABRMD_CONF_OPTS += \
 	--with-systemdsystemunitdir=$(if $(BR2_INIT_SYSTEMD),/usr/lib/systemd/system,no) \