aboutsummaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
authorRene Ladan <rene@FreeBSD.org>2021-04-06 10:28:35 +0000
committerRene Ladan <rene@FreeBSD.org>2021-04-06 10:39:46 +0000
commita4c3b6f622b81ac9a0848c782b4645e0e9dcfcd0 (patch)
treeabab7c13651879e9cb2cc42ce3572644fc393241 /Tools
parente7863f568d914125f57b96ab236d3491f7b8931c (diff)
downloadports-a4c3b6f622b81ac9a0848c782b4645e0e9dcfcd0.tar.gz
ports-a4c3b6f622b81ac9a0848c782b4645e0e9dcfcd0.zip
Remove two tools that are no longer useful with Git.
- mfh: this is replaced by 'git cherry-pick -x HASH' - psvn: unlike svn, git has no per-file properties Adjust README accordingly. Differential Revision: https://reviews.freebsd.org/D29451 With hat: portmgr
Diffstat (limited to 'Tools')
-rw-r--r--Tools/scripts/README1
-rwxr-xr-xTools/scripts/mfh195
-rwxr-xr-xTools/scripts/psvn191
3 files changed, 0 insertions, 387 deletions
diff --git a/Tools/scripts/README b/Tools/scripts/README
index af5771794569..079a78a29b58 100644
--- a/Tools/scripts/README
+++ b/Tools/scripts/README
@@ -32,7 +32,6 @@ getpatch.sh - downloads patch attachments from a Bug Tracking Systems (plain she
gnomedepends - Analyse pkg/PLIST and give an advice as to which GNOME ports
should be listes in {RUN,LIB}_DEPENDS for this port
mark_safe.pl - utility to set subsets of ports to MAKE_JOBS_(UN)SAFE=yes
-mfh - Merge from head to a given branch
neededlibs.sh - Extract direct library dependencies from binaries.
portsearch - A utility for searching the ports tree. It allows more detailed
search criteria than ``make search key=<string>'' and accepts
diff --git a/Tools/scripts/mfh b/Tools/scripts/mfh
deleted file mode 100755
index 85427a48fe7e..000000000000
--- a/Tools/scripts/mfh
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/bin/sh
-#
-# mfh - Merge from head to a given branch
-#
-# Usage: mfh [<branch>] <revnumber> [<revnumber>]
-# <branch> is optional and defaults to latest branch
-# If supplying multiple revnumbers, put them in chronological order
-# (111111 111112 111113)
-#
-# Copyright 2013 Baptiste Daroussin
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-#
-# MAINTAINER= portmgr@FreeBSD.org
-
-set -eu
-
-LF=$(printf '\nX')
-LF=${LF%X}
-IFS="${LF}"
-
-# defaults from here ---------------------------
-
-: ${svnserver:="svn+ssh://repo.FreeBSD.org"}
-: ${EDITOR:=vi}
-
-# implementation from here ---------------------
-
-err() {
- echo "$@" >&2
- exit 1
-}
-
-ask() {
- question=${1}
-
- answer=x
- while [ "${answer}" != "y" -a "${answer}" != "n" ] ; do
- printf "%s [y/n] " "${question}"
- read -r answer
- done
-
- [ "${answer}" = "y" ] && return 0
- return 1
-}
-
-# -- find svn and diff coloring command --
-
-if [ -n "$(command -v svn 2>/dev/null)" ]; then
- svn=svn
-elif [ -n "$(command -v svnlite 2>/dev/null)" ]; then
- svn=svnlite
-else
- err "Neither svn(1) nor svnlite(1) found. Please install devel/subversion."
-fi
-
-latest_branch=$("${svn}" ls ${svnserver}/ports/branches/|sed -ne '/^2.*Q./s|/$||p'|tail -1)
-
-[ $# -lt 1 ] && err "$(basename "$0") requires at least 1 arguments: [<branch>] <revnumber> [<revnumber>...]"
-branch=$1
-
-if [ -n "$(command -v ydiff)" ] ; then cdiffcmd=ydiff
-elif [ -n "$(command -v colordiff)" ] ; then cdiffcmd=colordiff
-else cdiffcmd=cat
-fi
-
-# I sure hope by 2030 we'll be doing something else. Yes, famous last words.
-if expr -- "${branch}" : '20[12][0-9]Q[1-4]' > /dev/null; then
- shift
- if [ "${latest_branch}" != "${branch}" ]; then
- ask "/!\\ The latest branch is ${latest_branch}, do you really want to commit to ${branch}?" || exit 1
- fi
-else
- branch=${latest_branch}
-fi
-
-## -- parse revisions --
-
-for rev in "$@"
-do
- rev=${rev##r} # remove a leading "r"
- case ${rev} in
- ''|*[!-0-9]*) err "revision \"${rev}\" should be a number" ;;
- esac
-done
-
-## -- set up tmpdir and auto-clean --
-
-dir=$(mktemp -d /tmp/mfh.XXXXXX)
-trap "rc=\$? ; echo '+ rm -rf \"${dir}\"' ; rm -rf \"\${dir}\" ; trap - EXIT ; exit \$rc" EXIT INT QUIT TERM
-cd "${dir}"
-
-## -- check out, merge, generate commit log --
-
-printf "MFH:" > commit.txt
-for rev in "$@"
-do
- rev=${rev##r}
- printf " r%s" "${rev}" >> commit.txt
-done
-echo >> commit.txt
-
-# iterate over revisions to assemble dirlist (for checkout)
-# and accumulate log messages
-dirlist=""
-for rev in "$@"
-do
- rev=${rev##r}
- for f in $("${svn}" diff --summarize -c "r${rev}" "${svnserver}/ports/head"); do
- # ignore top-level filenames without slash
- case ${f} in
- */*) ;;
- *) continue ;;
- esac
- f=${f#*/ports/head/}
- # strip down f to the first two components (CATEGORY/PORTNAME),
- # so that if the MFH only addresses files/, we still get the
- # full port to review, and, for instance, bump PORTREVISION
- # separately if the patch was broken out from a larger lump.
- while :; do
- case ${f} in
- */*/*) f=${f%/*} ;;
- *) break ;;
- esac
- done
- dirlist="${dirlist}${f}${LF}"
- done
- "${svn}" log "-r${rev##-}" ${svnserver}/ports/head | sed '1,2d;$d;/^MFH:/d' \
- | sed '$d' >> commit.txt
-done
-dirlist=$(printf '%s' "${dirlist}" | sort -u | sed "s}^}${branch}/}")
-
-"${svn}" co --quiet --depth=empty ${svnserver}/ports/branches/"${branch}"
-"${svn}" up --parents --set-depth=infinity $dirlist
-"${svn}" up --quiet "${branch}"
-for rev in "$@"
-do
- rev=${rev##r}
- "${svn}" merge -c "r${rev}" ^/head/ "${branch}"
-done
-"${svn}" up --quiet "${branch}"
-
-## -- present final result to user --
-svnstat=$("${svn}" status "${branch}")
-if [ -z "${svnstat}" ] ; then
- err "The MFH came up empty - already merged? Wrong revision given?"
-fi
-
-echo
-printf '%s\n' "${svnstat}"
-"${svn}" diff "${branch}" | $cdiffcmd
-printf '\nSee the status/diff above: all the merge work was done on %s.\n' "${dir}/${branch}"
-ask "Do you want to commit? (no = start a shell)" || (
- echo "Dropping you to a shell so you can investigate. Exit the shell to resume this script."
- cd "${branch}"
- pwd
- su -m $(id -un) || :
- ask "Do you want to commit now? (no = clean up and abort)" || err "User-requested abort."
-)
-echo >> commit.txt
-
-## -- edit pre-assembled log message and commit --
-${EDITOR} commit.txt
-while ! "${svn}" ci -F commit.txt "${branch}"; do
- if ! ask "Commit failed. Re-edit message and try again?"; then
- save_log="$(mktemp -t mfh)"
- cp -f commit.txt "${save_log}"
- echo "Saving commit log to ${save_log}"
- break
- fi
- ${EDITOR} commit.txt
-done
-
-# the trap will clean up for us
-exit 0
diff --git a/Tools/scripts/psvn b/Tools/scripts/psvn
deleted file mode 100755
index 74368cdbd452..000000000000
--- a/Tools/scripts/psvn
+++ /dev/null
@@ -1,191 +0,0 @@
-#!/bin/sh -eu
-#
-# psvn - Wrapper to set Subversion properties automatically
-#
-# Copyright (c) 2012 Beat Gaetzi <beat@FreeBSD.org>
-# Copyright (c) 2012,2014 Matthias Andree <mandree@FreeBSD.org>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-#
-# $FreeBSD$
-#
-# MAINTAINER= mandree@FreeBSD.org
-# beat@ has implicit approval to change this script.
-#
-
-#
-# The psvn wrapper checkes from replaced, conflicting, missing or
-# untracked files. When committing it adds the needed Subversion
-# properties and removes unneeded ones.
-# There is also adds a check subcommand which just executes the
-# checks.
-#
-
-PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:${PATH}
-export PATH
-
-SVN="$(which svn)"
-LF="$(printf '\nX')"
-LF="${LF%X}"
-
-VERSION=$("${SVN}" --version --quiet | sed -e 's,^\(.*\)\.\(.*\)\..*,\1\2,')
-if [ ${VERSION} -lt 17 ] ;
-then
- echo "===> Please consider upgrading to Subversion 1.7 (or newer)"
-fi
-
-checkstatus () {
- local IFS _error _file _status _statusline -
- _error=0
- eval "set -- $@"
- IFS="$LF"
- set -- $("${SVN}" status -- "$@")
-
- for _statusline
- do
- _status="$(printf '%.7s' "${_statusline}")"
- _file="${_statusline##????????}"
-
- case "${_status}" in
- R*)
- printf >&2 '===> Do not replace files as this may lose history: "%s"\n' "${_file}"
- _error=1
- ;;
- C*|?C*)
- printf >&2 '===> Conflict detected: \"%s\"\n' "${_file}"
- _error=1
- ;;
- \~*)
- printf >&2 '===> Versioned item \"%s\" obstructed.\n' "${_file}"
- _error=1
- ;;
- \?*)
- printf >&2 '===> Untracked new file "%s". Consider svn adding or deleting it.\n' "${_file}"
- _error=1
- ;;
- \!*)
- printf >&2 '===> Missing file "%s". Consider re-adding or svn deleting it.\n' "${_file}"
- _error=1
- ;;
- esac
- done
-
- if [ ${_error} -ne 0 ] ;
- then
- exit 1
- fi
-}
-
-setprop () {
- local _file -
- eval "set -- $1"
-
- for _file
- do
- if [ -d "${_file}" -o ! -e "${_file}" ] ;
- then
- continue
- fi
- printf >&2 '=> Adding svn keywords to "%s"\n' "${_file}"
- case $(egrep -- '\$FreeBSD\$|\$[BDFSer]+:' "${_file}" >/dev/null || echo $?) in
- "") # matched pattern
- "${SVN}" -q -- propset svn:keywords "FreeBSD=%H" "${_file}"
- "${SVN}" -q -- propdel fbsd:nokeywords "${_file}"
- ;;
- 1) # no match
- "${SVN}" -q -- propset fbsd:nokeywords yes "${_file}"
- "${SVN}" -q -- propdel svn:keywords "${_file}"
- ;;
- *) # egrep failed
- exit 1
- ;;
- esac
- if [ "${_file##/*}" != "bsd.port.mk" ] ; then
- "${SVN}" -q -- propset svn:eol-style native "${_file}"
- fi
- "${SVN}" -q -- propset svn:mime-type text/plain "${_file}"
- "${SVN}" -q -- propdel cvs2svn:cvs-rev "${_file}"
- done
-}
-
-# taken from "Rich's sh (POSIX shell) tricks",
-# a "Programming Guide[...]" at http://www.etalabs.net/sh_tricks.html
-savearray() {
- for i do
- printf %s\\n "$i" | sed -e "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/"
- done
- echo " "
-}
-
-getfilequotedarray() {
- local varname IFS
- varname="$1"
- shift
- IFS="$LF"
- set -- $("${SVN}" status -- "$@" | grep -v '^ ' | sed 's/^....... //')
- eval "$varname=\$(savearray "\$@")"
-}
-
-for opt ; do
- case "${opt}" in
- -*) continue ;;
- esac
- case "${opt}" in
- check)
- shift
- if [ $# -gt 0 ] ; then
- echo >&2 "===> Unsupported option before, or garbage after command"
- exit 1
- fi
- getfilequotedarray "files" "$@"
- checkstatus "${files}"
- exit 0
- ;;
- ci|commit)
- savedargs=$(savearray "$@")
- shift
- while getopts :qm:F: opt
- do
- case "$opt" in
- q) ;;
- m) ;;
- F) ;;
- \?) echo >&2 "===> Unsupported option -$OPTARG encountered. Abort."
- exit 1 ;;
- :) echo >&2 "===> Missing argument to option -$OPTARG. Abort."
- exit 1 ;;
- esac
- done
- shift $(($OPTIND - 1))
-
- getfilequotedarray "files" "$@"
- checkstatus "${files}"
- setprop "${files}"
-
- eval "set -- $savedargs"
- exec "${SVN}" "$@"
- ;;
- *)
- exec "${SVN}" "$@"
- ;;
- esac
-done