提交 3cf18784 编写于 作者: O ohair

6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind

Summary: OpenJDK freetype sanity check cleanup.
Reviewed-by: tbell
上级 556ba232
...@@ -303,6 +303,8 @@ BUILDTOOLCLASSDIR = $(OUTPUTDIR)/btclasses ...@@ -303,6 +303,8 @@ BUILDTOOLCLASSDIR = $(OUTPUTDIR)/btclasses
# for build tool jar files # for build tool jar files
BUILDTOOLJARDIR = $(OUTPUTDIR)/btjars BUILDTOOLJARDIR = $(OUTPUTDIR)/btjars
ABS_BUILDTOOLJARDIR = $(ABS_OUTPUTDIR)/btjars ABS_BUILDTOOLJARDIR = $(ABS_OUTPUTDIR)/btjars
# for generated tool class files
BUILDTOOLBINDIR = $(OUTPUTDIR)/btbins
# for generated java source files # for generated java source files
GENSRCDIR = $(OUTPUTDIR)/gensrc GENSRCDIR = $(OUTPUTDIR)/gensrc
# for generated C source files (not javah) # for generated C source files (not javah)
......
...@@ -788,21 +788,17 @@ sane-cacerts: ...@@ -788,21 +788,17 @@ sane-cacerts:
ifdef OPENJDK ifdef OPENJDK
#name of test program that prints out "Failed" if freetype is not good enough # The freetypecheck Makefile prints out "Failed" if not good enough
FREETYPE_VERSION_CHECK_NAME = freetype_versioncheck $(TEMPDIR)/freetypeinfo: FRC
FREETYPE_VERSION_CHECK = $(TEMPDIR)/$(FREETYPE_VERSION_CHECK_NAME)$(EXE_SUFFIX) @$(prep-target)
@(($(CD) $(BUILDDIR)/tools/freetypecheck && $(MAKE)) || \
sane-freetype: $(ECHO) "Failed to build freetypecheck." ) > $@
@-($(CD) $(BUILDDIR)/tools/freetypecheck && \
$(MAKE) REQUIRED_FREETYPE_VERSION=$(REQUIRED_FREETYPE_VERSION) \ sane-freetype: $(TEMPDIR)/freetypeinfo
FT_TEST=$(FREETYPE_VERSION_CHECK_NAME) \ @if [ "`$(CAT) $< | $(GREP) Fail`" != "" ]; then \
FT_HEADERS=$(FREETYPE_HEADERS_PATH) \
FT_LIB=$(FREETYPE_LIB_PATH) \
XARCH=$(XARCH))
@if [ ! -r $(FREETYPE_VERSION_CHECK) -o \
"`$(FREETYPE_VERSION_CHECK) | $(GREP) Fail`" != "" ]; then \
$(ECHO) "ERROR: FreeType version " $(REQUIRED_FREETYPE_VERSION) \ $(ECHO) "ERROR: FreeType version " $(REQUIRED_FREETYPE_VERSION) \
"or higher is required. \n" >> $(ERROR_FILE) ; \ " or higher is required. \n" \
"`$(CAT) $<` \n" >> $(ERROR_FILE) ; \
fi fi
else else
......
...@@ -40,6 +40,7 @@ SUBDIRS = \ ...@@ -40,6 +40,7 @@ SUBDIRS = \
dir_diff \ dir_diff \
dtdbuilder \ dtdbuilder \
fontchecker \ fontchecker \
freetypecheck \
generate_break_iterator \ generate_break_iterator \
GenerateCharacter \ GenerateCharacter \
generatecurrencydata \ generatecurrencydata \
...@@ -58,4 +59,5 @@ all build clean clobber:: ...@@ -58,4 +59,5 @@ all build clean clobber::
clean clobber:: clean clobber::
$(RM) -r $(BUILDTOOLCLASSDIR) $(RM) -r $(BUILDTOOLCLASSDIR)
$(RM) -r $(BUILDTOOLJARDIR) $(RM) -r $(BUILDTOOLJARDIR)
$(RM) -r $(BUILDTOOLBINDIR)
...@@ -22,55 +22,58 @@ ...@@ -22,55 +22,58 @@
# CA 95054 USA or visit www.sun.com if you need additional information or # CA 95054 USA or visit www.sun.com if you need additional information or
# have any questions. # have any questions.
# Builds test program for freetype sanity check. # Builds and runs test program for freetype sanity check.
#
# Makefile should be called with following input parameters
# FT_TEST - full name of test program
# FT_HEADERS - path to freetype headers
# FT_LIB - location of directory with library
# XARCH - xarch option if required
BUILDDIR = ../.. BUILDDIR = ../..
include $(BUILDDIR)/common/Defs.gmk include $(BUILDDIR)/common/Defs.gmk
#test program is expected in the TEMPDIR # Default name
FT_TEST_PATH = $(TEMPDIR)/$(FT_TEST) FT_TEST = $(BUILDTOOLBINDIR)/freetype_versioncheck$(EXE_SUFFIX)
all: $(FT_TEST_PATH) # Used on openjdk only
ifeq ($(OPENJDK),true)
# Start with CFLAGS (which gets us the required -xarch setting on solaris) # Start with CFLAGS (which gets us the required -xarch setting on solaris)
ifeq ($(PLATFORM), windows) ifeq ($(PLATFORM), windows)
FT_OPTIONS = FT_OPTIONS = /nologo $(CC_OBJECT_OUTPUT_FLAG)$(TEMPDIR)
FREETYPE_DLL = $(FREETYPE_LIB_PATH)/freetype.dll
FT_LD_OPTIONS = $(FREETYPE_LIB_PATH)/freetype.lib
else else
FT_OPTIONS = $(CFLAGS) FT_OPTIONS = $(CFLAGS)
endif FT_LD_OPTIONS = -L$(FREETYPE_LIB_PATH)
# Add runtime lib search path to ensure test will be runnable
FT_OPTIONS += -I$(FT_HEADERS) -I$(FT_HEADERS)/freetype2
FT_OPTIONS += $(XARCH)
#add runtime library search path
ifeq ($(PLATFORM), windows)
FREETYPE_LIB=$(FT_LIB)/freetype.lib
FREETYPE_DLL=$(FT_LIB)/freetype.dll
DFLAG=/D
else
FT_OPTIONS += -L$(FT_LIB)
DFLAG = -D
#add runtime lib search path to ensure test will be runnable
ifeq ($(PLATFORM), solaris) ifeq ($(PLATFORM), solaris)
FT_OPTIONS += -R $(FT_LIB) -lfreetype FT_LD_OPTIONS += -R $(FREETYPE_LIB_PATH) -lfreetype
else #linux else #linux
FT_OPTIONS += -Wl,-rpath -Wl,$(FT_LIB) -lfreetype FT_LD_OPTIONS += -Wl,-rpath -Wl,$(FREETYPE_LIB_PATH) -lfreetype
endif endif
endif endif
FT_OPTIONS += -I$(FREETYPE_HEADERS_PATH)
FT_OPTIONS += -I$(FREETYPE_HEADERS_PATH)/freetype2
FT_OPTIONS += -DREQUIRED_FREETYPE_VERSION=$(REQUIRED_FREETYPE_VERSION)
FT_LD_OPTIONS += $(LFLAGS_$(COMPILER_VERSION))
FT_OPTIONS += $(DFLAG)REQUIRED_FREETYPE_VERSION=$(REQUIRED_FREETYPE_VERSION) # Create test program
all: $(FT_TEST)
@$(FT_TEST)
# On windows we need to copy dll to test dir # On windows we need to copy dll to test dir to ensure it will be found
# ti ensure it will be found in runtime # at runtime
$(FT_TEST_PATH): freetypecheck.c $(FT_TEST): freetypecheck.c
@$(CC) $(FT_OPTIONS) $(CC_PROGRAM_OUTPUT_FLAG)$@ $< $(FREETYPE_LIB) $(LFLAGS_$(COMPILER_VERSION)) @$(prep-target)
@$(CC) $(FT_OPTIONS) $(CC_PROGRAM_OUTPUT_FLAG)$@ $< $(FT_LD_OPTIONS)
ifeq ($(PLATFORM), windows) ifeq ($(PLATFORM), windows)
@$(CP) $(FREETYPE_DLL) `dirname $@` @$(CP) $(FREETYPE_DLL) `dirname $@`
endif endif
else
# Inform user this is openjdk only
all:
@$(ECHO) "The freetype files are only used with OpenJDK"
endif
clean::
$(RM) $(FT_TEST)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册