make/lib/Awt2dLibraries.gmk
branchihse-jdk-library-branch
changeset 56521 7bc4639175fe
parent 56520 e9a717e79a59
child 56522 76b0a9b8f417
equal deleted inserted replaced
56520:e9a717e79a59 56521:7bc4639175fe
    47   BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT
    47   BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT
    48 endif
    48 endif
    49 
    49 
    50 $(eval $(call SetupJdkLibrary, BUILD_LIBMLIB_IMAGE, \
    50 $(eval $(call SetupJdkLibrary, BUILD_LIBMLIB_IMAGE, \
    51     NAME := mlib_image, \
    51     NAME := mlib_image, \
    52     EXTRA_SRC := $(call FindSrcDirsForComponent, $(MODULE), common/awt/medialib), \
    52     EXTRA_SRC := common/awt/medialib, \
    53     EXCLUDE_FILES := mlib_c_ImageBlendTable.c, \
    53     EXCLUDE_FILES := mlib_c_ImageBlendTable.c, \
    54     EXCLUDE_SRC_PATTERNS := $(BUILD_LIBMLIB_EXCLUDE_SRC_PATTERNS), \
    54     EXCLUDE_SRC_PATTERNS := $(BUILD_LIBMLIB_EXCLUDE_SRC_PATTERNS), \
    55     OPTIMIZATION := HIGHEST, \
    55     OPTIMIZATION := HIGHEST, \
    56     CFLAGS := $(CFLAGS_JDKLIB) \
    56     CFLAGS := $(CFLAGS_JDKLIB) \
    57         $(BUILD_LIBMLIB_CFLAGS), \
    57         $(BUILD_LIBMLIB_CFLAGS), \
    67 
    67 
    68 ################################################################################
    68 ################################################################################
    69 
    69 
    70 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
    70 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
    71 
    71 
       
    72   # libmlib_image_v is basically built from mlib_image sources, with some additions
       
    73   # and some exclusions.
    72   LIBMLIB_IMAGE_V_SRC := \
    74   LIBMLIB_IMAGE_V_SRC := \
    73     $(call FindSrcDirsForComponent, $(MODULE), libmlib_image) \
    75      libmlib_image \
    74     $(call FindSrcDirsForComponent, $(MODULE), common/awt/medialib) \
    76      common/awt/medialib \
    75     #
    77     #
    76 
    78 
    77   LIBMLIB_IMAGE_V_CFLAGS := -xarch=sparcvis -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \
    79   LIBMLIB_IMAGE_V_CFLAGS := -xarch=sparcvis -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \
    78       $(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il
    80       $(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il
    79 
    81 
   119 endif
   121 endif
   120 
   122 
   121 ################################################################################
   123 ################################################################################
   122 
   124 
   123 LIBAWT_EXTRA_SRC := \
   125 LIBAWT_EXTRA_SRC := \
   124     $(TOPDIR)/src/$(MODULE)/share/native/common/awt/debug \
   126     common/awt/debug \
   125     $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
   127     $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
   126     #
   128     #
   127 
   129 
   128 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
   130 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
   129   LIBAWT_EXTRA_SRC += $(TOPDIR)/src/$(MODULE)/share/native/common/awt/medialib
   131   LIBAWT_EXTRA_SRC += $(TOPDIR)/src/$(MODULE)/share/native/common/awt/medialib
   270 
   272 
   271 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx), )
   273 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx), )
   272   ifeq ($(ENABLE_HEADLESS_ONLY), false)
   274   ifeq ($(ENABLE_HEADLESS_ONLY), false)
   273 
   275 
   274     LIBAWT_XAWT_EXTRA_SRC := \
   276     LIBAWT_XAWT_EXTRA_SRC := \
   275         $(call FindSrcDirsForComponent, $(MODULE), common/awt) \
   277         common/awt \
   276         $(call FindSrcDirsForComponent, $(MODULE), common/java2d) \
   278         common/java2d \
   277         $(TOPDIR)/src/$(MODULE)/share/native/common/font \
   279         common/font \
   278         #
   280         #
   279 
   281 
   280     LIBAWT_XAWT_EXCLUDES := medialib
   282     LIBAWT_XAWT_EXCLUDES := medialib
   281 
   283 
   282     LIBAWT_XAWT_CFLAGS += -DXAWT -DXAWT_HACK \
   284     LIBAWT_XAWT_CFLAGS += -DXAWT -DXAWT_HACK \
   441 
   443 
   442 # Mac and Windows only use the native AWT lib, do not build libawt_headless
   444 # Mac and Windows only use the native AWT lib, do not build libawt_headless
   443 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx),)
   445 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx),)
   444 
   446 
   445   LIBAWT_HEADLESS_EXTRA_SRC := \
   447   LIBAWT_HEADLESS_EXTRA_SRC := \
   446       $(call FindSrcDirsForComponent, $(MODULE), common/java2d) \
   448       common/font \
       
   449       common/java2d \
   447       $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
   450       $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
   448       $(TOPDIR)/src/$(MODULE)/share/native/common/font \
       
   449       #
   451       #
   450 
   452 
   451   LIBAWT_HEADLESS_EXCLUDES := medialib
   453   LIBAWT_HEADLESS_EXCLUDES := medialib
   452   LIBAWT_HEADLESS_CFLAGS := $(CUPS_CFLAGS) $(FONTCONFIG_CFLAGS) $(X_CFLAGS) \
   454   LIBAWT_HEADLESS_CFLAGS := $(CUPS_CFLAGS) $(FONTCONFIG_CFLAGS) $(X_CFLAGS) \
   453       -DHEADLESS=true -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
   455       -DHEADLESS=true -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
   752 
   754 
   753 ################################################################################
   755 ################################################################################
   754 
   756 
   755 ifeq ($(ENABLE_HEADLESS_ONLY), false)
   757 ifeq ($(ENABLE_HEADLESS_ONLY), false)
   756 
   758 
   757   LIBSPLASHSCREEN_DIRS := \
   759   LIBSPLASHSCREEN_EXTRA_SRC := \
   758       $(TOPDIR)/src/$(MODULE)/share/native/libjavajpeg \
   760       common/awt/systemscale \
   759       $(TOPDIR)/src/$(MODULE)/share/native/libsplashscreen \
       
   760       #
   761       #
   761 
   762 
   762   ifeq ($(USE_EXTERNAL_LIBGIF), true)
   763   ifeq ($(USE_EXTERNAL_LIBGIF), false)
       
   764     LIBSPLASHSCREEN_HEADER_DIRS += libsplashscreen/giflib
       
   765   else
       
   766     LIBSPLASHSCREEN_EXCLUDES := giflib
   763     GIFLIB_LIBS := -lgif
   767     GIFLIB_LIBS := -lgif
   764     LIBSPLASHSCREEN_EXCLUDES := giflib
   768   endif
       
   769 
       
   770   ifeq ($(USE_EXTERNAL_LIBJPEG), false)
       
   771     LIBSPLASHSCREEN_EXTRA_SRC += libjavajpeg
   765   else
   772   else
   766     LIBSPLASHSCREEN_HEADER_DIRS += $(TOPDIR)/src/$(MODULE)/share/native/libsplashscreen/giflib
       
   767   endif
       
   768 
       
   769   ifeq ($(USE_EXTERNAL_LIBJPEG), true)
       
   770     LIBJPEG_LIBS := -ljpeg
   773     LIBJPEG_LIBS := -ljpeg
   771   else
       
   772     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/share/native/libjavajpeg
       
   773     LIBSPLASHSCREEN_HEADER_DIRS += $(TOPDIR)/src/$(MODULE)/share/native/libjavajpeg
       
   774   endif
   774   endif
   775 
   775 
   776   ifeq ($(USE_EXTERNAL_LIBPNG), false)
   776   ifeq ($(USE_EXTERNAL_LIBPNG), false)
   777     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/share/native/libsplashscreen/libpng
   777     LIBSPLASHSCREEN_HEADER_DIRS += libsplashscreen/libpng
   778   else
   778   else
   779     LIBSPLASHSCREEN_EXCLUDES += libpng
   779     LIBSPLASHSCREEN_EXCLUDES += libpng
   780   endif
   780   endif
   781 
   781 
   782   ifneq ($(OPENJDK_TARGET_OS), macosx)
   782   ifeq ($(USE_EXTERNAL_LIBZ), false)
   783     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/libsplashscreen
   783     LIBSPLASHSCREEN_EXTRA_SRC += java.base:libzip/zlib
   784   else
   784   endif
   785     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/macosx/native/libsplashscreen
   785 
   786   endif
   786   ifeq ($(OPENJDK_TARGET_OS), macosx)
   787 
   787     # libsplashscreen on macosx do not use the unix code
   788   ifneq ($(filter $(OPENJDK_TARGET_OS),linux solaris aix), )
   788     LIBSPLASHSCREEN_EXCLUDE_SRC_PATTERNS := unix
   789     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/unix/native/common/awt/systemscale
   789   endif
   790   endif
   790 
   791 
       
   792   ifeq ($(OPENJDK_TARGET_OS), windows)
       
   793     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/$(MODULE)/windows/native/common/awt/systemscale
       
   794   endif
       
   795   LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0
   791   LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0
   796 
   792 
   797   ifeq ($(OPENJDK_TARGET_OS), macosx)
   793   ifeq ($(OPENJDK_TARGET_OS), macosx)
   798     LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX
   794     LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX
   799 
   795 
   809     LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
   805     LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
   810   else
   806   else
   811     LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS)
   807     LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS)
   812   endif
   808   endif
   813 
   809 
   814   LIBSPLASHSCREEN_LIBS :=
   810   ifeq ($(USE_EXTERNAL_LIBZ), true)
   815 
       
   816   ifeq ($(USE_EXTERNAL_LIBZ), false)
       
   817     LIBSPLASHSCREEN_DIRS += $(TOPDIR)/src/java.base/share/native/libzip/zlib
       
   818   else
       
   819     ifeq ($(OPENJDK_TARGET_OS), macosx)
   811     ifeq ($(OPENJDK_TARGET_OS), macosx)
   820       ifeq ($(USE_EXTERNAL_LIBPNG), false)
   812       ifeq ($(USE_EXTERNAL_LIBPNG), false)
   821         # When building our own libpng and using an external libz, we need to
   813         # When building our own libpng and using an external libz, we need to
   822         # inject our own libz.h to tweak the exported ZLIB_VERNUM macro. See
   814         # inject our own libz.h to tweak the exported ZLIB_VERNUM macro. See
   823         # $(TOPDIR)/src/java.desktop/macosx/native/libsplashscreen/libpng/zlib.h
   815         # $(TOPDIR)/src/java.desktop/macosx/native/libsplashscreen/libpng/zlib.h
   824         # for details.
   816         # for details.
   825         LIBSPLASHSCREEN_CFLAGS += -iquote $(TOPDIR)/src/$(MODULE)/macosx/native/libsplashscreen/libpng
   817         LIBSPLASHSCREEN_CFLAGS += -iquote $(TOPDIR)/src/$(MODULE)/macosx/native/libsplashscreen/libpng
   826       endif
   818       endif
   827     endif
   819     endif
   828   endif
   820   endif
       
   821 
       
   822   LIBSPLASHSCREEN_LIBS :=
   829 
   823 
   830   ifeq ($(OPENJDK_TARGET_OS), macosx)
   824   ifeq ($(OPENJDK_TARGET_OS), macosx)
   831     LIBSPLASHSCREEN_LIBS += \
   825     LIBSPLASHSCREEN_LIBS += \
   832         $(LIBM) -lpthread -liconv -losxapp \
   826         $(LIBM) -lpthread -liconv -losxapp \
   833         -framework ApplicationServices \
   827         -framework ApplicationServices \
   846       java.base:libjava \
   840       java.base:libjava \
   847   #
   841   #
   848 
   842 
   849   $(eval $(call SetupJdkLibrary, BUILD_LIBSPLASHSCREEN, \
   843   $(eval $(call SetupJdkLibrary, BUILD_LIBSPLASHSCREEN, \
   850       NAME := splashscreen, \
   844       NAME := splashscreen, \
   851       SRC := $(LIBSPLASHSCREEN_DIRS), \
   845       EXTRA_SRC := $(LIBSPLASHSCREEN_EXTRA_SRC), \
       
   846       EXCLUDE_SRC_PATTERNS := $(LIBSPLASHSCREEN_EXCLUDE_SRC_PATTERNS), \
   852       EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \
   847       EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \
   853       EXCLUDES := $(LIBSPLASHSCREEN_EXCLUDES), \
   848       EXCLUDES := $(LIBSPLASHSCREEN_EXCLUDES), \
   854       OPTIMIZATION := LOW, \
   849       OPTIMIZATION := LOW, \
   855       CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \
   850       CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \
   856           $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS) $(PNG_CFLAGS) $(LIBZ_CFLAGS), \
   851           $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS) $(PNG_CFLAGS) $(LIBZ_CFLAGS), \