Kaynağa Gözat

Autodetect whether or not we need to be using -fno-stack-protector.

tags/v0.9.3
Michael Brown 17 yıl önce
ebeveyn
işleme
5172d7b266
1 değiştirilmiş dosya ile 8 ekleme ve 0 silme
  1. 8
    0
      src/Makefile.housekeeping

+ 8
- 0
src/Makefile.housekeeping Dosyayı Görüntüle

@@ -102,6 +102,14 @@ CFLAGS	+= $(OLDGAS)
102 102
 oldgas :
103 103
 	@$(ECHO) $(oldgas)
104 104
 
105
+# Some widespread patched versions of gcc include -fstack-protector by
106
+# default, even when -ffreestanding is specified.  We therefore need
107
+# to disable -fstack-protector if the compiler supports it.
108
+#
109
+SP_TEST = $(CC) -fno-stack-protector -x c -E - < /dev/null >/dev/null 2>&1
110
+SP_FLAGS := $(shell $(SP_TEST) && $(ECHO) '-fno-stack-protector')
111
+CFLAGS	+= $(SP_FLAGS)
112
+
105 113
 # compiler.h is needed for our linking and debugging system
106 114
 #
107 115
 CFLAGS	+= -include compiler.h

Loading…
İptal
Kaydet