156 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
157 CFLAGS += -fvisibility=hidden
158 endif
159 else
160 CFLAGS += -fvisibility=hidden
161 endif
162
163 ifeq ($(USE_CLANG), true)
164 # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm'
165 # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment')
166 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0"
167 STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mstack-alignment=16
168 else
169 STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mllvm -stack-alignment=16
170 endif
171 endif
172
173 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
174 ARCHFLAG/i486 = -m32 -march=i586
175 ARCHFLAG/amd64 = -m64 $(STACK_ALIGNMENT_OPT)
176 ARCHFLAG/ia64 =
177 ARCHFLAG/sparc = -m32 -mcpu=v9
178 ARCHFLAG/sparcv9 = -m64 -mcpu=v9
179 ARCHFLAG/zero = $(ZERO_ARCHFLAG)
180 ARCHFLAG/ppc64 = -m64
181
182 CFLAGS += $(ARCHFLAG)
183 AOUT_FLAGS += $(ARCHFLAG)
184 LFLAGS += $(ARCHFLAG)
185 ASFLAGS += $(ARCHFLAG)
186
187 ifeq ($(DEBUG_BINARIES), true)
188 ASFLAGS += $(ASFLAGS_DEBUG_SYMBOLS)
189 endif
190
191 # Use C++ Interpreter
192 ifdef CC_INTERP
193 CFLAGS += -DCC_INTERP
194 endif
195
|
156 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
157 CFLAGS += -fvisibility=hidden
158 endif
159 else
160 CFLAGS += -fvisibility=hidden
161 endif
162
163 ifeq ($(USE_CLANG), true)
164 # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm'
165 # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment')
166 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0"
167 STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mstack-alignment=16
168 else
169 STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mllvm -stack-alignment=16
170 endif
171 endif
172
173 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
174 ARCHFLAG/i486 = -m32 -march=i586
175 ARCHFLAG/amd64 = -m64 $(STACK_ALIGNMENT_OPT)
176 ARCHFLAG/aarch64 =
177 ARCHFLAG/ia64 =
178 ARCHFLAG/sparc = -m32 -mcpu=v9
179 ARCHFLAG/sparcv9 = -m64 -mcpu=v9
180 ARCHFLAG/zero = $(ZERO_ARCHFLAG)
181 ARCHFLAG/ppc64 = -m64
182
183 CFLAGS += $(ARCHFLAG)
184 AOUT_FLAGS += $(ARCHFLAG)
185 LFLAGS += $(ARCHFLAG)
186 ASFLAGS += $(ARCHFLAG)
187
188 ifeq ($(DEBUG_BINARIES), true)
189 ASFLAGS += $(ASFLAGS_DEBUG_SYMBOLS)
190 endif
191
192 # Use C++ Interpreter
193 ifdef CC_INTERP
194 CFLAGS += -DCC_INTERP
195 endif
196
|