summaryrefslogtreecommitdiff
path: root/ports-mgmt/portmk/scripts/options.sh
diff options
context:
space:
mode:
Diffstat (limited to 'ports-mgmt/portmk/scripts/options.sh')
-rw-r--r--ports-mgmt/portmk/scripts/options.sh299
1 files changed, 0 insertions, 299 deletions
diff --git a/ports-mgmt/portmk/scripts/options.sh b/ports-mgmt/portmk/scripts/options.sh
deleted file mode 100644
index ce3115e5d72a..000000000000
--- a/ports-mgmt/portmk/scripts/options.sh
+++ /dev/null
@@ -1,299 +0,0 @@
-#!/bin/sh -e
-#
-# Copyright (c) 2004 Oliver Eikemeier. 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.
-#
-# 3. Neither the name of the author nor the names of its contributors may be
-# used to endorse or promote products derived from this software without
-# specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED "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
-# COPYRIGHT OWNER 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.
-#
-# $FreeBSD$
-#
-# MAINTAINER= eik@FreeBSD.org
-#
-# These variables are referenced and must be exported from the Makefile:
-#
-# CURDIR
-# OBJDIR
-# MASTERDIR
-# OPTIONS_MASTER
-# OPTIONS_OVERRIDE
-# OPTIONS_FILE
-# OPTIONS_CMD
-# PKGNAME
-#
-
-# utilities
-
-LOCALBASE="${LOCALBASE:-/usr/local}"
-
-AWK=/usr/bin/awk
-CAT=/bin/cat
-CHMOD=/bin/chmod
-CP=/bin/cp
-CUT=/usr/bin/cut
-DIALOG=/usr/bin/dialog
-EXPR=/bin/expr
-FETCH=/usr/bin/fetch
-GREP=/usr/bin/grep
-LS=/bin/ls
-MKDIR='/bin/mkdir -p'
-MKTEMP=/usr/bin/mktemp
-MV=/bin/mv
-REALPATH=/bin/realpath
-RM=/bin/rm
-SED=/usr/bin/sed
-SETENV=/usr/bin/env
-SORT=/usr/bin/sort
-TR=/usr/bin/tr
-WC=/usr/bin/wc
-
-# global constants
-
-### utility functions ###
-
-###
-# do_create generates default options for a master (or override) options files
-###
-
-do_create()
-{
- local rc
-
- if [ -n "$OPTIONS_OVERRIDE" ]; then
- OVERRIDEFILE="$OPTIONS_DEFAULT"
- elif [ "$CURDIR" != `$REALPATH "$MASTERDIR"` ]; then
- if [ -f "$CURDIR/options" ]; then
- OVERRIDEFILE="$CURDIR/options"
- elif [ -n "$PKGNAMESUFFIX" -a -f "$MASTERDIR/options.${PKGNAMESUFFIX#-}" ]; then
- OVERRIDEFILE="$MASTERDIR/options.${PKGNAMESUFFIX#-}"
- else
- OVERRIDEFILE=
- fi
- else
- OVERRIDEFILE=
- fi
-
- if [ -n "$OPTIONS_MASTER" ]; then
- MASTERFILE="$OPTIONS_MASTER"
- elif [ -f "$MASTERDIR/options" ]; then
- MASTERFILE="$MASTERDIR/options"
- else
- echo ">> makeconfig: Can't find $MASTERDIR/options" >&2
- return 1
- fi
-
- if [ -n "$OVERRIDEFILE" ]; then
- SRCFILE="$OVERRIDEFILE"
- else
- SRCFILE="$MASTERFILE"
- fi
-
- if ! TMP_OPTIONS=`$MKTEMP -q "$SRCFILE.XXXXXX"`; then
- echo ">> makeconfig: Can't create temporary options file"
- return 1
- fi
-
- $SED -e '/^##/,$d' "$SRCFILE" > "$TMP_OPTIONS"
-
- echo "## AUTOMATICALLY GENERATED FILE - DO NOT CHANGE ANYTHING BELOW THIS LINE ##" >> "$TMP_OPTIONS"
- echo "# use \`make config' to edit the local configuration" >> "$TMP_OPTIONS"
- echo "# use \`make makeconfig' to edit the defaults (MAINTAINER only)" >> "$TMP_OPTIONS"
- echo >> "$TMP_OPTIONS"
-
- if $OPTIONS_CMD -p "default" -M "$MASTERFILE" -O "$OVERRIDEFILE" -o >> "$TMP_OPTIONS"; then
- $MV -f "$TMP_OPTIONS" "$SRCFILE"
- $CHMOD a+r "$SRCFILE"
- else
- $RM -f "$TMP_OPTIONS"
- fi
-
- return $rc
-}
-
-###
-# do_delete removes a saved configuration
-###
-
-do_delete()
-{
- local rc
-
- $RM -f "$OPTIONS_FILE"
-
- return $rc
-}
-
-###
-# do_edit edits a custom configuration
-###
-
-do_edit()
-{
- local rc
-
- OPTIONS_DIR="${OPTIONS_FILE%/*}"
- if [ ! -d "$OPTIONS_DIR" ] && ! $MKDIR "$OPTIONS_DIR"; then
- echo ">> config: Can't create $OPTIONS_DIR." 2>&1
- return 1
- fi
-
- if [ -n "$OPTIONS_OVERRIDE" ]; then
- OVERRIDE="$OPTIONS_DEFAULT"
- elif [ "$CURDIR" != `$REALPATH "$MASTERDIR"` ]; then
- if [ -f "$CURDIR/options" ]; then
- OVERRIDE="$CURDIR/options"
- elif [ -n "$PKGNAMESUFFIX" -a -f "$MASTERDIR/options.${PKGNAMESUFFIX#-}" ]; then
- OVERRIDE="$MASTERDIR/options.${PKGNAMESUFFIX#-}"
- else
- OVERRIDE=
- fi
- else
- OVERRIDE=
- fi
-
- if [ -n "$OPTIONS_MASTER" ]; then
- MASTER="$OPTIONS_MASTER"
- elif [ -f "$MASTERDIR/options" ]; then
- MASTER="$MASTERDIR/options"
- else
- echo ">> makeconfig: Can't find $MASTERDIR/options" >&2
- return 1
- fi
-
- TMP_OPTIONS=`$MKTEMP -t options`
-
- $OPTIONS_CMD -p "$PKGNAME" -M "$MASTER" -O "$OVERRIDE" -g "$OPTIONS_FILE" -e > "$TMP_OPTIONS"
-
- ${EDITOR:-/usr/bin/vi} "$TMP_OPTIONS"
-
- TMP_OPTIONS_FILE=`$MKTEMP -q "$OPTIONS_FILE.XXXXXX"`
- echo "## AUTOMATICALLY GENERATED FILE - DO NOT EDIT ##" > "$TMP_OPTIONS_FILE"
- $OPTIONS_CMD -p "$PKGNAME" -M "$MASTER" -O "$OVERRIDE" -g "$OPTIONS_FILE" -t "$TMP_OPTIONS" -o >> "$TMP_OPTIONS_FILE"
- $RM -f "$TMP_OPTIONS"
-
- $MV -f "$TMP_OPTIONS_FILE" "$OPTIONS_FILE"
- $CHMOD a+r "$OPTIONS_FILE"
-
- return $rc
-}
-
-###
-# do_graphical displays a menu to generate a custom configuration
-###
-
-do_graphical()
-{
- local rc
-
- if [ -n "$OPTIONS_OVERRIDE" ]; then
- OVERRIDE="$OPTIONS_DEFAULT"
- elif [ "$CURDIR" != `$REALPATH "$MASTERDIR"` ]; then
- if [ -f "$CURDIR/options" ]; then
- OVERRIDE="$CURDIR/options"
- elif [ -n "$PKGNAMESUFFIX" -a -f "$MASTERDIR/options.${PKGNAMESUFFIX#-}" ]; then
- OVERRIDE="$MASTERDIR/options.${PKGNAMESUFFIX#-}"
- else
- OVERRIDE=
- fi
- else
- OVERRIDE=
- fi
-
- if [ -n "$OPTIONS_MASTER" ]; then
- MASTER="$OPTIONS_MASTER"
- elif [ -f "$MASTERDIR/options" ]; then
- MASTER="$MASTERDIR/options"
- else
- echo ">> makeconfig: Can't find $MASTERDIR/options" >&2
- return 1
- fi
-
- TMP_OPTIONS=`$MKTEMP -t options`
-
- DIALOGRC=`$OPTIONS_CMD -p "$PKGNAME" -M "$MASTER" -O "$OVERRIDE" -g "$OPTIONS_FILE" -d`
-
- /bin/sh -c "$DIALOG --checklist \"Options for $PKGNAME\" 21 70 15 $DIALOGRC 2>\"$TMP_OPTIONS\""
-
- #TMP_OPTIONS_FILE=`$MKTEMP -q "$OPTIONS_FILE.XXXXXX"`
- #echo "## AUTOMATICALLY GENERATED FILE - DO NOT EDIT ##" > "$TMP_OPTIONS_FILE"
- #$OPTIONS_CMD -p "$PKGNAME" -M "$MASTER" -O "$OVERRIDE" -g "$OPTIONS_FILE" -t "$TMP_OPTIONS" -o >> "$TMP_OPTIONS_FILE"
- $CAT "$TMP_OPTIONS"
-
- $RM -f "$TMP_OPTIONS"
- #$MV -f "$TMP_OPTIONS_FILE" "$OPTIONS_FILE"
-
- return $rc
-}
-
-###
-# do_list lists the current configuration
-###
-
-do_list()
-{
- local rc
-
- return $rc
-}
-
-###
-# main
-###
-
-opt_create=false
-opt_delete=false
-opt_edit=false
-opt_graphical=false
-opt_list=false
-
-while getopts "cdegl" opt; do
- case "$opt" in
- c) opt_create=true;;
- d) opt_delete=true;;
- e) opt_edit=true;;
- g) opt_graphical=true;;
- l) opt_list=true;;
- ?) echo "Usage: $0 -cdegl"; exit 1;;
- esac
-done
-
-shift $(($OPTIND-1))
-
-$opt_create &&
- { do_create || exit 1; }
-
-$opt_delete &&
- { do_delete || exit 1; }
-
-$opt_edit &&
- { do_edit || exit 1; }
-
-$opt_graphical &&
- { do_graphical || exit 1; }
-
-$opt_list &&
- { do_list || exit 1; }
-
-exit 0