make/lib/Awt2dLibraries.gmk
changeset 49070 d7859531621b
parent 48766 2c4d1993b5f9
child 49106 d3185e98c411
equal deleted inserted replaced
49069:e37b804ae0b1 49070:d7859531621b
     1 #
     1 #
     2 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
     2 # Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4 #
     4 #
     5 # This code is free software; you can redistribute it and/or modify it
     5 # This code is free software; you can redistribute it and/or modify it
     6 # under the terms of the GNU General Public License version 2 only, as
     6 # under the terms of the GNU General Public License version 2 only, as
     7 # published by the Free Software Foundation.  Oracle designates this
     7 # published by the Free Software Foundation.  Oracle designates this
    46 
    46 
    47 ifneq ($(OPENJDK_TARGET_OS), windows)
    47 ifneq ($(OPENJDK_TARGET_OS), windows)
    48   BUILD_LIBMLIB_LDLIBS += $(LIBM) $(LIBDL)
    48   BUILD_LIBMLIB_LDLIBS += $(LIBM) $(LIBDL)
    49 endif
    49 endif
    50 
    50 
    51 $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE, \
    51 $(eval $(call SetupNativeCompilation, BUILD_LIBMLIB_IMAGE, \
    52     LIBRARY := mlib_image, \
    52     NAME := mlib_image, \
    53     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
    53     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
    54     SRC := $(BUILD_LIBMLIB_SRC), \
    54     SRC := $(BUILD_LIBMLIB_SRC), \
    55     EXCLUDE_FILES := mlib_c_ImageBlendTable.c, \
    55     EXCLUDE_FILES := mlib_c_ImageBlendTable.c, \
    56     OPTIMIZATION := HIGHEST, \
    56     OPTIMIZATION := HIGHEST, \
    57     CFLAGS := $(CFLAGS_JDKLIB) \
    57     CFLAGS := $(CFLAGS_JDKLIB) \
   105       mlib_c_ImageLookUp_f.c \
   105       mlib_c_ImageLookUp_f.c \
   106       #
   106       #
   107 
   107 
   108   LIBMLIB_IMAGE_V_CFLAGS += $(filter-out -DMLIB_NO_LIBSUNMATH, $(BUILD_LIBMLIB_CFLAGS))
   108   LIBMLIB_IMAGE_V_CFLAGS += $(filter-out -DMLIB_NO_LIBSUNMATH, $(BUILD_LIBMLIB_CFLAGS))
   109 
   109 
   110   $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE_V, \
   110   $(eval $(call SetupNativeCompilation, BUILD_LIBMLIB_IMAGE_V, \
   111       LIBRARY := mlib_image_v, \
   111       NAME := mlib_image_v, \
   112       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   112       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   113       SRC := $(LIBMLIB_IMAGE_V_SRC), \
   113       SRC := $(LIBMLIB_IMAGE_V_SRC), \
   114       EXCLUDE_FILES := $(BUILD_LIBMLIB_IMAGE_V_EXFILES), \
   114       EXCLUDE_FILES := $(BUILD_LIBMLIB_IMAGE_V_EXFILES), \
   115       OPTIMIZATION := HIGHEST, \
   115       OPTIMIZATION := HIGHEST, \
   116       CFLAGS := -xarch=sparcvis \
   116       CFLAGS := -xarch=sparcvis \
   224   BUILD_LIBAWT_debug_mem.c_CFLAGS := -w
   224   BUILD_LIBAWT_debug_mem.c_CFLAGS := -w
   225   # This option improves performance of MaskFill in Java2D by 20% for some gcc
   225   # This option improves performance of MaskFill in Java2D by 20% for some gcc
   226   LIBAWT_CFLAGS += -fgcse-after-reload
   226   LIBAWT_CFLAGS += -fgcse-after-reload
   227 endif
   227 endif
   228 
   228 
   229 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT, \
   229 $(eval $(call SetupNativeCompilation, BUILD_LIBAWT, \
   230     LIBRARY := awt, \
   230     NAME := awt, \
   231     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   231     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   232     SRC := $(LIBAWT_DIRS), \
   232     SRC := $(LIBAWT_DIRS), \
   233     EXCLUDES := $(LIBAWT_EXCLUDES), \
   233     EXCLUDES := $(LIBAWT_EXCLUDES), \
   234     EXCLUDE_FILES := $(LIBAWT_EXFILES), \
   234     EXCLUDE_FILES := $(LIBAWT_EXFILES), \
   235     OPTIMIZATION := LOW, \
   235     OPTIMIZATION := LOW, \
   345       BUILD_LIBAWT_XAWT_awt_Font.c_CFLAGS := -w
   345       BUILD_LIBAWT_XAWT_awt_Font.c_CFLAGS := -w
   346       # initializing a declared 'extern'
   346       # initializing a declared 'extern'
   347       BUILD_LIBAWT_XAWT_debug_mem.c_CFLAGS := -w
   347       BUILD_LIBAWT_XAWT_debug_mem.c_CFLAGS := -w
   348    endif
   348    endif
   349 
   349 
   350     $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT, \
   350     $(eval $(call SetupNativeCompilation, BUILD_LIBAWT_XAWT, \
   351         LIBRARY := awt_xawt, \
   351         NAME := awt_xawt, \
   352         OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   352         OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   353         SRC := $(LIBAWT_XAWT_DIRS), \
   353         SRC := $(LIBAWT_XAWT_DIRS), \
   354         EXCLUDES := $(LIBAWT_XAWT_EXCLUDES), \
   354         EXCLUDES := $(LIBAWT_XAWT_EXCLUDES), \
   355         OPTIMIZATION := LOW, \
   355         OPTIMIZATION := LOW, \
   356         CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_XAWT_CFLAGS) \
   356         CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_XAWT_CFLAGS) \
   404   # If we're using the bundled library, we'll need to include it in the
   404   # If we're using the bundled library, we'll need to include it in the
   405   # include path explicitly. Otherwise the system headers will be used.
   405   # include path explicitly. Otherwise the system headers will be used.
   406   LIBLCMS_CPPFLAGS += $(addprefix -I, $(LIBLCMS_SRC))
   406   LIBLCMS_CPPFLAGS += $(addprefix -I, $(LIBLCMS_SRC))
   407 endif
   407 endif
   408 
   408 
   409 $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \
   409 $(eval $(call SetupNativeCompilation, BUILD_LIBLCMS, \
   410     LIBRARY := lcms, \
   410     NAME := lcms, \
   411     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   411     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   412     SRC := $(LIBLCMS_SRC), \
   412     SRC := $(LIBLCMS_SRC), \
   413     INCLUDE_FILES := $(BUILD_LIBLCMS_INCLUDE_FILES), \
   413     INCLUDE_FILES := $(BUILD_LIBLCMS_INCLUDE_FILES), \
   414     OPTIMIZATION := HIGHEST, \
   414     OPTIMIZATION := HIGHEST, \
   415     CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \
   415     CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \
   481   LIBJPEG_LIBS :=
   481   LIBJPEG_LIBS :=
   482   BUILD_LIBJAVAJPEG_INCLUDE_FILES :=
   482   BUILD_LIBJAVAJPEG_INCLUDE_FILES :=
   483   BUILD_LIBJAVAJPEG_HEADERS := $(addprefix -I, $(LIBJAVAJPEG_SRC))
   483   BUILD_LIBJAVAJPEG_HEADERS := $(addprefix -I, $(LIBJAVAJPEG_SRC))
   484 endif
   484 endif
   485 
   485 
   486 $(eval $(call SetupNativeCompilation,BUILD_LIBJAVAJPEG, \
   486 $(eval $(call SetupNativeCompilation, BUILD_LIBJAVAJPEG, \
   487     LIBRARY := javajpeg, \
   487     NAME := javajpeg, \
   488     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   488     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   489     SRC := $(LIBJAVAJPEG_SRC), \
   489     SRC := $(LIBJAVAJPEG_SRC), \
   490     INCLUDE_FILES := $(BUILD_LIBJAVAJPEG_INCLUDE_FILES), \
   490     INCLUDE_FILES := $(BUILD_LIBJAVAJPEG_INCLUDE_FILES), \
   491     OPTIMIZATION := HIGHEST, \
   491     OPTIMIZATION := HIGHEST, \
   492     CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBJAVAJPEG_HEADERS) \
   492     CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBJAVAJPEG_HEADERS) \
   545     ifneq ($(OPENJDK_TARGET_CPU), x86_64)
   545     ifneq ($(OPENJDK_TARGET_CPU), x86_64)
   546       LIBAWT_HEADLESS_REORDER := $(TOPDIR)/make/mapfiles/libawt_headless/reorder-$(OPENJDK_TARGET_CPU)
   546       LIBAWT_HEADLESS_REORDER := $(TOPDIR)/make/mapfiles/libawt_headless/reorder-$(OPENJDK_TARGET_CPU)
   547     endif
   547     endif
   548   endif
   548   endif
   549 
   549 
   550   $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS, \
   550   $(eval $(call SetupNativeCompilation, BUILD_LIBAWT_HEADLESS, \
   551       LIBRARY := awt_headless, \
   551       NAME := awt_headless, \
   552       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   552       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   553       SRC := $(LIBAWT_HEADLESS_DIRS), \
   553       SRC := $(LIBAWT_HEADLESS_DIRS), \
   554       EXCLUDES := $(LIBAWT_HEADLESS_EXCLUDES), \
   554       EXCLUDES := $(LIBAWT_HEADLESS_EXCLUDES), \
   555       OPTIMIZATION := LOW, \
   555       OPTIMIZATION := LOW, \
   556       CFLAGS := $(CFLAGS_JDKLIB) \
   556       CFLAGS := $(CFLAGS_JDKLIB) \
   655   BUILD_LIBFONTMANAGER_sunFont.c_CFLAGS := -w
   655   BUILD_LIBFONTMANAGER_sunFont.c_CFLAGS := -w
   656   # Turn off aliasing with GCC for ExtensionSubtables.cpp
   656   # Turn off aliasing with GCC for ExtensionSubtables.cpp
   657   BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing
   657   BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing
   658 endif
   658 endif
   659 
   659 
   660 $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \
   660 $(eval $(call SetupNativeCompilation, BUILD_LIBFONTMANAGER, \
   661     LIBRARY := fontmanager, \
   661     NAME := fontmanager, \
   662     OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfontmanager, \
   662     OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfontmanager, \
   663     SRC := $(LIBFONTMANAGER_SRC), \
   663     SRC := $(LIBFONTMANAGER_SRC), \
   664     EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
   664     EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
   665         AccelGlyphCache.c, \
   665         AccelGlyphCache.c, \
   666     TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
   666     TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
   742       #
   742       #
   743 
   743 
   744   ifeq ($(OPENJDK_TARGET_CPU), x86)
   744   ifeq ($(OPENJDK_TARGET_CPU), x86)
   745     KERNEL32_LIB := kernel32.lib
   745     KERNEL32_LIB := kernel32.lib
   746   endif
   746   endif
   747   $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT, \
   747   $(eval $(call SetupNativeCompilation, BUILD_LIBJAWT, \
   748       LIBRARY := jawt, \
   748       NAME := jawt, \
   749       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   749       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   750       SRC := $(LIBJAWT_SRC), \
   750       SRC := $(LIBJAWT_SRC), \
   751       INCLUDE_FILES := $(LIBJAWT_INCLUDE_FILES), \
   751       INCLUDE_FILES := $(LIBJAWT_INCLUDE_FILES), \
   752       OPTIMIZATION := LOW, \
   752       OPTIMIZATION := LOW, \
   753       CFLAGS := $(CXXFLAGS_JDKLIB) \
   753       CFLAGS := $(CXXFLAGS_JDKLIB) \
   802       JAWT_LIBS += -lawt_headless
   802       JAWT_LIBS += -lawt_headless
   803       HEADLESS_CFLAG += -DHEADLESS
   803       HEADLESS_CFLAG += -DHEADLESS
   804     endif
   804     endif
   805   endif
   805   endif
   806 
   806 
   807   $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT, \
   807   $(eval $(call SetupNativeCompilation, BUILD_LIBJAWT, \
   808       LIBRARY := jawt, \
   808       NAME := jawt, \
   809       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   809       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   810       SRC := $(LIBJAWT_SRC), \
   810       SRC := $(LIBJAWT_SRC), \
   811       INCLUDE_FILES := $(JAWT_FILES), \
   811       INCLUDE_FILES := $(JAWT_FILES), \
   812       OPTIMIZATION := LOW, \
   812       OPTIMIZATION := LOW, \
   813       CFLAGS := $(CFLAGS_JDKLIB) \
   813       CFLAGS := $(CFLAGS_JDKLIB) \
   933     LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib
   933     LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib
   934   else
   934   else
   935     LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl
   935     LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl
   936   endif
   936   endif
   937 
   937 
   938   $(eval $(call SetupNativeCompilation,BUILD_LIBSPLASHSCREEN, \
   938   $(eval $(call SetupNativeCompilation, BUILD_LIBSPLASHSCREEN, \
   939       LIBRARY := splashscreen, \
   939       NAME := splashscreen, \
   940       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   940       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
   941       SRC := $(LIBSPLASHSCREEN_DIRS), \
   941       SRC := $(LIBSPLASHSCREEN_DIRS), \
   942       EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \
   942       EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \
   943       EXCLUDES := $(LIBSPLASHSCREEN_EXCLUDES), \
   943       EXCLUDES := $(LIBSPLASHSCREEN_EXCLUDES), \
   944       OPTIMIZATION := LOW, \
   944       OPTIMIZATION := LOW, \
  1006       #
  1006       #
  1007 
  1007 
  1008   LIBAWT_LWAWT_EXFILES := fontpath.c awt_Font.c X11Color.c
  1008   LIBAWT_LWAWT_EXFILES := fontpath.c awt_Font.c X11Color.c
  1009   LIBAWT_LWAWT_EXCLUDES := $(TOPDIR)/src/java.desktop/unix/native/common/awt/medialib
  1009   LIBAWT_LWAWT_EXCLUDES := $(TOPDIR)/src/java.desktop/unix/native/common/awt/medialib
  1010 
  1010 
  1011   $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_LWAWT, \
  1011   $(eval $(call SetupNativeCompilation, BUILD_LIBAWT_LWAWT, \
  1012       LIBRARY := awt_lwawt, \
  1012       NAME := awt_lwawt, \
  1013       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
  1013       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
  1014       SRC := $(LIBAWT_LWAWT_DIRS), \
  1014       SRC := $(LIBAWT_LWAWT_DIRS), \
  1015       INCLUDE_FILES := $(LIBAWT_LWAWT_FILES), \
  1015       INCLUDE_FILES := $(LIBAWT_LWAWT_FILES), \
  1016       EXCLUDE_FILES := $(LIBAWT_LWAWT_EXFILES), \
  1016       EXCLUDE_FILES := $(LIBAWT_LWAWT_EXFILES), \
  1017       EXCLUDES := $(LIBAWT_LWAWT_EXCLUDES), \
  1017       EXCLUDES := $(LIBAWT_LWAWT_EXCLUDES), \
  1055 
  1055 
  1056 ################################################################################
  1056 ################################################################################
  1057 
  1057 
  1058 ifeq ($(OPENJDK_TARGET_OS), macosx)
  1058 ifeq ($(OPENJDK_TARGET_OS), macosx)
  1059 
  1059 
  1060   $(eval $(call SetupNativeCompilation,BUILD_LIBOSXUI, \
  1060   $(eval $(call SetupNativeCompilation, BUILD_LIBOSXUI, \
  1061       LIBRARY := osxui, \
  1061       NAME := osxui, \
  1062       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
  1062       OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
  1063       SRC := $(TOPDIR)/src/java.desktop/macosx/native/libosxui, \
  1063       SRC := $(TOPDIR)/src/java.desktop/macosx/native/libosxui, \
  1064       OPTIMIZATION := LOW, \
  1064       OPTIMIZATION := LOW, \
  1065       CFLAGS := $(CFLAGS_JDKLIB) \
  1065       CFLAGS := $(CFLAGS_JDKLIB) \
  1066           -I$(TOPDIR)/src/java.desktop/macosx/native/libosxui \
  1066           -I$(TOPDIR)/src/java.desktop/macosx/native/libosxui \