From 4ca5c7e2e0b9d8dedec77c85271ac0f6e45b5d30 Mon Sep 17 00:00:00 2001 From: glewis Date: Sat, 23 Aug 2003 15:17:29 +0000 Subject: . Add a script which checks if ${LINUX_BASE}/${WRKDIRPREFIX} is (possibly indirectly) a symbolic link to ${WRKDIRPREFIX}. . Use this script in preference to the direct symbolic link check previously used, as it handles indirections which cause the same problem. . /compat/linux -> ${LINUXBASE} in the message output if the check detects a link. PR: 43602 --- java/jdk12/Makefile | 6 ++---- java/jdk12/scripts/check_wrkdir_links.sh | 29 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 java/jdk12/scripts/check_wrkdir_links.sh (limited to 'java/jdk12') diff --git a/java/jdk12/Makefile b/java/jdk12/Makefile index c7995a9..9bda99e 100644 --- a/java/jdk12/Makefile +++ b/java/jdk12/Makefile @@ -118,12 +118,10 @@ pre-patch: .if defined(WITH_LINUX_BOOTSTRAP) || !exists(${PREFIX}/jdk${JDK_VERSION}/bin/javac) # Some checks for bootstrapping with a Linux JDK pre-build: - @if [ "$${WRKDIRPREFIX}" -a \ - -L "/compat/linux/$${WRKDIRPREFIX}" -a \ - x`ls -ld "/compat/linux/$${WRKDIRPREFIX}" 2>/dev/null | ${AWK} '/->/{print $$NF;exit 0}END{exit 1}'` = x"$${WRKDIRPREFIX}" ]; \ + @if [ `${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/check_wrkdir_links.sh "${WRKDIRPREFIX}" "${LINUXBASE}" 2>/dev/null` ]; \ then \ ${ECHO_MSG} "Please set WRKDIRPREFIX to something which doesn't"; \ - ${ECHO_MSG} "have a matching symbolic link in /compat/linux."; \ + ${ECHO_MSG} "have a matching symbolic link in ${LINUXBASE}."; \ ${ECHO_MSG} "This is known to cause problems during bootstrapping."; \ exit 1; \ fi diff --git a/java/jdk12/scripts/check_wrkdir_links.sh b/java/jdk12/scripts/check_wrkdir_links.sh new file mode 100644 index 0000000..a2f9112 --- /dev/null +++ b/java/jdk12/scripts/check_wrkdir_links.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# $FreeBSD: /tmp/pcvs/ports/java/jdk12/scripts/Attic/check_wrkdir_links.sh,v 1.1 2003-08-23 15:17:29 glewis Exp $ + +WRKDIRPREFIX=$1 +LINUXBASE=$2 + +if [ "x${WRKDIRPREFIX}" = "x" -o "x${LINUXBASE}" = "x" ]; then + exit 0 +fi + +LINUXWRKDIRPREFIX="${LINUXBASE}/${WRKDIRPREFIX}" + +while [ "x${LINUXWRKDIRPREFIX}" != "x" ]; do + if [ -L "${LINUXWRKDIRPREFIX}" -a \ + x`ls -ld "${LINUXWRKDIRPREFIX}" 2>/dev/null | \ + awk '/->/{print $NF;exit 0}END{exit 1}'` = \ + x"${WRKDIRPREFIX}" ]; then + echo "link" + exit 1 + fi + if [ -L "${LINUXWRKDIRPREFIX}" ]; then + LINUXWRKDIRPREFIX=`ls -ld "${LINUXWRKDIRPREFIX}" 2>/dev/null | \ + awk '/->/{print $NF;exit 0}END{exit 1}'` + else + break + fi +done + +exit 0 -- cgit v1.1