jdk/make/lib/Awt2dLibraries.gmk
changeset 33406 4680f7495292
parent 33305 ed708a0e3482
child 33518 3f1644328d06
equal deleted inserted replaced
33405:24ee3a0ba28f 33406:4680f7495292
    58     DISABLED_WARNINGS_clang := parentheses, \
    58     DISABLED_WARNINGS_clang := parentheses, \
    59     DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
    59     DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
    60     MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
    60     MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
    61     LDFLAGS := $(LDFLAGS_JDKLIB) \
    61     LDFLAGS := $(LDFLAGS_JDKLIB) \
    62         $(call SET_SHARED_LIBRARY_ORIGIN), \
    62         $(call SET_SHARED_LIBRARY_ORIGIN), \
    63     LDFLAGS_SUFFIX := $(BUILD_LIBMLIB_LDLIBS) \
    63     LIBS := $(BUILD_LIBMLIB_LDLIBS) \
    64         $(LDFLAGS_JDKLIB_SUFFIX), \
    64         $(JDKLIB_LIBS), \
    65     LDFLAGS_SUFFIX_solaris := -lc, \
    65     LIBS_solaris := -lc, \
    66     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
    66     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
    67     RC_FLAGS := $(RC_FLAGS) \
    67     RC_FLAGS := $(RC_FLAGS) \
    68         -D "JDK_FNAME=mlib_image.dll" \
    68         -D "JDK_FNAME=mlib_image.dll" \
    69         -D "JDK_INTERNAL_NAME=mlib_image" \
    69         -D "JDK_INTERNAL_NAME=mlib_image" \
    70         -D "JDK_FTYPE=0x2L", \
    70         -D "JDK_FTYPE=0x2L", \
   129           $(LIBMLIB_IMAGE_V_CFLAGS) \
   129           $(LIBMLIB_IMAGE_V_CFLAGS) \
   130           $(CFLAGS_JDKLIB), \
   130           $(CFLAGS_JDKLIB), \
   131       DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
   131       DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
   132       MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
   132       MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
   133       LDFLAGS := $(LDFLAGS_JDKLIB) \
   133       LDFLAGS := $(LDFLAGS_JDKLIB) \
   134           $(BUILD_LIBMLIB_LDLIBS) -ljava -ljvm \
       
   135           $(call SET_SHARED_LIBRARY_ORIGIN), \
   134           $(call SET_SHARED_LIBRARY_ORIGIN), \
   136       LDFLAGS_SUFFIX_solaris := -lc, \
   135       LIBS := -ljava -ljvm -lc $(BUILD_LIBMLIB_LDLIBS), \
   137       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libmlib_image_v, \
   136       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libmlib_image_v, \
   138       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   137       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   139 
   138 
   140   $(BUILD_LIBMLIB_IMAGE_V): $(call FindLib, java.base, java)
   139   $(BUILD_LIBMLIB_IMAGE_V): $(call FindLib, java.base, java)
   141 
   140 
   251     DISABLED_WARNINGS_microsoft := 4297 4244 4267 4996, \
   250     DISABLED_WARNINGS_microsoft := 4297 4244 4267 4996, \
   252     WARNINGS_AS_ERRORS_gcc := false, \
   251     WARNINGS_AS_ERRORS_gcc := false, \
   253     ASFLAGS := $(LIBAWT_ASFLAGS), \
   252     ASFLAGS := $(LIBAWT_ASFLAGS), \
   254     MAPFILE := $(LIBAWT_MAPFILE), \
   253     MAPFILE := $(LIBAWT_MAPFILE), \
   255     LDFLAGS := $(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN), \
   254     LDFLAGS := $(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN), \
   256     LDFLAGS_SUFFIX_linux := -ljvm $(LIBM) $(LIBDL) -ljava, \
   255     LDFLAGS_macosx := -L$(INSTALL_LIBRARIES_HERE), \
   257     LDFLAGS_SUFFIX_solaris := -ljvm $(LIBM) $(LIBDL) -ljava -lc, \
   256     LDFLAGS_windows := -delayload:user32.dll -delayload:gdi32.dll \
   258     LDFLAGS_SUFFIX_aix :=-ljvm $(LIBM) $(LIBDL) -ljava -lm,\
   257         -delayload:shell32.dll -delayload:winmm.dll \
   259     LDFLAGS_SUFFIX_macosx := -L$(INSTALL_LIBRARIES_HERE) \
   258         -delayload:winspool.drv -delayload:imm32.dll \
   260         -lmlib_image -ljvm $(LIBM) \
   259         -delayload:ole32.dll -delayload:comdlg32.dll \
       
   260         -delayload:comctl32.dll -delayload:shlwapi.dll, \
       
   261     LIBS_unix := -ljvm -ljava $(LIBM), \
       
   262     LIBS_linux :=  $(LIBDL), \
       
   263     LIBS_solaris := $(LIBDL) -lc, \
       
   264     LIBS_aix := $(LIBDL),\
       
   265     LIBS_macosx := -lmlib_image \
   261         -framework Cocoa \
   266         -framework Cocoa \
   262         -framework OpenGL \
   267         -framework OpenGL \
   263         -framework JavaNativeFoundation \
   268         -framework JavaNativeFoundation \
   264         -framework JavaRuntimeSupport \
   269         -framework JavaRuntimeSupport \
   265         -framework ApplicationServices \
   270         -framework ApplicationServices \
   266         -framework AudioToolbox \
   271         -framework AudioToolbox, \
   267         -ljava, \
   272     LIBS_windows := kernel32.lib user32.lib gdi32.lib winspool.lib \
   268     LDFLAGS_SUFFIX_windows := kernel32.lib user32.lib gdi32.lib winspool.lib \
       
   269         imm32.lib ole32.lib uuid.lib shell32.lib \
   273         imm32.lib ole32.lib uuid.lib shell32.lib \
   270         comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \
   274         comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \
   271         delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib \
   275         delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib, \
   272         -DELAYLOAD:user32.dll -DELAYLOAD:gdi32.dll \
       
   273         -DELAYLOAD:shell32.dll -DELAYLOAD:winmm.dll \
       
   274         -DELAYLOAD:winspool.drv -DELAYLOAD:imm32.dll \
       
   275         -DELAYLOAD:ole32.dll -DELAYLOAD:comdlg32.dll \
       
   276         -DELAYLOAD:comctl32.dll -DELAYLOAD:shlwapi.dll, \
       
   277     VERSIONINFO_RESOURCE := $(LIBAWT_VERSIONINFO_RESOURCE), \
   276     VERSIONINFO_RESOURCE := $(LIBAWT_VERSIONINFO_RESOURCE), \
   278     RC_FLAGS := $(RC_FLAGS) $(LIBAWT_RC_FLAGS) \
   277     RC_FLAGS := $(RC_FLAGS) $(LIBAWT_RC_FLAGS) \
   279         -D "JDK_FNAME=awt.dll" \
   278         -D "JDK_FNAME=awt.dll" \
   280         -D "JDK_INTERNAL_NAME=awt" \
   279         -D "JDK_INTERNAL_NAME=awt" \
   281         -D "JDK_FTYPE=0x2L", \
   280         -D "JDK_FTYPE=0x2L", \
   336       ifeq ($(DISABLE_XRENDER), true)
   335       ifeq ($(DISABLE_XRENDER), true)
   337         LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true
   336         LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true
   338       endif
   337       endif
   339     endif
   338     endif
   340 
   339 
   341     LIBAWT_XAWT_LDFLAGS_SUFFIX := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm -lc
   340     LIBAWT_XAWT_LIBS := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm -lc
   342 
   341 
   343     ifeq ($(OPENJDK_TARGET_OS), linux)
   342     ifeq ($(OPENJDK_TARGET_OS), linux)
   344       # To match old build, add this to LDFLAGS instead of suffix.
   343       LIBAWT_XAWT_LIBS += -lpthread
   345       LIBAWT_XAWT_LDFLAGS += -lpthread
       
   346     endif
   344     endif
   347 
   345 
   348     $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT, \
   346     $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT, \
   349         LIBRARY := awt_xawt, \
   347         LIBRARY := awt_xawt, \
   350         OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   348         OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   359         DISABLED_WARNINGS_solstudio := E_DECLARATION_IN_CODE \
   357         DISABLED_WARNINGS_solstudio := E_DECLARATION_IN_CODE \
   360             E_ASSIGNMENT_TYPE_MISMATCH E_NON_CONST_INIT, \
   358             E_ASSIGNMENT_TYPE_MISMATCH E_NON_CONST_INIT, \
   361         WARNINGS_AS_ERRORS_gcc := false, \
   359         WARNINGS_AS_ERRORS_gcc := false, \
   362         MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libawt_xawt/mapfile-vers, \
   360         MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libawt_xawt/mapfile-vers, \
   363         LDFLAGS := $(LDFLAGS_JDKLIB) \
   361         LDFLAGS := $(LDFLAGS_JDKLIB) \
   364             $(X_LIBS) $(LIBAWT_XAWT_LDFLAGS) \
       
   365             $(call SET_SHARED_LIBRARY_ORIGIN) \
   362             $(call SET_SHARED_LIBRARY_ORIGIN) \
   366             $(call SET_SHARED_LIBRARY_ORIGIN,/..) \
   363             $(call SET_SHARED_LIBRARY_ORIGIN,/..) \
   367             -L$(INSTALL_LIBRARIES_HERE), \
   364             -L$(INSTALL_LIBRARIES_HERE), \
   368         LDFLAGS_SUFFIX := $(LIBAWT_XAWT_LDFLAGS_SUFFIX), \
   365         LIBS :=  $(X_LIBS) $(LIBAWT_XAWT_LIBS), \
   369         VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   366         VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   370         RC_FLAGS := $(RC_FLAGS) \
   367         RC_FLAGS := $(RC_FLAGS) \
   371             -D "JDK_FNAME=xawt.dll" \
   368             -D "JDK_FNAME=xawt.dll" \
   372             -D "JDK_INTERNAL_NAME=xawt" \
   369             -D "JDK_INTERNAL_NAME=xawt" \
   373             -D "JDK_FTYPE=0x2L", \
   370             -D "JDK_FTYPE=0x2L", \
   422     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/liblcms/mapfile-vers, \
   419     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/liblcms/mapfile-vers, \
   423     LDFLAGS := $(LDFLAGS_JDKLIB) \
   420     LDFLAGS := $(LDFLAGS_JDKLIB) \
   424         $(call SET_SHARED_LIBRARY_ORIGIN), \
   421         $(call SET_SHARED_LIBRARY_ORIGIN), \
   425     LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   422     LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   426     LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
   423     LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
   427     LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \
   424     LIBS_unix := -lawt -ljvm -ljava $(LCMS_LIBS), \
   428     LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc $(LCMS_LIBS), \
   425     LIBS_linux := $(LIBM), \
   429     LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm $(LCMS_LIBS), \
   426     LIBS_macosx := $(LIBM), \
   430     LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm $(LCMS_LIBS), \
   427     LIBS_solaris := -lc, \
   431     LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm $(LCMS_LIBS),\
   428     LIBS_aix := $(LIBM),\
       
   429     LIBS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \
   432     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   430     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   433     RC_FLAGS := $(RC_FLAGS) \
   431     RC_FLAGS := $(RC_FLAGS) \
   434         -D "JDK_FNAME=lcms.dll" \
   432         -D "JDK_FNAME=lcms.dll" \
   435         -D "JDK_INTERNAL_NAME=lcms" \
   433         -D "JDK_INTERNAL_NAME=lcms" \
   436         -D "JDK_FTYPE=0x2L", \
   434         -D "JDK_FTYPE=0x2L", \
   500     DISABLED_WARNINGS_clang := logical-op-parentheses, \
   498     DISABLED_WARNINGS_clang := logical-op-parentheses, \
   501     DISABLED_WARNINGS_microsoft := 4267, \
   499     DISABLED_WARNINGS_microsoft := 4267, \
   502     MAPFILE := $(BUILD_LIBJAVAJPEG_MAPFILE), \
   500     MAPFILE := $(BUILD_LIBJAVAJPEG_MAPFILE), \
   503     LDFLAGS := $(LDFLAGS_JDKLIB) \
   501     LDFLAGS := $(LDFLAGS_JDKLIB) \
   504         $(call SET_SHARED_LIBRARY_ORIGIN), \
   502         $(call SET_SHARED_LIBRARY_ORIGIN), \
   505     LDFLAGS_windows := $(WIN_JAVA_LIB) jvm.lib, \
   503     LIBS := $(LIBJPEG_LIBS) $(JDKLIB_LIBS), \
   506     LDFLAGS_SUFFIX := $(LIBJPEG_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \
   504     LIBS_windows := $(WIN_JAVA_LIB) jvm.lib, \
   507     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   505     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   508     RC_FLAGS := $(RC_FLAGS) \
   506     RC_FLAGS := $(RC_FLAGS) \
   509         -D "JDK_FNAME=javajpeg.dll" \
   507         -D "JDK_FNAME=javajpeg.dll" \
   510         -D "JDK_INTERNAL_NAME=javajpeg" \
   508         -D "JDK_INTERNAL_NAME=javajpeg" \
   511         -D "JDK_FTYPE=0x2L", \
   509         -D "JDK_FTYPE=0x2L", \
   573         LDFLAGS := $(LDFLAGS_JDKLIB) \
   571         LDFLAGS := $(LDFLAGS_JDKLIB) \
   574             $(call SET_SHARED_LIBRARY_ORIGIN), \
   572             $(call SET_SHARED_LIBRARY_ORIGIN), \
   575         LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   573         LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   576         LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   574         LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   577         LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   575         LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   578         LDFLAGS_macosx := $(call SET_SHARED_LIBRARY_ORIGIN)., \
       
   579         REORDER := $(LIBAWT_HEADLESS_REORDER), \
   576         REORDER := $(LIBAWT_HEADLESS_REORDER), \
   580         LDFLAGS_SUFFIX_linux := -ljvm -lawt -lm $(LIBDL) -ljava, \
   577         LIBS_unix := -lawt -ljvm -ljava, \
   581         LDFLAGS_SUFFIX_aix := -ljvm -lawt -ljava,\
   578         LIBS_linux := -lm $(LIBDL), \
   582         LDFLAGS_SUFFIX_solaris := $(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc, \
   579         LIBS_solaris := -lm $(LIBDL) $(LIBCXX) -lc, \
   583         OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libawt_headless, \
   580         OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libawt_headless, \
   584         DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   581         DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   585 
   582 
   586     $(BUILD_LIBAWT_HEADLESS): $(BUILD_LIBAWT)
   583     $(BUILD_LIBAWT_HEADLESS): $(BUILD_LIBAWT)
   587 
   584 
   660     WARNINGS_AS_ERRORS_solstudio := false, \
   657     WARNINGS_AS_ERRORS_solstudio := false, \
   661     MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \
   658     MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \
   662     LDFLAGS := $(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \
   659     LDFLAGS := $(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \
   663         $(call SET_SHARED_LIBRARY_ORIGIN), \
   660         $(call SET_SHARED_LIBRARY_ORIGIN), \
   664     LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   661     LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   665     LDFLAGS_SUFFIX := $(BUILD_LIBFONTMANAGER_FONTLIB), \
   662     LDFLAGS_macosx := -undefined dynamic_lookup, \
   666     LDFLAGS_SUFFIX_linux := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \
   663     LIBS := $(BUILD_LIBFONTMANAGER_FONTLIB), \
   667     LDFLAGS_SUFFIX_solaris := -lawt -lawt_headless -lc $(LIBM) $(LIBCXX) -ljava -ljvm, \
   664     LIBS_unix := -lawt -ljava -ljvm $(LIBM) $(LIBCXX), \
   668     LDFLAGS_SUFFIX_aix := -lawt -lawt_headless $(LIBM) $(LIBCXX) -ljava -ljvm,\
   665     LIBS_linux := -lc, \
   669     LDFLAGS_SUFFIX_macosx := -lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \
   666     LIBS_solaris := -lawt_headless -lc, \
   670         -ljava -ljvm, \
   667     LIBS_aix := -lawt_headless,\
   671     LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
   668     LIBS_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
   672         $(WIN_AWT_LIB), \
   669         $(WIN_AWT_LIB), \
   673     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   670     VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   674     RC_FLAGS := $(RC_FLAGS) \
   671     RC_FLAGS := $(RC_FLAGS) \
   675         -D "JDK_FNAME=fontmanager.dll" \
   672         -D "JDK_FNAME=fontmanager.dll" \
   676         -D "JDK_INTERNAL_NAME=fontmanager" \
   673         -D "JDK_INTERNAL_NAME=fontmanager" \
   711       INCLUDE_FILES := $(LIBJAWT_INCLUDE_FILES), \
   708       INCLUDE_FILES := $(LIBJAWT_INCLUDE_FILES), \
   712       OPTIMIZATION := LOW, \
   709       OPTIMIZATION := LOW, \
   713       CFLAGS := $(CXXFLAGS_JDKLIB) \
   710       CFLAGS := $(CXXFLAGS_JDKLIB) \
   714           -EHsc -DUNICODE -D_UNICODE \
   711           -EHsc -DUNICODE -D_UNICODE \
   715           $(LIBJAWT_CFLAGS), \
   712           $(LIBJAWT_CFLAGS), \
   716       LDFLAGS := $(LDFLAGS_JDKLIB) $(KERNEL32_LIB) $(LDFLAGS_CXX_JDK) \
   713       LDFLAGS := $(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK), \
   717           advapi32.lib $(WIN_AWT_LIB), \
   714       LIBS := $(JDKLIB_LIBS) $(KERNEL32_LIB) advapi32.lib $(WIN_AWT_LIB), \
   718       LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \
       
   719       VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   715       VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   720       RC_FLAGS := $(RC_FLAGS) \
   716       RC_FLAGS := $(RC_FLAGS) \
   721           -D "JDK_FNAME=jawt.dll" \
   717           -D "JDK_FNAME=jawt.dll" \
   722           -D "JDK_INTERNAL_NAME=jawt" \
   718           -D "JDK_INTERNAL_NAME=jawt" \
   723           -D "JDK_FTYPE=0x2L", \
   719           -D "JDK_FTYPE=0x2L", \
   774       CFLAGS_macosx := $(LIBJAWT_CFLAGS_macosx), \
   770       CFLAGS_macosx := $(LIBJAWT_CFLAGS_macosx), \
   775       MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjawt/mapfile-vers, \
   771       MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjawt/mapfile-vers, \
   776       LDFLAGS := $(LDFLAGS_JDKLIB) \
   772       LDFLAGS := $(LDFLAGS_JDKLIB) \
   777           $(call SET_SHARED_LIBRARY_ORIGIN), \
   773           $(call SET_SHARED_LIBRARY_ORIGIN), \
   778       LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   774       LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
   779       LDFLAGS_solaris := $(X_LIBS), \
   775       LDFLAGS_macosx := -Xlinker -rpath -Xlinker @loader_path, \
   780       LDFLAGS_SUFFIX_linux := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \
   776       LIBS_unix := $(JAWT_LIBS) $(JDKLIB_LIBS), \
   781       LDFLAGS_SUFFIX_aix := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\
   777       LIBS_solaris := $(X_LIBS) -lXrender, \
   782       LDFLAGS_SUFFIX_solaris := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender, \
   778       LIBS_macosx := -framework Cocoa, \
   783       LDFLAGS_SUFFIX_macosx := -Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \
       
   784           -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX), \
       
   785       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjawt, \
   779       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjawt, \
   786       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   780       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   787 
   781 
   788   ifndef BUILD_HEADLESS_ONLY
   782   ifndef BUILD_HEADLESS_ONLY
   789     $(BUILD_LIBJAWT): $(BUILD_LIBAWT_XAWT)
   783     $(BUILD_LIBJAWT): $(BUILD_LIBAWT_XAWT)
   807       $(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg \
   801       $(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg \
   808       $(JDK_TOPDIR)/src/java.desktop/share/native/libsplashscreen \
   802       $(JDK_TOPDIR)/src/java.desktop/share/native/libsplashscreen \
   809       #
   803       #
   810 
   804 
   811   ifeq ($(USE_EXTERNAL_LIBGIF), true)
   805   ifeq ($(USE_EXTERNAL_LIBGIF), true)
   812     GIFLIB_LDFLAGS := -lgif
   806     GIFLIB_LIBS := -lgif
   813     LIBSPLASHSCREEN_EXCLUDES := giflib
   807     LIBSPLASHSCREEN_EXCLUDES := giflib
   814   else
   808   else
   815     LIBSPLASHSCREEN_CFLAGS += -I$(JDK_TOPDIR)/src/java.desktop/share/native/libsplashscreen/giflib
   809     LIBSPLASHSCREEN_CFLAGS += -I$(JDK_TOPDIR)/src/java.desktop/share/native/libsplashscreen/giflib
   816   endif
   810   endif
   817 
   811 
   818   ifeq ($(USE_EXTERNAL_LIBJPEG), true)
   812   ifeq ($(USE_EXTERNAL_LIBJPEG), true)
   819     LIBJPEG_LDFLAGS := -ljpeg
   813     LIBJPEG_LIBS := -ljpeg
   820   else
   814   else
   821     LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg
   815     LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg
   822     LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg
   816     LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/java.desktop/share/native/libjavajpeg
   823   endif
   817   endif
   824 
   818 
   855     LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
   849     LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
   856   else
   850   else
   857     LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS)
   851     LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS)
   858   endif
   852   endif
   859 
   853 
   860   LIBSPLASHSCREEN_LDFLAGS_SUFFIX :=
   854   LIBSPLASHSCREEN_LIBS :=
   861 
   855 
   862   ifneq ($(USE_EXTERNAL_LIBZ), true)
   856   ifneq ($(USE_EXTERNAL_LIBZ), true)
   863     LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.base/share/native/libzip/zlib-1.2.8
   857     LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.base/share/native/libzip/zlib-1.2.8
   864     LIBSPLASHSCREEN_CFLAGS += $(ZLIB_CPPFLAGS)
   858     LIBSPLASHSCREEN_CFLAGS += $(ZLIB_CPPFLAGS)
   865   endif
   859   endif
   866 
   860 
   867   ifeq ($(OPENJDK_TARGET_OS), macosx)
   861   ifeq ($(OPENJDK_TARGET_OS), macosx)
   868     LIBSPLASHSCREEN_LDFLAGS_SUFFIX += \
   862     LIBSPLASHSCREEN_LDFLAGS := -L$(INSTALL_LIBRARIES_HERE)
   869         -L$(INSTALL_LIBRARIES_HERE) \
   863     LIBSPLASHSCREEN_LIBS += \
   870         $(LIBM) -lpthread -liconv -losxapp \
   864         $(LIBM) -lpthread -liconv -losxapp \
   871         -framework ApplicationServices \
   865         -framework ApplicationServices \
   872         -framework Foundation \
   866         -framework Foundation \
   873         -framework Cocoa \
   867         -framework Cocoa \
   874         -framework JavaNativeFoundation
   868         -framework JavaNativeFoundation
   875   else ifeq ($(OPENJDK_TARGET_OS), windows)
   869   else ifeq ($(OPENJDK_TARGET_OS), windows)
   876     LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib -DELAYLOAD:user32.dll
   870     LIBSPLASHSCREEN_LDFLAGS := -delayload:user32.dll
       
   871     LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib
   877   else
   872   else
   878     LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread
   873     LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread
   879   endif
   874   endif
   880 
   875 
   881   $(eval $(call SetupNativeCompilation,BUILD_LIBSPLASHSCREEN, \
   876   $(eval $(call SetupNativeCompilation,BUILD_LIBSPLASHSCREEN, \
   882       LIBRARY := splashscreen, \
   877       LIBRARY := splashscreen, \
   883       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   878       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   891       DISABLED_WARNINGS_clang := incompatible-pointer-types, \
   886       DISABLED_WARNINGS_clang := incompatible-pointer-types, \
   892       DISABLED_WARNINGS_solstudio := E_NEWLINE_NOT_LAST E_DECLARATION_IN_CODE \
   887       DISABLED_WARNINGS_solstudio := E_NEWLINE_NOT_LAST E_DECLARATION_IN_CODE \
   893           E_STATEMENT_NOT_REACHED, \
   888           E_STATEMENT_NOT_REACHED, \
   894       DISABLED_WARNINGS_microsoft := 4018 4244 4267, \
   889       DISABLED_WARNINGS_microsoft := 4018 4244 4267, \
   895       MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \
   890       MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \
   896       LDFLAGS := $(LDFLAGS_JDKLIB) \
   891       LDFLAGS := $(LIBSPLASHSCREEN_LDFLAGS) $(LDFLAGS_JDKLIB) \
   897           $(call SET_SHARED_LIBRARY_ORIGIN), \
   892           $(call SET_SHARED_LIBRARY_ORIGIN), \
   898       LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) \
   893       LIBS := $(LIBSPLASHSCREEN_LIBS) $(LIBZ) \
   899                         $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS) $(PNG_LIBS), \
   894                         $(GIFLIB_LIBS) $(LIBJPEG_LIBS) $(PNG_LIBS), \
   900       LDFLAGS_SUFFIX_solaris := -lc, \
   895       LIBS_solaris := -lc, \
   901       VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   896       VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
   902       RC_FLAGS := $(RC_FLAGS) \
   897       RC_FLAGS := $(RC_FLAGS) \
   903           -D "JDK_FNAME=splashscreen.dll" \
   898           -D "JDK_FNAME=splashscreen.dll" \
   904           -D "JDK_INTERNAL_NAME=splashscreen" \
   899           -D "JDK_INTERNAL_NAME=splashscreen" \
   905           -D "JDK_FTYPE=0x2L", \
   900           -D "JDK_FTYPE=0x2L", \
   965           deprecated-declarations objc-method-access bitwise-op-parentheses \
   960           deprecated-declarations objc-method-access bitwise-op-parentheses \
   966           incompatible-pointer-types parentheses-equality extra-tokens, \
   961           incompatible-pointer-types parentheses-equality extra-tokens, \
   967       LDFLAGS := $(LDFLAGS_JDKLIB) \
   962       LDFLAGS := $(LDFLAGS_JDKLIB) \
   968           $(call SET_SHARED_LIBRARY_ORIGIN) \
   963           $(call SET_SHARED_LIBRARY_ORIGIN) \
   969           -L$(INSTALL_LIBRARIES_HERE), \
   964           -L$(INSTALL_LIBRARIES_HERE), \
   970       LDFLAGS_SUFFIX_macosx := -lawt -lmlib_image -losxapp -ljvm $(LIBM) \
   965       LIBS := -lawt -lmlib_image -losxapp -ljvm $(LIBM) \
   971           -framework Accelerate \
   966           -framework Accelerate \
   972           -framework ApplicationServices \
   967           -framework ApplicationServices \
   973           -framework AudioToolbox \
   968           -framework AudioToolbox \
   974           -framework Carbon \
   969           -framework Carbon \
   975           -framework Cocoa \
   970           -framework Cocoa \
  1012           -I$(SUPPORT_OUTPUTDIR)/headers/java.desktop,  \
  1007           -I$(SUPPORT_OUTPUTDIR)/headers/java.desktop,  \
  1013       LDFLAGS := $(LDFLAGS_JDKLIB) \
  1008       LDFLAGS := $(LDFLAGS_JDKLIB) \
  1014           $(call SET_SHARED_LIBRARY_ORIGIN) \
  1009           $(call SET_SHARED_LIBRARY_ORIGIN) \
  1015           -Xlinker -rpath -Xlinker @loader_path \
  1010           -Xlinker -rpath -Xlinker @loader_path \
  1016           -L$(INSTALL_LIBRARIES_HERE), \
  1011           -L$(INSTALL_LIBRARIES_HERE), \
  1017       LDFLAGS_SUFFIX_macosx := -lawt -losxapp -lawt_lwawt \
  1012       LIBS := -lawt -losxapp -lawt_lwawt \
  1018           -framework Cocoa \
  1013           -framework Cocoa \
  1019           -framework Carbon \
  1014           -framework Carbon \
  1020           -framework ApplicationServices \
  1015           -framework ApplicationServices \
  1021           -framework JavaNativeFoundation \
  1016           -framework JavaNativeFoundation \
  1022           -framework JavaRuntimeSupport \
  1017           -framework JavaRuntimeSupport \