< prev index next >
make/lib/Awt2dLibraries.gmk
Print this page
@@ -583,10 +583,50 @@
endif
################################################################################
+ifeq ($(FREETYPE_TO_USE), system)
+ LIBFREETYPE_CFLAGS := $(FREETYPE_CFLAGS)
+ LIBFREETYPE_LIBS := $(FREETYPE_LIBS)
+else
+ LIBFREETYPE_SRC := $(TOPDIR)/src/java.desktop/share/native/libfreetype
+ BUILD_LIBFREETYPE_HEADERS := $(addprefix -I, $(LIBFREETYPE_SRC)/include)
+ LIBFREETYPE_CFLAGS := $(BUILD_LIBFREETYPE_HEADERS)
+ ifeq ($(OPENJDK_TARGET_OS), windows)
+ LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib
+ else
+ LIBFREETYPE_LIBS := -lfreetype
+ endif
+
+ $(eval $(call SetupNativeCompilation, BUILD_LIBFREETYPE, \
+ NAME := freetype, \
+ OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
+ SRC := $(LIBFREETYPE_SRC)/src, \
+ OPTIMIZATION := HIGHEST, \
+ CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBFREETYPE_HEADERS) \
+ -DFT2_BUILD_LIBRARY, \
+ DISABLED_WARNINGS_solstudio := \
+ E_STATEMENT_NOT_REACHED \
+ E_END_OF_LOOP_CODE_NOT_REACHED, \
+ DISABLED_WARNINGS_microsoft := 4267 2220 4244, \
+ LDFLAGS := $(LDFLAGS_JDKLIB) \
+ $(call SET_SHARED_LIBRARY_ORIGIN), \
+ LIBS_solaris := -lc, \
+ VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
+ RC_FLAGS := $(RC_FLAGS) \
+ -D "JDK_FNAME=freetype.dll" \
+ -D "JDK_INTERNAL_NAME=freetype" \
+ -D "JDK_FTYPE=0x2L", \
+ OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype, \
+ ))
+
+ TARGETS += $(BUILD_LIBFREETYPE)
+endif
+
+###########################################################################
+
LIBFONTMANAGER_SRC := $(TOPDIR)/src/java.desktop/share/native/libfontmanager \
$(TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_TYPE)/native/libfontmanager
LIBFONTMANAGER_CFLAGS := \
$(addprefix -I, $(shell $(FIND) \
$(LIBFONTMANAGER_SRC) \
@@ -623,14 +663,14 @@
LIBFONTMANAGER_CFLAGS += $(HARFBUZZ_CFLAGS)
#### End harfbuzz configuration
-LIBFONTMANAGER_CFLAGS += $(FREETYPE_CFLAGS)
+LIBFONTMANAGER_CFLAGS += $(LIBFREETYPE_CFLAGS)
# This may be overridden in a custom makefile
BUILD_LIBFONTMANAGER_MAPFILE ?= $(TOPDIR)/make/mapfiles/libfontmanager/mapfile-vers
-BUILD_LIBFONTMANAGER_FONTLIB += $(FREETYPE_LIBS)
+BUILD_LIBFONTMANAGER_FONTLIB += $(LIBFREETYPE_LIBS)
LIBFONTMANAGER_OPTIMIZATION := HIGH
ifeq ($(OPENJDK_TARGET_OS), windows)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
@@ -657,11 +697,11 @@
BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing
endif
$(eval $(call SetupNativeCompilation, BUILD_LIBFONTMANAGER, \
NAME := fontmanager, \
- OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfontmanager, \
+ OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
SRC := $(LIBFONTMANAGER_SRC), \
EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \
AccelGlyphCache.c, \
TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBFONTMANAGER_CFLAGS), \
@@ -701,31 +741,20 @@
-D "JDK_INTERNAL_NAME=fontmanager" \
-D "JDK_FTYPE=0x2L", \
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfontmanager, \
))
-$(INSTALL_LIBRARIES_HERE)/$(call SHARED_LIBRARY,fontmanager): $(BUILD_LIBFONTMANAGER_TARGET)
- $(install-file)
- ifneq ($(FREETYPE_BUNDLE_LIB_PATH), )
- ifeq ($(OPENJDK_TARGET_OS), macosx)
- # If bundling freetype on macosx, we need to rewrite the rpath location
- # in the libfontmanager library to point to the bundled location
- $(INSTALL_NAME_TOOL) -change \
- `$(OTOOL) -D $(FREETYPE_BUNDLE_LIB_PATH)/$(call SHARED_LIBRARY,freetype) | $(TAIL) -n1` \
- '@rpath/$(call SHARED_LIBRARY,freetype)' \
- $@
- endif
- endif
-
-BUILD_LIBFONTMANAGER += $(INSTALL_LIBRARIES_HERE)/$(call SHARED_LIBRARY,fontmanager)
-
$(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT)
ifneq (, $(findstring $(OPENJDK_TARGET_OS), solaris aix))
$(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_HEADLESS)
endif
+ifeq ($(FREETYPE_TO_USE), bundled)
+ $(BUILD_LIBFONTMANAGER): $(BUILD_LIBFREETYPE)
+endif
+
TARGETS += $(BUILD_LIBFONTMANAGER)
################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows)
< prev index next >