hotspot/make/bsd/makefiles/gcc.make
changeset 33466 ca5ee1f94b60
parent 33165 70cb797f334d
child 33626 3c94db05e903
equal deleted inserted replaced
33464:8c06a6558874 33466:ca5ee1f94b60
    95 else
    95 else
    96   # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
    96   # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
    97   # prints the numbers (e.g. "2.95", "3.2.1")
    97   # prints the numbers (e.g. "2.95", "3.2.1")
    98   CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
    98   CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
    99   CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
    99   CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
       
   100   CC_VER_MICRO := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f3)
   100 endif
   101 endif
   101 
   102 
   102 ifeq ($(USE_CLANG), true)
   103 ifeq ($(USE_CLANG), true)
   103   # Clang has precompiled headers support by default, but the user can switch
   104   # Clang has precompiled headers support by default, but the user can switch
   104   # it off by using 'USE_PRECOMPILED_HEADER=0'.
   105   # it off by using 'USE_PRECOMPILED_HEADER=0'.
   324     OPT_CFLAGS/unsafe.o += -O1
   325     OPT_CFLAGS/unsafe.o += -O1
   325   else
   326   else
   326     $(error "Update compiler workarounds for Clang $(CC_VER_MAJOR).$(CC_VER_MINOR)")
   327     $(error "Update compiler workarounds for Clang $(CC_VER_MAJOR).$(CC_VER_MINOR)")
   327   endif
   328   endif
   328 else
   329 else
       
   330   # Do not allow GCC 4.1.1
       
   331   ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 1 \& $(CC_VER_MICRO) = 1), 1)
       
   332     $(error "GCC $(CC_VER_MAJOR).$(CC_VER_MINOR).$(CC_VER_MICRO) not supported because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=27724")
       
   333   endif
   329   # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
   334   # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
   330   ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
   335   ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
   331     OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
   336     OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
   332   endif 
   337   endif 
   333 endif
   338 endif