Makefile 800 B

12345678910111213141516171819202122232425
  1. # SPDX-License-Identifier: GPL-2.0
  2. ccflags-y := $(call cc-disable-warning,fortify-source)
  3. quiet_cmd_test_fortify = TEST $@
  4. cmd_test_fortify = $(CONFIG_SHELL) $(src)/test_fortify.sh \
  5. $< $@ "$(NM)" $(CC) $(c_flags) -DKBUILD_EXTRA_WARN1
  6. $(obj)/%.log: $(src)/%.c $(src)/test_fortify.sh FORCE
  7. $(call if_changed_dep,test_fortify)
  8. logs = $(patsubst $(src)/%.c, %.log, $(wildcard $(src)/*-*.c))
  9. targets += $(logs)
  10. quiet_cmd_gen_fortify_log = CAT $@
  11. cmd_gen_fortify_log = cat $(or $(real-prereqs),/dev/null) > $@
  12. $(obj)/test_fortify.log: $(addprefix $(obj)/, $(logs)) FORCE
  13. $(call if_changed,gen_fortify_log)
  14. always-y += test_fortify.log
  15. # Some architectures define __NO_FORTIFY if __SANITIZE_ADDRESS__ is undefined.
  16. # Pass CFLAGS_KASAN to avoid warnings.
  17. KASAN_SANITIZE := y