55 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" 56 # Allow the user to turn off precompiled headers from the command line. 57 ifneq ($(USE_PRECOMPILED_HEADER),0) 58 PRECOMPILED_HEADER_DIR=. 59 PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp 60 PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch 61 endif 62 endif 63 64 65 #------------------------------------------------------------------------ 66 # Compiler flags 67 68 # position-independent code 69 PICFLAG = -fPIC 70 71 VM_PICFLAG/LIBJVM = $(PICFLAG) 72 VM_PICFLAG/AOUT = 73 VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) 74 75 ifeq ($(ZERO_BUILD), true) 76 CFLAGS += $(LIBFFI_CFLAGS) 77 endif 78 ifeq ($(SHARK_BUILD), true) 79 CFLAGS += $(LLVM_CFLAGS) 80 endif 81 CFLAGS += $(VM_PICFLAG) 82 CFLAGS += -fno-rtti 83 CFLAGS += -fno-exceptions 84 CFLAGS += -D_REENTRANT 85 CFLAGS += -fcheck-new 86 # version 4 and above support fvisibility=hidden (matches jni_x86.h file) 87 # except 4.1.2 gives pointless warnings that can't be disabled (afaik) 88 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0" 89 CFLAGS += -fvisibility=hidden 90 endif 91 92 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH)) 93 ARCHFLAG/i486 = -m32 -march=i586 94 ARCHFLAG/amd64 = -m64 95 ARCHFLAG/ia64 = 96 ARCHFLAG/sparc = -m32 -mcpu=v9 97 ARCHFLAG/sparcv9 = -m64 -mcpu=v9 98 ARCHFLAG/arm = -fsigned-char | 55 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" 56 # Allow the user to turn off precompiled headers from the command line. 57 ifneq ($(USE_PRECOMPILED_HEADER),0) 58 PRECOMPILED_HEADER_DIR=. 59 PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp 60 PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch 61 endif 62 endif 63 64 65 #------------------------------------------------------------------------ 66 # Compiler flags 67 68 # position-independent code 69 PICFLAG = -fPIC 70 71 VM_PICFLAG/LIBJVM = $(PICFLAG) 72 VM_PICFLAG/AOUT = 73 VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) 74 75 ifeq ($(JVM_VARIANT_ZERO), true) 76 CFLAGS += $(LIBFFI_CFLAGS) 77 endif 78 ifeq ($(JVM_VARIANT_ZEROSHARK), true) 79 CFLAGS += $(LIBFFI_CFLAGS) 80 CFLAGS += $(LLVM_CFLAGS) 81 endif 82 CFLAGS += $(VM_PICFLAG) 83 CFLAGS += -fno-rtti 84 CFLAGS += -fno-exceptions 85 CFLAGS += -D_REENTRANT 86 CFLAGS += -fcheck-new 87 # version 4 and above support fvisibility=hidden (matches jni_x86.h file) 88 # except 4.1.2 gives pointless warnings that can't be disabled (afaik) 89 ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0" 90 CFLAGS += -fvisibility=hidden 91 endif 92 93 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH)) 94 ARCHFLAG/i486 = -m32 -march=i586 95 ARCHFLAG/amd64 = -m64 96 ARCHFLAG/ia64 = 97 ARCHFLAG/sparc = -m32 -mcpu=v9 98 ARCHFLAG/sparcv9 = -m64 -mcpu=v9 99 ARCHFLAG/arm = -fsigned-char |