hotspot/make/linux/makefiles/gcc.make
changeset 6176 4d9030fe341f
parent 5547 f4b087cbb361
child 6187 4fa7845f7c14
equal deleted inserted replaced
6175:86dbf3cacacc 6176:4d9030fe341f
    23 #
    23 #
    24 
    24 
    25 #------------------------------------------------------------------------
    25 #------------------------------------------------------------------------
    26 # CC, CPP & AS
    26 # CC, CPP & AS
    27 
    27 
       
    28 ifdef ALT_COMPILER_PATH
       
    29 CPP = $(ALT_COMPILER_PATH)/g++
       
    30 CC  = $(ALT_COMPILER_PATH)/gcc
       
    31 else
    28 CPP = g++
    32 CPP = g++
    29 CC  = gcc
    33 CC  = gcc
       
    34 endif
       
    35 
    30 AS  = $(CC) -c
    36 AS  = $(CC) -c
    31 
    37 
    32 # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
    38 # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
    33 # prints the numbers (e.g. "2.95", "3.2.1")
    39 # prints the numbers (e.g. "2.95", "3.2.1")
    34 CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
    40 CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
    65 ARCHFLAG/i486    = -m32 -march=i586
    71 ARCHFLAG/i486    = -m32 -march=i586
    66 ARCHFLAG/amd64   = -m64
    72 ARCHFLAG/amd64   = -m64
    67 ARCHFLAG/ia64    =
    73 ARCHFLAG/ia64    =
    68 ARCHFLAG/sparc   = -m32 -mcpu=v9
    74 ARCHFLAG/sparc   = -m32 -mcpu=v9
    69 ARCHFLAG/sparcv9 = -m64 -mcpu=v9
    75 ARCHFLAG/sparcv9 = -m64 -mcpu=v9
       
    76 ARCHFLAG/arm     =  -fsigned-char
    70 ARCHFLAG/zero    = $(ZERO_ARCHFLAG)
    77 ARCHFLAG/zero    = $(ZERO_ARCHFLAG)
       
    78 ifndef E500V2
       
    79 ARCHFLAG/ppc     =  -mcpu=powerpc
       
    80 endif
    71 
    81 
    72 CFLAGS     += $(ARCHFLAG)
    82 CFLAGS     += $(ARCHFLAG)
    73 AOUT_FLAGS += $(ARCHFLAG)
    83 AOUT_FLAGS += $(ARCHFLAG)
    74 LFLAGS     += $(ARCHFLAG)
    84 LFLAGS     += $(ARCHFLAG)
    75 ASFLAGS    += $(ARCHFLAG)
    85 ASFLAGS    += $(ARCHFLAG)
    76 
    86 
       
    87 ifdef E500V2
       
    88 CFLAGS += -DE500V2
       
    89 endif
       
    90 
    77 # Use C++ Interpreter
    91 # Use C++ Interpreter
    78 ifdef CC_INTERP
    92 ifdef CC_INTERP
    79   CFLAGS += -DCC_INTERP
    93   CFLAGS += -DCC_INTERP
       
    94 endif
       
    95 
       
    96 # Build for embedded targets
       
    97 ifdef JAVASE_EMBEDDED
       
    98   CFLAGS += -DJAVASE_EMBEDDED
    80 endif
    99 endif
    81 
   100 
    82 # Keep temporary files (.ii, .s)
   101 # Keep temporary files (.ii, .s)
    83 ifdef NEED_ASM
   102 ifdef NEED_ASM
    84   CFLAGS += -save-temps
   103   CFLAGS += -save-temps
   169 # Change this back to "-g" if you want the most expressive format.
   188 # Change this back to "-g" if you want the most expressive format.
   170 # (warning: that could easily inflate libjvm_g.so to 150M!)
   189 # (warning: that could easily inflate libjvm_g.so to 150M!)
   171 # Note: The Itanium gcc compiler crashes when using -gstabs.
   190 # Note: The Itanium gcc compiler crashes when using -gstabs.
   172 DEBUG_CFLAGS/ia64  = -g
   191 DEBUG_CFLAGS/ia64  = -g
   173 DEBUG_CFLAGS/amd64 = -g
   192 DEBUG_CFLAGS/amd64 = -g
       
   193 DEBUG_CFLAGS/arm   = -g
       
   194 DEBUG_CFLAGS/ppc   = -g
   174 DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH))
   195 DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH))
   175 ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
   196 ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
   176 DEBUG_CFLAGS += -gstabs
   197 DEBUG_CFLAGS += -gstabs
   177 endif
   198 endif
   178 
   199 
   179 # DEBUG_BINARIES overrides everything, use full -g debug information
   200 # DEBUG_BINARIES overrides everything, use full -g debug information
   180 ifeq ($(DEBUG_BINARIES), true)
   201 ifeq ($(DEBUG_BINARIES), true)
   181   DEBUG_CFLAGS = -g
   202   DEBUG_CFLAGS = -g
   182   CFLAGS += $(DEBUG_CFLAGS)
   203   CFLAGS += $(DEBUG_CFLAGS)
   183 endif
   204 endif
       
   205 
       
   206 # If we are building HEADLESS, pass on to VM
       
   207 # so it can set the java.awt.headless property
       
   208 ifdef HEADLESS
       
   209 CFLAGS += -DHEADLESS
       
   210 endif
       
   211 
       
   212 # We are building Embedded for a small device
       
   213 # favor code space over speed
       
   214 ifdef MINIMIZE_RAM_USAGE
       
   215 CFLAGS += -DMINIMIZE_RAM_USAGE
       
   216 endif