8202575: Remove java/lang/String/nativeEncoding/StringPlatformChars.java from ProblemList
Reviewed-by: alanb
## Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.## This code is free software; you can redistribute it and/or modify it# under the terms of the GNU General Public License version 2 only, as# published by the Free Software Foundation. Oracle designates this# particular file as subject to the "Classpath" exception as provided# by Oracle in the LICENSE file that accompanied this code.## This code is distributed in the hope that it will be useful, but WITHOUT# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License# version 2 for more details (a copy is included in the LICENSE file that# accompanied this code).## You should have received a copy of the GNU General Public License version# 2 along with this work; if not, write to the Free Software Foundation,# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.## Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA# or visit www.oracle.com if you need additional information or have any# questions.################################################################################## Initial bootstrapping, copied and stripped down from Makefile and Init.gmk################################################################################# In Cygwin, the MAKE variable gets prepended with the current directory if the# make executable is called using a Windows mixed path (c:/cygwin/bin/make.exe).ifneq ($(findstring :, $(MAKE)), ) export MAKE := $(patsubst $(CURDIR)%, %, $(patsubst $(CURDIR)/%, %, $(MAKE)))endif# Locate this Makefileifeq ($(filter /%, $(lastword $(MAKEFILE_LIST))),) makefile_path := $(CURDIR)/$(strip $(lastword $(MAKEFILE_LIST)))else makefile_path := $(lastword $(MAKEFILE_LIST))endifTOPDIR := $(strip $(patsubst %/make/, %, $(dir $(makefile_path))))################################################################################# Functions################################################################################# Setup a required or optional variable, and/or check that it is properly# given.# Note: No spaces are allowed around the arguments.## $1: The name of the argument# $2: The default value, if any, or OPTIONAL (do not provide a default but# do not exit if it is missing)# $3: If NO_CHECK, disable checking for target file/directory existencedefine SetupVariable ifeq ($$($1), ) ifeq ($2, ) $$(info Error: Prebuilt variable $1 is missing, needed for run-tests-prebuilt) $$(error Cannot continue.) else ifeq ($2, OPTIONAL) ifneq ($$(findstring $$(LOG), info debug trace), ) $$(info Prebuilt variable $1 is not provided) endif else ifneq ($$(findstring $$(LOG), info debug trace), ) $$(info Prebuilt variable $1=$2 (default value)) endif $1:=$2 endif else ifneq ($$(findstring $$(LOG), info debug trace), ) $$(info Prebuilt variable $1=$$($1)) endif endif # If $1 has a value (is not optional), and $3 is not set (to NO_CHECK), # and if wildcard is empty, then complain that the file is missing. ifeq ($$(strip $$(if $$($1), , OPTIONAL) $$(wildcard $$($1)) $3), ) $$(info Error: Prebuilt variable $1 points to missing file/directory:) $$(info '$$($1)') $$(error Cannot continue.) endifendef# Create an ephemeral spec file## $1: The output file name# $2..$N: The lines to output to the filedefine CreateNewSpec $(if $(strip $(26)), \ $(error Internal makefile error: \ Too many arguments to macro, please update CreateNewSpec in RunTestsPrebuilt.gmk) \ ) \ $(shell $(RM) $1) \ $(foreach i, $(call sequence, 2, 25), \ $(if $(strip $($i)), \ $(call AppendFile, $(strip $($i)), $1) \ ) \ )endef################################################################################# Check input and setup basic buildsystem support################################################################################# Verify that user has given correct additional input.# These variables are absolutely necessary$(eval $(call SetupVariable,OUTPUTDIR))$(eval $(call SetupVariable,BOOT_JDK))$(eval $(call SetupVariable,JT_HOME))# These can have default values based on the ones above$(eval $(call SetupVariable,JDK_IMAGE_DIR,$(OUTPUTDIR)/images/jdk))$(eval $(call SetupVariable,TEST_IMAGE_DIR,$(OUTPUTDIR)/images/test))$(eval $(call SetupVariable,SYMBOLS_IMAGE_DIR,$(OUTPUTDIR)/images/symbols))# Provide default values for tools that we need$(eval $(call SetupVariable,MAKE,make,NO_CHECK))$(eval $(call SetupVariable,BASH,bash,NO_CHECK))# Check optional variables$(eval $(call SetupVariable,JIB_JAR,OPTIONAL))# Now that we have verified that we have the required variables available, we# can include the prebuilt spec file ourselves, without an ephemeral spec# wrapper. This is required so we can include MakeBase which is needed for# CreateNewSpec.HAS_SPEC :=include $(TOPDIR)/make/InitSupport.gmk$(eval $(call CheckDeprecatedEnvironment))$(eval $(call CheckInvalidMakeFlags))$(eval $(call ParseLogLevel))SPEC := $(TOPDIR)/make/RunTestsPrebuiltSpec.gmkinclude $(SPEC)include $(TOPDIR)/make/common/MakeBase.gmk################################################################################# Determine what platform we're running on################################################################################UNAME := uname# Get OS name from uname (Cygwin inexplicably adds _NT-x.x)UNAME_OS := $(shell $(UNAME) -s | $(CUT) -f1 -d_)ifeq ($(UNAME_OS), CYGWIN) OPENJDK_TARGET_OS := windows OPENJDK_TARGET_OS_TYPE := windows OPENJDK_TARGET_OS_ENV := windows.cygwinelse OPENJDK_TARGET_OS_TYPE:=unix ifeq ($(UNAME_OS), Linux) OPENJDK_TARGET_OS := linux else ifeq ($(UNAME_OS), Darwin) OPENJDK_TARGET_OS := macosx else ifeq ($(UNAME_OS), SunOS) OPENJDK_TARGET_OS := solaris else OPENJDK_TARGET_OS := $(UNAME_OS) endif OPENJDK_TARGET_OS_ENV := $(OPENJDK_TARGET_OS)endif# Assume little endian unless otherwise specifiedOPENJDK_TARGET_CPU_ENDIAN := littleifeq ($(OPENJDK_TARGET_OS), solaris) # On solaris, use uname -p UNAME_CPU := $(shell $(UNAME) -p) # Assume 64-bit platform OPENJDK_TARGET_CPU_BITS := 64 ifeq ($(UNAME_CPU), i386) OPENJDK_TARGET_CPU := x86_64 else ifeq ($(UNAME_CPU), sparc) OPENJDK_TARGET_CPU := sparcv9 OPENJDK_TARGET_CPU_ENDIAN := big else OPENJDK_TARGET_CPU := $(UNAME_CPU) endifelse # ... all others use uname -m UNAME_CPU := $(shell $(UNAME) -m) ifeq ($(UNAME_CPU), i686) OPENJDK_TARGET_CPU := x86 OPENJDK_TARGET_CPU_BITS := 32 else # Assume all others are 64-bit. We use the same CPU name as uname for # at least x86_64 and aarch64. OPENJDK_TARGET_CPU := $(UNAME_CPU) OPENJDK_TARGET_CPU_BITS := 64 endifendifOPENJDK_TARGET_CPU_ARCH := $(OPENJDK_TARGET_CPU)ifeq ($(OPENJDK_TARGET_CPU), x86_64) OPENJDK_TARGET_CPU_ARCH := x86else ifeq ($(OPENJDK_TARGET_CPU), sparcv9) OPENJDK_TARGET_CPU_ARCH := sparcendififeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(wildcard $(TEST_IMAGE_DIR)/bin/fixpath.exe), ) $$(info Error: fixpath is missing from test image '$(TEST_IMAGE_DIR)') $$(error Cannot continue.) endif FIXPATH := $(TEST_IMAGE_DIR)/bin/fixpath.exe -c PATH_SEP:=;else FIXPATH := PATH_SEP:=:endif# Check number of coresifeq ($(OPENJDK_TARGET_OS), linux) NUM_CORES := $(shell $(CAT) /proc/cpuinfo | $(GREP) -c processor)else ifeq ($(OPENJDK_TARGET_OS), macosx) NUM_CORES := $(shell /usr/sbin/sysctl -n hw.ncpu)else ifeq ($(OPENJDK_TARGET_OS), solaris) NUM_CORES := $(shell LC_MESSAGES=C /usr/sbin/psrinfo -v | $(GREP) -c on-line)else ifeq ($(OPENJDK_TARGET_OS), windows) NUM_CORES := $(NUMBER_OF_PROCESSORS)else NUM_CORES := 1endif################################################################################# Generate the ephemeral spec file################################################################################# Now we can include additional custom support.# This might define CUSTOM_NEW_SPEC_LINEifneq ($(CUSTOM_MAKE_DIR), ) include $(CUSTOM_MAKE_DIR)/RunTestsPrebuilt.gmkendifNEW_SPEC := $(OUTPUTDIR)/run-test-spec.gmk$(call CreateNewSpec, $(NEW_SPEC), \ # Generated file -- do not edit!, \ SPEC := $(NEW_SPEC), \ TOPDIR := $(TOPDIR), \ OUTPUTDIR := $(OUTPUTDIR), \ BOOT_JDK := $(BOOT_JDK), \ JT_HOME := $(JT_HOME), \ JDK_IMAGE_DIR := $(JDK_IMAGE_DIR), \ TEST_IMAGE_DIR := $(TEST_IMAGE_DIR), \ SYMBOLS_IMAGE_DIR := $(SYMBOLS_IMAGE_DIR), \ MAKE := $(MAKE), \ BASH := $(BASH), \ JIB_JAR := $(JIB_JAR), \ FIXPATH := $(FIXPATH), \ PATH_SEP := $(PATH_SEP), \ OPENJDK_TARGET_OS := $(OPENJDK_TARGET_OS), \ OPENJDK_TARGET_OS_TYPE := $(OPENJDK_TARGET_OS_TYPE), \ OPENJDK_TARGET_OS_ENV := $(OPENJDK_TARGET_OS_ENV), \ OPENJDK_TARGET_CPU := $(OPENJDK_TARGET_CPU), \ OPENJDK_TARGET_CPU_ARCH := $(OPENJDK_TARGET_CPU_ARCH), \ OPENJDK_TARGET_CPU_BITS := $(OPENJDK_TARGET_CPU_BITS), \ OPENJDK_TARGET_CPU_ENDIAN := $(OPENJDK_TARGET_CPU_ENDIAN), \ NUM_CORES := $(NUM_CORES), \ include $(TOPDIR)/make/RunTestsPrebuiltSpec.gmk, \ $(CUSTOM_NEW_SPEC_LINE), \)################################################################################# The run-test-prebuilt target################################################################################SPEC := $(NEW_SPEC)default: allrun-test-prebuilt: @$(RM) -f $(MAKESUPPORT_OUTPUTDIR)/exit-with-error @cd $(TOPDIR) && $(MAKE) $(MAKE_ARGS) -f make/RunTests.gmk run-test \ TEST="$(TEST)" @if test -f $(MAKESUPPORT_OUTPUTDIR)/exit-with-error ; then \ exit 1 ; \ fiall: run-test-prebuilt.PHONY: default all