jdk/makefiles/CompileLaunchers.gmk
changeset 22587 28bea2d65a18
parent 17732 79c019dd5279
child 22592 2edfb3abb041
equal deleted inserted replaced
18418:ea73f01b9053 22587:28bea2d65a18
    21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    22 # or visit www.oracle.com if you need additional information or have any
    22 # or visit www.oracle.com if you need additional information or have any
    23 # questions.
    23 # questions.
    24 #
    24 #
    25 
    25 
    26 defalt: all
    26 default: all
    27 
    27 
    28 include $(SPEC)
    28 include $(SPEC)
    29 include MakeBase.gmk
    29 include MakeBase.gmk
    30 include NativeCompilation.gmk
    30 include NativeCompilation.gmk
    31 
    31 
   126     $1_CFLAGS:=$(CFLAGS_JDKEXE)
   126     $1_CFLAGS:=$(CFLAGS_JDKEXE)
   127     ifeq ($(10),true)
   127     ifeq ($(10),true)
   128         $1_CFLAGS:=$(filter-out -MD,$(CFLAGS_JDKEXE))
   128         $1_CFLAGS:=$(filter-out -MD,$(CFLAGS_JDKEXE))
   129     endif
   129     endif
   130 
   130 
   131     ifneq ($(wildcard $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU)),)
   131     # The linker on older SuSE distros (e.g. on SLES 10) complains with:
   132         $1_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU)
   132     # "Invalid version tag `SUNWprivate_1.1'. Only anonymous version tag is allowed in executable."
       
   133     # if feeded with a version script which contains named tags.
       
   134     ifeq ($(USING_BROKEN_SUSE_LD),yes)
       
   135         ifneq ($(wildcard $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU).anonymous),)
       
   136             $1_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU).anonymous
       
   137         else
       
   138             $1_MAPFILE:=
       
   139         endif
   133     else
   140     else
   134         $1_MAPFILE:=
   141         ifneq ($(wildcard $(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU)),)
       
   142             $1_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/launchers/mapfile-$(OPENJDK_TARGET_CPU)
       
   143         else
       
   144             $1_MAPFILE:=
       
   145         endif
   135     endif
   146     endif
   136 
   147 
   137     $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\
   148     $(call SetupNativeCompilation,BUILD_LAUNCHER_$1,\
   138 	SRC:=$(JDK_TOPDIR)/src/share/bin,\
   149 	SRC:=$(JDK_TOPDIR)/src/share/bin,\
   139 	INCLUDE_FILES:=main.c,\
   150 	INCLUDE_FILES:=main.c,\
   446 ifeq ($(OPENJDK_TARGET_OS),windows)
   457 ifeq ($(OPENJDK_TARGET_OS),windows)
   447     BUILD_UNPACKEXE_LDEXE:=$(CC)
   458     BUILD_UNPACKEXE_LDEXE:=$(CC)
   448     EXE_OUT_OPTION_save:=$(EXE_OUT_OPTION)
   459     EXE_OUT_OPTION_save:=$(EXE_OUT_OPTION)
   449     EXE_OUT_OPTION:=-Fe
   460     EXE_OUT_OPTION:=-Fe
   450 endif
   461 endif
       
   462 
       
   463 # The linker on older SuSE distros (e.g. on SLES 10) complains with:
       
   464 # "Invalid version tag `SUNWprivate_1.1'. Only anonymous version tag is allowed in executable."
       
   465 # if feeded with a version script which contains named tags.
       
   466 ifeq ($(USING_BROKEN_SUSE_LD),yes)
       
   467   UNPACK_MAPFILE=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200.anonymous
       
   468 else
       
   469   UNPACK_MAPFILE=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200
       
   470 endif
       
   471 
   451 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
   472 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
   452                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
   473                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
   453 		EXCLUDE_FILES:=jni.cpp,\
   474 		EXCLUDE_FILES:=jni.cpp,\
   454 		LANG:=$(UNPACKEXE_LANG),\
   475 		LANG:=$(UNPACKEXE_LANG),\
   455 		OPTIMIZATION:=LOW, \
   476 		OPTIMIZATION:=LOW, \
   457                         -DFULL, \
   478                         -DFULL, \
   458 		CFLAGS_release:=-DPRODUCT,\
   479 		CFLAGS_release:=-DPRODUCT,\
   459 		CFLAGS_linux:=-fPIC,\
   480 		CFLAGS_linux:=-fPIC,\
   460 		CFLAGS_solaris:=-KPIC, \
   481 		CFLAGS_solaris:=-KPIC, \
   461 		CFLAGS_macosx:=-fPIC, \
   482 		CFLAGS_macosx:=-fPIC, \
   462 		MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200,\
   483 		MAPFILE:=$(UNPACK_MAPFILE),\
   463 		LDFLAGS:=$(UNPACKEXE_ZIPOBJS),\
   484 		LDFLAGS:=$(UNPACKEXE_ZIPOBJS),\
   464 		LDFLAGS_windows:=$(CXXFLAGS_JDKEXE),\
   485 		LDFLAGS_windows:=$(CXXFLAGS_JDKEXE),\
   465 		LDFLAGS_posix:=$(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \
   486 		LDFLAGS_posix:=$(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \
   466 			 $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)) \
   487 			 $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)) \
   467 			 $(call SET_SHARED_LIBRARY_ORIGIN),\
   488 			 $(call SET_SHARED_LIBRARY_ORIGIN),\