8189955: Configuration validation is broken for some types of paths
Reviewed-by: erikj
This commit is contained in:
parent
a69940ab56
commit
acf857fe3d
@ -223,9 +223,6 @@ else # HAS_SPEC=true
|
|||||||
# Our helper functions.
|
# Our helper functions.
|
||||||
include $(TOPDIR)/make/InitSupport.gmk
|
include $(TOPDIR)/make/InitSupport.gmk
|
||||||
|
|
||||||
# Verify that the spec file we included seems okay.
|
|
||||||
$(eval $(call CheckSpecSanity))
|
|
||||||
|
|
||||||
# Parse COMPARE_BUILD (for makefile development)
|
# Parse COMPARE_BUILD (for makefile development)
|
||||||
$(eval $(call ParseCompareBuild))
|
$(eval $(call ParseCompareBuild))
|
||||||
|
|
||||||
|
@ -359,23 +359,6 @@ else # $(HAS_SPEC)=true
|
|||||||
|
|
||||||
BUILD_LOG_PIPE := > >($(TEE) -a $(BUILD_LOG)) 2> >($(TEE) -a $(BUILD_LOG) >&2) && wait
|
BUILD_LOG_PIPE := > >($(TEE) -a $(BUILD_LOG)) 2> >($(TEE) -a $(BUILD_LOG) >&2) && wait
|
||||||
|
|
||||||
# Sanity check the spec file, so it matches this source code
|
|
||||||
define CheckSpecSanity
|
|
||||||
ifneq ($$(ACTUAL_TOPDIR), $$(TOPDIR))
|
|
||||||
ifneq ($$(ACTUAL_TOPDIR), $$(ORIGINAL_TOPDIR))
|
|
||||||
ifneq ($$(ACTUAL_TOPDIR), $$(CANONICAL_TOPDIR))
|
|
||||||
$$(info Error: SPEC mismatch! Current working directory)
|
|
||||||
$$(info $$(ACTUAL_TOPDIR))
|
|
||||||
$$(info does not match either TOPDIR, ORIGINAL_TOPDIR or CANONICAL_TOPDIR)
|
|
||||||
$$(info $$(TOPDIR))
|
|
||||||
$$(info $$(ORIGINAL_TOPDIR))
|
|
||||||
$$(info $$(CANONICAL_TOPDIR))
|
|
||||||
$$(error Cannot continue)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
endef
|
|
||||||
|
|
||||||
# Parse COMPARE_BUILD into COMPARE_BUILD_*
|
# Parse COMPARE_BUILD into COMPARE_BUILD_*
|
||||||
# Syntax: COMPARE_BUILD=CONF=<configure options>:PATCH=<patch file>:
|
# Syntax: COMPARE_BUILD=CONF=<configure options>:PATCH=<patch file>:
|
||||||
# MAKE=<make targets>:COMP_OPTS=<compare script options>:
|
# MAKE=<make targets>:COMP_OPTS=<compare script options>:
|
||||||
|
@ -561,19 +561,10 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
|
|||||||
AC_MSG_RESULT([$TOPDIR])
|
AC_MSG_RESULT([$TOPDIR])
|
||||||
AC_SUBST(TOPDIR)
|
AC_SUBST(TOPDIR)
|
||||||
|
|
||||||
# Save the original version of TOPDIR for string comparisons
|
|
||||||
ORIGINAL_TOPDIR="$TOPDIR"
|
|
||||||
AC_SUBST(ORIGINAL_TOPDIR)
|
|
||||||
|
|
||||||
# We can only call BASIC_FIXUP_PATH after BASIC_CHECK_PATHS_WINDOWS.
|
# We can only call BASIC_FIXUP_PATH after BASIC_CHECK_PATHS_WINDOWS.
|
||||||
BASIC_FIXUP_PATH(CURDIR)
|
BASIC_FIXUP_PATH(CURDIR)
|
||||||
BASIC_FIXUP_PATH(TOPDIR)
|
BASIC_FIXUP_PATH(TOPDIR)
|
||||||
|
|
||||||
# Calculate a canonical version of TOPDIR for string comparisons
|
|
||||||
CANONICAL_TOPDIR=$TOPDIR
|
|
||||||
BASIC_REMOVE_SYMBOLIC_LINKS([CANONICAL_TOPDIR])
|
|
||||||
AC_SUBST(CANONICAL_TOPDIR)
|
|
||||||
|
|
||||||
# Locate the directory of this script.
|
# Locate the directory of this script.
|
||||||
AUTOCONF_DIR=$TOPDIR/make/autoconf
|
AUTOCONF_DIR=$TOPDIR/make/autoconf
|
||||||
|
|
||||||
|
@ -965,8 +965,6 @@ DEBUG_LEVEL
|
|||||||
HOTSPOT_DEBUG_LEVEL
|
HOTSPOT_DEBUG_LEVEL
|
||||||
JDK_VARIANT
|
JDK_VARIANT
|
||||||
USERNAME
|
USERNAME
|
||||||
CANONICAL_TOPDIR
|
|
||||||
ORIGINAL_TOPDIR
|
|
||||||
TOPDIR
|
TOPDIR
|
||||||
PATH_SEP
|
PATH_SEP
|
||||||
HOTSPOT_BUILD_CPU_DEFINE
|
HOTSPOT_BUILD_CPU_DEFINE
|
||||||
@ -5117,7 +5115,7 @@ VS_SDK_PLATFORM_NAME_2013=
|
|||||||
#CUSTOM_AUTOCONF_INCLUDE
|
#CUSTOM_AUTOCONF_INCLUDE
|
||||||
|
|
||||||
# Do not change or remove the following line, it is needed for consistency checks:
|
# Do not change or remove the following line, it is needed for consistency checks:
|
||||||
DATE_WHEN_GENERATED=1508746828
|
DATE_WHEN_GENERATED=1509013542
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#
|
#
|
||||||
@ -16536,10 +16534,6 @@ $as_echo_n "checking for top-level directory... " >&6; }
|
|||||||
$as_echo "$TOPDIR" >&6; }
|
$as_echo "$TOPDIR" >&6; }
|
||||||
|
|
||||||
|
|
||||||
# Save the original version of TOPDIR for string comparisons
|
|
||||||
ORIGINAL_TOPDIR="$TOPDIR"
|
|
||||||
|
|
||||||
|
|
||||||
# We can only call BASIC_FIXUP_PATH after BASIC_CHECK_PATHS_WINDOWS.
|
# We can only call BASIC_FIXUP_PATH after BASIC_CHECK_PATHS_WINDOWS.
|
||||||
|
|
||||||
# Only process if variable expands to non-empty
|
# Only process if variable expands to non-empty
|
||||||
@ -16806,58 +16800,6 @@ $as_echo "$as_me: The path of TOPDIR, which resolves as \"$path\", is invalid."
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Calculate a canonical version of TOPDIR for string comparisons
|
|
||||||
CANONICAL_TOPDIR=$TOPDIR
|
|
||||||
|
|
||||||
if test "x$OPENJDK_BUILD_OS" != xwindows; then
|
|
||||||
# Follow a chain of symbolic links. Use readlink
|
|
||||||
# where it exists, else fall back to horribly
|
|
||||||
# complicated shell code.
|
|
||||||
if test "x$READLINK_TESTED" != yes; then
|
|
||||||
# On MacOSX there is a readlink tool with a different
|
|
||||||
# purpose than the GNU readlink tool. Check the found readlink.
|
|
||||||
ISGNU=`$READLINK --version 2>&1 | $GREP GNU`
|
|
||||||
if test "x$ISGNU" = x; then
|
|
||||||
# A readlink that we do not know how to use.
|
|
||||||
# Are there other non-GNU readlinks out there?
|
|
||||||
READLINK_TESTED=yes
|
|
||||||
READLINK=
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "x$READLINK" != x; then
|
|
||||||
CANONICAL_TOPDIR=`$READLINK -f $CANONICAL_TOPDIR`
|
|
||||||
else
|
|
||||||
# Save the current directory for restoring afterwards
|
|
||||||
STARTDIR=$PWD
|
|
||||||
COUNTER=0
|
|
||||||
sym_link_dir=`$DIRNAME $CANONICAL_TOPDIR`
|
|
||||||
sym_link_file=`$BASENAME $CANONICAL_TOPDIR`
|
|
||||||
cd $sym_link_dir
|
|
||||||
# Use -P flag to resolve symlinks in directories.
|
|
||||||
cd `$THEPWDCMD -P`
|
|
||||||
sym_link_dir=`$THEPWDCMD -P`
|
|
||||||
# Resolve file symlinks
|
|
||||||
while test $COUNTER -lt 20; do
|
|
||||||
ISLINK=`$LS -l $sym_link_dir/$sym_link_file | $GREP '\->' | $SED -e 's/.*-> \(.*\)/\1/'`
|
|
||||||
if test "x$ISLINK" == x; then
|
|
||||||
# This is not a symbolic link! We are done!
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
# Again resolve directory symlinks since the target of the just found
|
|
||||||
# link could be in a different directory
|
|
||||||
cd `$DIRNAME $ISLINK`
|
|
||||||
sym_link_dir=`$THEPWDCMD -P`
|
|
||||||
sym_link_file=`$BASENAME $ISLINK`
|
|
||||||
let COUNTER=COUNTER+1
|
|
||||||
done
|
|
||||||
cd $STARTDIR
|
|
||||||
CANONICAL_TOPDIR=$sym_link_dir/$sym_link_file
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Locate the directory of this script.
|
# Locate the directory of this script.
|
||||||
AUTOCONF_DIR=$TOPDIR/make/autoconf
|
AUTOCONF_DIR=$TOPDIR/make/autoconf
|
||||||
|
|
||||||
|
@ -127,9 +127,6 @@ SYSROOT_LDFLAGS := @SYSROOT_LDFLAGS@
|
|||||||
|
|
||||||
# The top-level directory of the source repository
|
# The top-level directory of the source repository
|
||||||
TOPDIR:=@TOPDIR@
|
TOPDIR:=@TOPDIR@
|
||||||
# These two versions of TOPDIR are used in string comparisons
|
|
||||||
ORIGINAL_TOPDIR:=@ORIGINAL_TOPDIR@
|
|
||||||
CANONICAL_TOPDIR:=@CANONICAL_TOPDIR@
|
|
||||||
|
|
||||||
|
|
||||||
IMPORT_MODULES_CLASSES:=@IMPORT_MODULES_CLASSES@
|
IMPORT_MODULES_CLASSES:=@IMPORT_MODULES_CLASSES@
|
||||||
|
Loading…
x
Reference in New Issue
Block a user