Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Oct 2020 21:15:37 +0200
From:      Rainer Hurling <rhurlin@gwdg.de>
To:        Steve Wills <swills@FreeBSD.org>, <ports-committers@freebsd.org>, <svn-ports-all@freebsd.org>, <svn-ports-head@freebsd.org>
Subject:   Re: svn commit: r552736 - head/Mk/Scripts
Message-ID:  <2d9d7334-b5e5-0404-b5d3-b2f620e4fd9c@gwdg.de>
In-Reply-To: <202010191219.09JCJEvX070282@repo.freebsd.org>
References:  <202010191219.09JCJEvX070282@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Since this commit, I always get (again) the following error, when I try
to build a port, which contains ${REINPLACE_CMD]:

env: /usr/ports/Mk/Scripts/sed_checked.sh: Permission denied
*** Error code 126

Am I the only one?

Regards,
Rainer Hurling


On 19.10.20 14:19, Steve Wills wrote:
> Author: swills
> Date: Mon Oct 19 12:19:14 2020
> New Revision: 552736
> URL: https://svnweb.freebsd.org/changeset/ports/552736
> 
> Log:
>   Revert
> 
> Modified:
>   head/Mk/Scripts/sed_checked.sh   (contents, props changed)
> 
> Modified: head/Mk/Scripts/sed_checked.sh
> ==============================================================================
> --- head/Mk/Scripts/sed_checked.sh	Mon Oct 19 11:56:42 2020	(r552735)
> +++ head/Mk/Scripts/sed_checked.sh	Mon Oct 19 12:19:14 2020	(r552736)
> @@ -1,84 +1,13 @@
>  #!/bin/sh
>  
> -# Rationale:
> -# The ports tree has accumulated quite a bit of REINPLACE_CMD lines
> -# in its Makefile. Some of these have gone stale as ports were updated
> -# upstream, or as the ports have evolved.
> -
> -# For DEVELOPERS, we check the effectiveness of REINPLACE_CMD lines
> -# by requesting backup files be written, and comparing them against
> -# source files.
> -
> -set -eu
> -
> -DEBUG=:
> -#DEBUG=echo
> -
> -check_dash_i() {
> -    # this must be called from a subshell so as not to clobber $@
> -    # WARNING: assumes that -i is given at least once!
> -    unset OPTIND
> -    $DEBUG >&2 DEBUG: check_dash_i "$@"
> -    while getopts :EI:ae:f:i:lnru var ; do
> -	$DEBUG >&2 DEBUG: option "$var" '"'"${OPTARG-""}"'"'
> -	case "$var" in [iI])
> -	    last_i="$OPTARG"
> -	esac
> -    done
> -
> -    $DEBUG >&2 DEBUG: last_i='"'"$last_i"'"'
> -    printf '"%s"\n' "$last_i"
> -}
> -
> -shadowed="$( (check_dash_i -i.bak "$@") )"
> -if [ "$shadowed" != '".bak"' ] ; then
> -    echo >&2 "WARNING: $0 -i.bak clobbered by caller's backup suffix $shadowed"
> -fi
> -
> -${SED-/usr/bin/sed} -i.bak "$@"
> -check() {
> -    issues=0
> -    files=0
> -    args=
> -    for x in "${@}" ; do
> -	# we decide very simply whether the argument we are looking at is
> -	# a sed command or a file: if it's not a regular file, it must be
> -	# a sed argument worth collecting for our warning message,
> -	# so that maintainers can identify the failing sed command.
> -	#
> -	# We cannot easily relate to Makefile lines here.
> -	if [ -f "${x}" ]; then
> -	    # File? Check if sed was effective.
> -	    files=$(($files + 1))
> -	    if cmp -s "${x}" "${x}".bak ; then
> -		issues=$(($issues + 1))
> -		if [ $issues -eq 1 ] ; then
> -		    echo "sed failed:${args} ..."
> -		fi
> -		echo "  - file content unchanged from backup: ${x#${WRKSRC}/}"
> -	    fi
> -	else
> -	    # Not a file? Collect sed(1) command.
> -	    args="${args} ${x}"
> -	fi
> -    done
> -
> -    if [ ${issues} -gt 0 ] ; then
> -	action="review"
> -	if [ ${issues} -eq ${files} ] ; then
> -	    action=" FIX " # blanks at either end
> -	else
> -	    action="review"
> -	fi
> -	echo "--- issues found: ${issues}, files to edit: ${files}, please ${action} ---"
> +set -e
> +/usr/bin/sed -i.bak "$@"
> +for x in "${@}" ; do
> +    if [ -f "${x}" ]; then
> +	if cmp -s "${x}" "${x}".bak ; then
> +            if [ ! -z "${REWARNFILE}" ]; then
> +                echo - - REINPLACE_CMD ran, but did not modify file contents: ${x#${WRKSRC}/} >> ${REWARNFILE}
> +            fi
> +        fi
>      fi
> -}
> -
> -if [ ! -z "${REWARNFILE}" ] ; then
> -    check "$@" | tee -a ${REWARNFILE}
> -    # if ${REWARNFILE} is a regular file (not /dev/null) and empty, delete it.
> -    if [ -f "${REWARNFILE}" -a ! -s "${REWARNFILE}" ] ; then rm -f "${REWARNFILE}" ; fi
> -else
> -    check "$@"
> -fi
> -
> +done
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2d9d7334-b5e5-0404-b5d3-b2f620e4fd9c>