make/lib/Awt2dLibraries.gmk
branchihse-jdk-library-branch
changeset 56302 1c7ec9412f91
parent 56287 593a452fcbeb
parent 49239 c35ec365e329
child 56310 b74ed86a116a
equal deleted inserted replaced
56301:ceb60eb3139e 56302:1c7ec9412f91
   553 
   553 
   554 endif
   554 endif
   555 
   555 
   556 ################################################################################
   556 ################################################################################
   557 
   557 
       
   558 ifeq ($(FREETYPE_TO_USE), system)
       
   559   LIBFREETYPE_CFLAGS := $(FREETYPE_CFLAGS)
       
   560   LIBFREETYPE_LIBS := $(FREETYPE_LIBS)
       
   561 else
       
   562   LIBFREETYPE_SRC := $(TOPDIR)/src/java.desktop/share/native/libfreetype
       
   563   BUILD_LIBFREETYPE_HEADERS := $(addprefix -I, $(LIBFREETYPE_SRC)/include)
       
   564   LIBFREETYPE_CFLAGS := $(BUILD_LIBFREETYPE_HEADERS)
       
   565   ifeq ($(OPENJDK_TARGET_OS), windows)
       
   566     LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib
       
   567   else
       
   568     LIBFREETYPE_LIBS := -lfreetype
       
   569   endif
       
   570 
       
   571   $(eval $(call SetupJdkLibrary, BUILD_LIBFREETYPE, \
       
   572       NAME := freetype, \
       
   573       SRC := $(LIBFREETYPE_SRC)/src, \
       
   574       OPTIMIZATION := HIGHEST, \
       
   575       CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBFREETYPE_HEADERS) \
       
   576           -DFT2_BUILD_LIBRARY, \
       
   577       DISABLED_WARNINGS_solstudio := \
       
   578          E_STATEMENT_NOT_REACHED \
       
   579          E_END_OF_LOOP_CODE_NOT_REACHED, \
       
   580       DISABLED_WARNINGS_microsoft := 4267 2220 4244, \
       
   581       LDFLAGS := $(LDFLAGS_JDKLIB) \
       
   582           $(call SET_SHARED_LIBRARY_ORIGIN), \
       
   583       LIBS_solaris := -lc, \
       
   584   ))
       
   585 
       
   586   TARGETS += $(BUILD_LIBFREETYPE)
       
   587 endif
       
   588 
       
   589 ###########################################################################
       
   590 
   558 LIBFONTMANAGER_SRC := $(TOPDIR)/src/java.desktop/share/native/libfontmanager \
   591 LIBFONTMANAGER_SRC := $(TOPDIR)/src/java.desktop/share/native/libfontmanager \
   559     $(TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_TYPE)/native/libfontmanager
   592     $(TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_TYPE)/native/libfontmanager
   560 LIBFONTMANAGER_CFLAGS := \
   593 LIBFONTMANAGER_CFLAGS := \
   561     $(addprefix -I, $(shell $(FIND) \
   594     $(addprefix -I, $(shell $(FIND) \
   562       $(LIBFONTMANAGER_SRC) \
   595       $(LIBFONTMANAGER_SRC) \
   593 
   626 
   594 LIBFONTMANAGER_CFLAGS += $(HARFBUZZ_CFLAGS)
   627 LIBFONTMANAGER_CFLAGS += $(HARFBUZZ_CFLAGS)
   595 
   628 
   596 #### End harfbuzz configuration
   629 #### End harfbuzz configuration
   597 
   630 
   598 LIBFONTMANAGER_CFLAGS += $(FREETYPE_CFLAGS)
   631 LIBFONTMANAGER_CFLAGS += $(LIBFREETYPE_CFLAGS)
   599 # This may be overridden in a custom makefile
   632 # This may be overridden in a custom makefile
   600 BUILD_LIBFONTMANAGER_MAPFILE ?= $(TOPDIR)/make/mapfiles/libfontmanager/mapfile-vers
   633 BUILD_LIBFONTMANAGER_MAPFILE ?= $(TOPDIR)/make/mapfiles/libfontmanager/mapfile-vers
   601 BUILD_LIBFONTMANAGER_FONTLIB += $(FREETYPE_LIBS)
   634 BUILD_LIBFONTMANAGER_FONTLIB += $(LIBFREETYPE_LIBS)
   602 
   635 
   603 LIBFONTMANAGER_OPTIMIZATION := HIGH
   636 LIBFONTMANAGER_OPTIMIZATION := HIGH
   604 
   637 
   605 ifeq ($(OPENJDK_TARGET_OS), windows)
   638 ifeq ($(OPENJDK_TARGET_OS), windows)
   606   LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
   639   LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
   627   BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing
   660   BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing
   628 endif
   661 endif
   629 
   662 
   630 $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
   663 $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
   631     NAME := fontmanager, \
   664     NAME := fontmanager, \
   632     OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfontmanager, \
       
   633     SRC := $(LIBFONTMANAGER_SRC), \
   665     SRC := $(LIBFONTMANAGER_SRC), \
   634     EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
   666     EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
   635         AccelGlyphCache.c, \
   667         AccelGlyphCache.c, \
   636     TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
   668     TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
   637     CFLAGS := $(CFLAGS_JDKLIB) $(LIBFONTMANAGER_CFLAGS), \
   669     CFLAGS := $(CFLAGS_JDKLIB) $(LIBFONTMANAGER_CFLAGS), \
   665     LIBS_aix := -lawt_headless,\
   697     LIBS_aix := -lawt_headless,\
   666     LIBS_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
   698     LIBS_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
   667         $(WIN_AWT_LIB), \
   699         $(WIN_AWT_LIB), \
   668 ))
   700 ))
   669 
   701 
   670 $(INSTALL_LIBRARIES_HERE)/$(call SHARED_LIBRARY,fontmanager): $(BUILD_LIBFONTMANAGER_TARGET)
       
   671 	$(install-file)
       
   672         ifneq ($(FREETYPE_BUNDLE_LIB_PATH), )
       
   673           ifeq ($(OPENJDK_TARGET_OS), macosx)
       
   674             # If bundling freetype on macosx, we need to rewrite the rpath location
       
   675             # in the libfontmanager library to point to the bundled location
       
   676 	    $(INSTALL_NAME_TOOL) -change \
       
   677 	        `$(OTOOL) -D $(FREETYPE_BUNDLE_LIB_PATH)/$(call SHARED_LIBRARY,freetype) | $(TAIL) -n1` \
       
   678 	        '@rpath/$(call SHARED_LIBRARY,freetype)' \
       
   679 	        $@
       
   680           endif
       
   681         endif
       
   682 
       
   683 BUILD_LIBFONTMANAGER += $(INSTALL_LIBRARIES_HERE)/$(call SHARED_LIBRARY,fontmanager)
       
   684 
       
   685 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT)
   702 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT)
   686 
   703 
   687 ifneq (, $(findstring $(OPENJDK_TARGET_OS), solaris aix))
   704 ifneq (, $(findstring $(OPENJDK_TARGET_OS), solaris aix))
   688   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_HEADLESS)
   705   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_HEADLESS)
       
   706 endif
       
   707 
       
   708 ifeq ($(FREETYPE_TO_USE), bundled)
       
   709   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBFREETYPE)
   689 endif
   710 endif
   690 
   711 
   691 TARGETS += $(BUILD_LIBFONTMANAGER)
   712 TARGETS += $(BUILD_LIBFONTMANAGER)
   692 
   713 
   693 ################################################################################
   714 ################################################################################
   874       endif
   895       endif
   875     endif
   896     endif
   876   endif
   897   endif
   877 
   898 
   878   ifeq ($(OPENJDK_TARGET_OS), macosx)
   899   ifeq ($(OPENJDK_TARGET_OS), macosx)
   879     LIBSPLASHSCREEN_LDFLAGS := -L$(INSTALL_LIBRARIES_HERE)
       
   880     LIBSPLASHSCREEN_LIBS += \
   900     LIBSPLASHSCREEN_LIBS += \
   881         $(LIBM) -lpthread -liconv -losxapp \
   901         $(LIBM) -lpthread -liconv -losxapp \
   882         -framework ApplicationServices \
   902         -framework ApplicationServices \
   883         -framework Foundation \
   903         -framework Foundation \
   884         -framework Cocoa \
   904         -framework Cocoa \
   885         -framework JavaNativeFoundation
   905         -framework JavaNativeFoundation
   886   else ifeq ($(OPENJDK_TARGET_OS), windows)
   906   else ifeq ($(OPENJDK_TARGET_OS), windows)
   887     LIBSPLASHSCREEN_LDFLAGS := -delayload:user32.dll
       
   888     LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib
   907     LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib
   889   else
   908   else
   890     LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl
   909     LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl
   891   endif
   910   endif
   892 
   911 
   903       DISABLED_WARNINGS_clang := incompatible-pointer-types, \
   922       DISABLED_WARNINGS_clang := incompatible-pointer-types, \
   904       DISABLED_WARNINGS_solstudio := E_NEWLINE_NOT_LAST E_DECLARATION_IN_CODE \
   923       DISABLED_WARNINGS_solstudio := E_NEWLINE_NOT_LAST E_DECLARATION_IN_CODE \
   905           E_STATEMENT_NOT_REACHED, \
   924           E_STATEMENT_NOT_REACHED, \
   906       DISABLED_WARNINGS_microsoft := 4018 4244 4267, \
   925       DISABLED_WARNINGS_microsoft := 4018 4244 4267, \
   907       MAPFILE := $(TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \
   926       MAPFILE := $(TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \
   908       LDFLAGS := $(LIBSPLASHSCREEN_LDFLAGS) $(LDFLAGS_JDKLIB) \
   927       LDFLAGS := $(LDFLAGS_JDKLIB) \
   909           $(call SET_SHARED_LIBRARY_ORIGIN), \
   928           $(call SET_SHARED_LIBRARY_ORIGIN), \
       
   929       LDFLAGS_macosx := -L$(INSTALL_LIBRARIES_HERE), \
       
   930       LDFLAGS_windows := -delayload:user32.dll, \
   910       LIBS := $(JDKLIB_LIBS) $(LIBSPLASHSCREEN_LIBS) $(LIBZ_LIBS) \
   931       LIBS := $(JDKLIB_LIBS) $(LIBSPLASHSCREEN_LIBS) $(LIBZ_LIBS) \
   911           $(GIFLIB_LIBS) $(LIBJPEG_LIBS) $(PNG_LIBS), \
   932           $(GIFLIB_LIBS) $(LIBJPEG_LIBS) $(PNG_LIBS), \
   912       LIBS_aix := -liconv, \
   933       LIBS_aix := -liconv, \
   913   ))
   934   ))
   914 
   935