OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 18-Apr-2004 14:03:58
Branch: OPENPKG_2_0_SOLID Handle: 2004041813035700
Modified files: (Branch: OPENPKG_2_0_SOLID)
openpkg-src/openpkg HISTORY openpkg.sh openpkg.spec rpmpopt shtool
Log:
MFC: mass merge mostly all bugfixes and essential changes from CURRENT
to 2.0-SOLID
Summary:
Revision Changes Path
1.142.2.5 +14 -1 openpkg-src/openpkg/HISTORY
1.3.2.3 +161 -108 openpkg-src/openpkg/openpkg.sh
1.295.2.10 +11 -3 openpkg-src/openpkg/openpkg.spec
1.16.2.1 +1 -1 openpkg-src/openpkg/rpmpopt
1.18.2.1 +6 -6 openpkg-src/openpkg/shtool
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/HISTORY
============================================================================
$ cvs diff -u -r1.142.2.4 -r1.142.2.5 HISTORY
--- openpkg-src/openpkg/HISTORY 5 Apr 2004 20:01:01 -0000 1.142.2.4
+++ openpkg-src/openpkg/HISTORY 18 Apr 2004 12:03:57 -0000 1.142.2.5
@@ -2,12 +2,25 @@
2004
====
+20040418 **** RELEASE AS PART OF OPENPKG 2.0.2 ***
+20040418 port RPM to Tru64 5.1 (again) (excluded in 2.0.2)
+20040418 remove left-over object files from RPM distribution tarball before building
+20040418 use "openpkg lsync" consistently in lsync manual page (excluded in 2.0.2)
+20040414 fix "rpm --help" output related to option "--with"
+20040414 fix building of GNU tar by applying more "no iconv here" enforcement
(excluded in 2.0.2)
+20040409 removed old RPM extensions (now part of "openpkg-tools") (excluded in
2.0.2)
+20040409 worked-off <prefix>/bin/openpkg frontend in order to provide better tool
chain processing
+20040408 fixed internal OPENPKG_TOOLS variable processing in <prefix>/bin/openpkg
frontend
+20040408 added workaround to BeeCrypt build to make sure /dev/audio and /dev/dsp
are not used
+20040407 upgraded to GNU shtool 2.0b2
+20040406 upgraded to GNU tar 1.13.94 (excluded in 2.0.2)
+
20040405 **** RELEASE AS PART OF OPENPKG 2.0.1 ***
20040405 fix "openpkg man" command for embedded POD manual page rendering
20040403 fix tracking of GNU tar
20040401 fix "openpkg install openpkg-tool" bootstrapping command
20040324 fix %l_check_nosource: the output went directly into the shell scripts
-20040320 upgrade to cURL 7.11.1
+20040320 upgrade to cURL 7.11.1 (excluded in 2.0.1)
20040320 bump provide for 2.0.0-2.0.0
20040224 **** RELEASE AS PART OF OPENPKG 2.0.0 ***
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/openpkg.sh
============================================================================
$ cvs diff -u -r1.3.2.2 -r1.3.2.3 openpkg.sh
--- openpkg-src/openpkg/openpkg.sh 20 Feb 2004 13:52:47 -0000 1.3.2.2
+++ openpkg-src/openpkg/openpkg.sh 18 Apr 2004 12:03:57 -0000 1.3.2.3
@@ -30,26 +30,26 @@
## command line parsing
##
-# option defaults
+# command line options defaults
opt_prefix=""
opt_tools=""
opt_version=no
opt_help=no
-# iterate over argument line
+# process command line options by iterating over arguments
for opt
do
- case $opt in
- -*=*) arg=`echo "$opt" | sed 's/^[-_a-zA-Z0-9]*=//'` ;;
+ case "${opt}" in
+ -*=*) arg=`echo "${opt}" | sed 's/^[-_a-zA-Z0-9]*=//'` ;;
*) arg='' ;;
esac
- case $opt in
- -v|--version ) opt_version=yes ;;
- -h|--help ) opt_help=yes ;;
- --prefix=* ) opt_prefix="$arg" ;;
- --tools=* ) opt_tools="$arg" ;;
- -* ) echo "openpkg:ERROR: Invalid command-line option \"$opt\"." 1>&2
- echo "openpkg:ERROR: Run \"$0 --help\" for list of valid options"
1>&2; exit 1 ;;
+ case "${opt}" in
+ -v|--version ) opt_version=yes; shift ;;
+ -h|--help ) opt_help=yes; shift ;;
+ --prefix=* ) opt_prefix="${arg}"; shift ;;
+ --tools=* ) opt_tools="${arg}"; shift ;;
+ -* ) echo "openpkg:ERROR: Invalid command-line option \"${opt}\"." 1>&2
+ echo "openpkg:ERROR: Run \"${0} --help\" for list of valid options"
1>&2; exit 1 ;;
* ) break ;;
esac
done
@@ -59,89 +59,88 @@
##
# determine path to OpenPKG instance
-if [ ".$opt_prefix" != . ]; then
- OPENPKG_PREFIX="$opt_prefix"
-fi
-if [ ".$OPENPKG_PREFIX" = . ]; then
- OPENPKG_PREFIX="@l_prefix@"
-fi
-if [ ! -f "$OPENPKG_PREFIX/bin/openpkg" ]; then
- echo "openpkg:ERROR: no OpenPKG instance found under \"$OPENPKG_PREFIX\"" 1>&2
+openpkg_prefix="@l_prefix@"
+if [ ".${OPENPKG_PREFIX}" != . ]; then
+ openpkg_prefix="${OPENPKG_PREFIX}"
+fi
+if [ ".${opt_prefix}" != . ]; then
+ openpkg_prefix="${opt_prefix}"
+fi
+if [ -x "${openpkg_prefix}/bin/openpkg" -a -x
"${openpkg_prefix}/libexec/openpkg/rpm" ]; then
+ # OpenPKG 2.0 and higher
+ true
+elif [ -f "${openpkg_prefix}/bin/rpm" -a -x "${openpkg_prefix}/lib/openpkg/rpm" ];
then
+ # OpenPKG 1.x
+ echo "openpkg:ERROR: OpenPKG 1.x instance found under \"${openpkg_prefix}\"
(not supported)" 1>&2
+ exit 1
+else
+ echo "openpkg:ERROR: no OpenPKG instance found under \"${openpkg_prefix}\"" 1>&2
exit 1
fi
# allow convenient all-in-one specification of OpenPKG Tool Chain locations
-if [ ".$opt_tool" != . ]; then
- OPENPKG_TOOLS="$opt_tools"
+# (assuming the filesystem layout of an uninstalled OpenPKG Tool Chain)
+openpkg_tools="${OPENPKG_TOOLS}"
+openpkg_tools_cmdpath="${OPENPKG_TOOLS_CMDPATH}"
+openpkg_tools_apipath="${OPENPKG_TOOLS_APIPATH}"
+if [ ".${opt_tool}" != . ]; then
+ openpkg_tools="${opt_tools}"
fi
-if [ ".$OPENPKG_TOOLS" != . -a ".$OPENPKG_TOOLS_CMDPATH" = . ]; then
- OPENPKG_TOOLS_CMDPATH="$OPENPKG_TOOLS/cmd"
+if [ ".${openpkg_tools}" != . -a ".${openpkg_tools_cmdpath}" = . ]; then
+ openpkg_tools_cmdpath="${openpkg_tools}/cmd:@"
fi
-if [ ".$OPENPKG_TOOLS" != . -a ".$OPENPKG_TOOLS_APIPATH" = . ]; then
- OPENPKG_TOOLS_APIPATH="$OPENPKG_TOOLS/api"
+if [ ".${openpkg_tools}" != . -a ".${openpkg_tools_apipath}" = . ]; then
+ openpkg_tools_apipath="${openpkg_tools}/api:@"
fi
# determine path to OpenPKG Tool Chain commands
-cmdpath="$OPENPKG_PREFIX/libexec/openpkg"
-if [ -d "$OPENPKG_PREFIX/libexec/openpkg-tools" ]; then
+cmdpath="${openpkg_prefix}/libexec/openpkg"
+if [ -d "${openpkg_prefix}/libexec/openpkg-tools" ]; then
# openpkg-tools package overrides
- cmdpath="$OPENPKG_PREFIX/libexec/openpkg-tools:$cmdpath"
+ cmdpath="${openpkg_prefix}/libexec/openpkg-tools:${cmdpath}"
fi
-if [ ".$OPENPKG_TOOLS_CMDPATH" != . ]; then
+if [ ".${openpkg_tools_cmdpath}" != . ]; then
# user supplied path overrides
- cmdpath=`echo "$OPENPKG_TOOLS_CMDPATH" | sed -e "s;@;$cmdpath;"`
+ cmdpath=`echo "${openpkg_tools_cmdpath}" | sed -e "s;@;${cmdpath};"`
fi
-OPENPKG_TOOLS_CMDPATH=`echo "$cmdpath" | sed -e 's/::/:/g' -e 's/^://' -e 's/:$//'`
+openpkg_tools_cmdpath=`echo "${cmdpath}" | sed -e 's/::/:/g' -e 's/^://' -e
's/:$//'`
# determine path to OpenPKG Tool Chain API
apipath=""
-if [ -d "$OPENPKG_PREFIX/lib/openpkg-tools" ]; then
+if [ -d "${openpkg_prefix}/lib/openpkg-tools" ]; then
# openpkg-tools package overrides
- apipath="$OPENPKG_PREFIX/lib/openpkg-tools:$apipath"
+ apipath="${openpkg_prefix}/lib/openpkg-tools:${apipath}"
fi
-if [ ".$OPENPKG_TOOLS_APIPATH" != . ]; then
+if [ ".${openpkg_tools_apipath}" != . ]; then
# user supplied path overrides
- apipath=`echo "$OPENPKG_TOOLS_APIPATH" | sed -e "s;@;$apipath;"`
+ apipath=`echo "${openpkg_tools_apipath}" | sed -e "s;@;${apipath};"`
fi
-OPENPKG_TOOLS_APIPATH=`echo "$apipath" | sed -e 's/::/:/g' -e 's/^://' -e 's/:$//'`
-
-# export variables into environment
-export OPENPKG_PREFIX
-export OPENPKG_TOOLS
-export OPENPKG_TOOLS_CMDPATH
-export OPENPKG_TOOLS_APIPATH
+openpkg_tools_apipath=`echo "${apipath}" | sed -e 's/::/:/g' -e 's/^://' -e
's/:$//'`
##
-## determine command details and execute command appropriately
+## execute stand-alone option commands in advance
##
-# command line sanity check
-if [ $# -eq 0 ]; then
- echo "openpkg:ERROR: Invalid command-line arguments." 1>&2
- echo "openpkg:ERROR: Run \"$0 --help\" for list of valid arguments." 1>&2
- exit 1
-fi
-
# implement stand-alone "--help" option
-if [ ".$opt_help" = .yes ]; then
- release=`$OPENPKG_PREFIX/libexec/openpkg/rpm --eval '%{l_openpkg_release}'`
+if [ ".${opt_help}" = .yes ]; then
+ release=`${openpkg_prefix}/libexec/openpkg/rpm --eval '%{l_openpkg_release}'`
echo ""
- echo "This is $release <http://www.openpkg.org/>"
+ echo "This is ${release} <http://www.openpkg.org/>"
echo "Cross-Platform Unix Software Packaging Facility"
echo ""
echo "Copyright (c) 2000-2004 The OpenPKG Project <http://www.openpkg.org/>"
echo "Copyright (c) 2000-2004 Ralf S. Engelschall <[EMAIL PROTECTED]>"
echo "Copyright (c) 2000-2004 Cable & Wireless <http://www.cw.com/>"
echo ""
- echo "The command \"@l_prefix@/bin/openpkg\" is the official command-line"
+ echo "The command \"${openpkg_prefix}/bin/openpkg\" is the official
command-line"
echo "execution frontend of the OpenPKG tool chain. Its usage is:"
echo ""
- echo " \$ @l_prefix@/bin/openpkg [<option> ...] \\"
+ echo " \$ ${openpkg_prefix}/bin/openpkg [<option> ...] \\"
echo " <command> [<command-option> ...] [<command-argument> ...]"
echo ""
echo "where <option> is one of the following global options:"
- echo " -p, --prefix sets the OpenPKG instance prefix (also:
\$OPENPKG_PREFIX)"
- echo " -t, --tools sets the OpenPKG tool chain prefix (also:
\$OPENPKG_TOOLS)"
+ echo " -p, --prefix sets the OpenPKG instance prefix (also:
\${OPENPKG_PREFIX})"
+ echo " -t, --tools sets the OpenPKG tool chain prefix (also:
\${OPENPKG_TOOLS})"
echo " -v, --version display OpenPKG version/release"
echo " -h, --help display this usage help message"
echo ""
@@ -155,90 +154,144 @@
echo " lsync (provided by bootstrap package)"
echo " man (provided by bootstrap package)"
# install command intentionally left out in above display!
+
+ # dynamically figure out add-on commands
for cmd in rpm rpmbuild rpm2cpio rpm-config uuid rc lsync man install; do
- id=`echo "$cmd" | sed -e 's/-/_/g'`
- eval "__cmd_seen_$id=yes"
+ id=`echo "${cmd}" | sed -e 's/-/_/g'`
+ eval "__cmd_seen_${id}=yes"
done
- OIFS="$IFS"; IFS=":"
- for dir in $OPENPKG_TOOLS_CMDPATH; do
- IFS="$OIFS"
- for cmd in `cd $dir 2>&1 && echo *`; do
- cmd=`echo "$cmd" | sed -e 's/\.sh$//' -e 's/\.pl$//' -e 's;^;X;' -e
's;^X\([a-zA-Z][a-zA-Z0-9_-]*\)$;\1;' -e 's;^X.*$;;'`
- if [ ".$cmd" != . ]; then
- id=`echo "$cmd" | sed -e 's/-/_/g' -e 's/\.sh$//' -e 's/\.pl$//'`
- eval "seen=\$__cmd_seen_$id"
- if [ ".$seen" != .yes ]; then
- echo "$cmd" | awk '{ printf(" %-15s (provided by addon
package)\n", $0); }'
+ OIFS="${IFS}"; IFS=":"
+ for dir in ${openpkg_tools_cmdpath}; do
+ IFS="${OIFS}"
+ if [ ! -d ${dir} ]; then
+ continue
+ fi
+ for cmd in `cd ${dir} 2>/dev/null && echo *`; do
+ name=`echo "${cmd}" | sed -e 's/\.sh$//' -e 's/\.pl$//' \
+ -e 's/^/X/' -e 's/^X\([a-z][a-zA-Z0-9_-]*\)$/\1/' -e 's/^X.*$//'`
+ if [ ".${name}" != . ]; then
+ if [ -f ${dir}/${cmd} ]; then
+ id=`echo "${name}" | sed -e 's/-/_/g'`
+ eval "seen=\$__cmd_seen_${id}"
+ if [ ".${seen}" != .yes ]; then
+ echo "${name}" | awk '{ printf(" %-15s (provided by add-on
package)\n", $0); }'
+ eval "__cmd_seen_${id}=yes"
+ fi
fi
fi
done
done
- IFS="$OIFS"
+ IFS="${OIFS}"
echo ""
echo "where <command-option> and <command-argument> are <command> specific"
- echo "options and arguments. Run \"@l_prefix@/bin/openpkg <command> --help\""
- echo "and \"@l_prefix@/bin/openpkg man <command>\" for more details."
+ echo "options and arguments. Run \"${openpkg_prefix}/bin/openpkg <command>
--help\""
+ echo "and \"${openpkg_prefix}/bin/openpkg man <command>\" for more details."
echo ""
exit 0
fi
# implement stand-alone "--version" option
-if [ ".$opt_version" = .yes ]; then
- release=`$OPENPKG_PREFIX/libexec/openpkg/rpm --eval '%{l_openpkg_release}'`
- version=`$OPENPKG_PREFIX/libexec/openpkg/rpm -q --qf '%{version}' openpkg`
- echo "$release ($version)"
+if [ ".${opt_version}" = .yes ]; then
+ release=`${openpkg_prefix}/libexec/openpkg/rpm --eval '%{l_openpkg_release}'`
+ version=`${openpkg_prefix}/libexec/openpkg/rpm -q --qf '%{version}' openpkg`
+ echo "${release} (${version})"
exit 0
fi
-# iterate over all command directories
-cmd="$1"
+##
+## determine command details and execute command appropriately
+##
+
+# command line sanity check
+if [ ${#} -eq 0 ]; then
+ echo "openpkg:ERROR: Invalid command-line arguments." 1>&2
+ echo "openpkg:ERROR: Run \"${openpkg_prefix}/bin/openpkg --help\" for list of
valid arguments." 1>&2
+ exit 1
+fi
+
+# search command by iterating over all command directories
+cmd="${1}"
shift
cmd_path=""
cmd_shell=""
-OIFS="$IFS"; IFS=":"
-for dir in $OPENPKG_TOOLS_CMDPATH; do
- IFS="$OIFS"
- if [ -x "$dir/$cmd" ]; then
+cmd_stack="${OPENPKG_TOOLS_CMDSTACK}"
+OIFS="${IFS}"; IFS=":"
+for dir in ${openpkg_tools_cmdpath}; do
+ IFS="${OIFS}"
+
+ # skip (currently) not existing directory
+ if [ ! -d ${dir} ]; then
+ continue
+ fi
+
+ # check for various command implementations
+ if [ -x ${dir}/${cmd} ]; then
# found executable stand-alone binary
- cmd_path="$dir/$cmd"
+ cmd_path="${dir}/${cmd}"
cmd_shell=""
- break
- elif [ -f "$dir/$cmd.sh" ]; then
+ elif [ -f ${dir}/${cmd}.sh ]; then
# found non-executable Bourne-Shell script
- cmd_path="$dir/$cmd.sh"
- cmd_shell="$OPENPKG_PREFIX/lib/openpkg/bash"
- break
- elif [ -f "$dir/$cmd.pl" ]; then
+ cmd_path="${dir}/${cmd}.sh"
+ cmd_shell="${openpkg_prefix}/lib/openpkg/bash"
+ elif [ -f ${dir}/${cmd}.pl ]; then
# found non-executable Perl script
- cmd_path="$dir/$cmd.pl"
- if [ -x "$OPENPKG_PREFIX/bin/perl" ]; then
- cmd_shell="$OPENPKG_PREFIX/bin/perl"
+ cmd_path="${dir}/${cmd}.pl"
+ if [ -x ${openpkg_prefix}/bin/perl ]; then
+ cmd_shell="${openpkg_prefix}/bin/perl"
else
- cmd_shell=`$OPENPKG_PREFIX/lib/openpkg/shtool path -m perl 2>&1`
- if [ ".$cmd_shell" = . ]; then
- echo "openpkg:ERROR: No Perl interpreter found in \$PATH" 1>&2
+ cmd_shell=`${openpkg_prefix}/lib/openpkg/shtool path -m perl 2>&1`
+ if [ ".${cmd_shell}" = . ]; then
+ echo "openpkg:ERROR: No Perl interpreter found in \${PATH}" 1>&2
exit 1
fi
fi
- # provide module include path(s) to API
- OIFS="$IFS"; IFS=":"
- for dir2 in $OPENPKG_TOOLS_APIPATH; do
- IFS="$OIFS"
- cmd_shell="$cmd_shell -I$dir2"
+ # provide Perl module include path(s) to API
+ OIFS="${IFS}"; IFS=":"
+ for dir2 in ${openpkg_tools_apipath}; do
+ IFS="${OIFS}"
+ if [ ! -d ${dir2} ]; then
+ continue
+ fi
+ cmd_shell="${cmd_shell} -I${dir2}"
done
- IFS="$OIFS"
+ IFS="${OIFS}"
+ else
+ # command not found, continue searching
+ continue
+ fi
+
+ # check whether to use this found command or to continue searching
+ # for next command implementation in sequence (in order to support
+ # flexible nested command wrapping)
+ cmd_last=`echo "${cmd_stack}" | sed -e 's;:.*$;;'`
+ if [ ".${cmd_last}" = ".${cmd}" ]; then
+ # we were last command on stack, so pop us from call
+ # stack and continue searching for next implementation
+ cmd_stack=`echo "${cmd_stack}" | sed -e 's;^[^:][^:]*:*;;'`
+ continue
+ else
+ # last command on stack was different, so stop
+ # searching because we found the implementation
break
fi
done
-IFS="$OIFS"
-if [ ".$cmd_path" = . ]; then
- echo "openpkg:ERROR: No such command \"$cmd\" found in command path" 1>&2
- echo "openpkg:ERROR: ($OPENPKG_TOOLS_CMDPATH)." 1>&2
- echo "openpkg:ERROR: Set \$OPENPKG_TOOLS_CMDPATH appropriately." 1>&2
- echo "openpkg:ERROR: Run \"$0 --help\" for list of valid commands." 1>&2
+IFS="${OIFS}"
+
+# sanity check search result
+if [ ".${cmd_path}" = . ]; then
+ echo "openpkg:ERROR: No such command \"${cmd}\" found in command path" 1>&2
+ echo "openpkg:ERROR: (${openpkg_tools_cmdpath})." 1>&2
+ echo "openpkg:ERROR: Set \${OPENPKG_TOOLS_CMDPATH} appropriately." 1>&2
+ echo "openpkg:ERROR: Run \"${openpkg_prefix}/bin/openpkg --help\" for list of
valid commands." 1>&2
exit 1
fi
+# export essential run-time information to command
+export OPENPKG_PREFIX="$openpkg_prefix"
+export OPENPKG_TOOLS_CMDPROG="${0}"
+export OPENPKG_TOOLS_CMDNAME="${cmd}"
+export OPENPKG_TOOLS_CMDSTACK=`echo "${OPENPKG_TOOLS_CMDSTACK}" | sed -e
's;^\(.\);:\1;' -e "s;^;${cmd};"`
+
# execute command
-eval "exec $cmd_shell $cmd_path \${1+\"[EMAIL PROTECTED]"}"
+eval "exec ${cmd_shell} ${cmd_path} \${1+\"[EMAIL PROTECTED]"}"
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/openpkg.spec
============================================================================
$ cvs diff -u -r1.295.2.9 -r1.295.2.10 openpkg.spec
--- openpkg-src/openpkg/openpkg.spec 5 Apr 2004 20:01:01 -0000 1.295.2.9
+++ openpkg-src/openpkg/openpkg.spec 18 Apr 2004 12:03:57 -0000 1.295.2.10
@@ -39,7 +39,7 @@
# o any cc(1)
# the package version/release
-%define V_openpkg 2.0.1
+%define V_openpkg 2.0.2
# the used software versions
%define V_rpm 4.2.1
@@ -140,7 +140,7 @@
AutoReq: no
AutoReqProv: no
Provides: OpenPKG
-Provides: openpkg = 20040405-20040405
+Provides: openpkg = 20040418-20040418
%description
This is the bootstrap package for the RPM-based Unix Software
@@ -556,7 +556,7 @@
sh $shtool subst \
-e 's;^rm conftest\.sed;rm -f conftest.sed;' \
configure
- CC="${l_cc}"
+ CC="${l_cc}" \
../bash-%{V_bash}/bash \
./configure \
--config-cache \
@@ -626,9 +626,13 @@
# build BeeCrypt library
( cd beecrypt-%{V_beecrypt}
+ ( echo 'ac_cv_have_dev_dsp=no'
+ echo 'ac_cv_have_dev_audio=no'
+ ) >config.cache
CC="${l_cc}" \
CFLAGS="-O" \
./configure \
+ --cache-file=./config.cache \
--prefix=%{l_prefix} \
--disable-threads \
--disable-shared \
@@ -644,6 +648,10 @@
# build RPM
( br=`pwd`
cd rpm-%{V_rpm}
+
+ # remove object files accidentally distributed with the RPM tarball
+ rm -f db/build_unix/*.o
+ rm -f db/build_unix/*.lo
# remove embedded zlib (we are linking with an external one)
rm -rf zlib
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/rpmpopt
============================================================================
$ cvs diff -u -r1.16 -r1.16.2.1 rpmpopt
--- openpkg-src/openpkg/rpmpopt 6 Feb 2004 08:43:28 -0000 1.16
+++ openpkg-src/openpkg/rpmpopt 18 Apr 2004 12:03:57 -0000 1.16.2.1
@@ -46,7 +46,7 @@
# RPM extension: "rpm --with[out] <name>"
rpm alias --with --define "with_!#:+ yes" \
- --POPTdesc=$"set '%option <name> yes'" \
+ --POPTdesc=$"set '%option with_<name> yes'" \
--POPTargs=$"<name>"
rpm alias --without --define "with_!#:+ no" \
--POPTdesc=$"set '%option with_<name> no'" \
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/shtool
============================================================================
$ cvs diff -u -r1.18 -r1.18.2.1 shtool
--- openpkg-src/openpkg/shtool 18 Feb 2004 10:05:25 -0000 1.18
+++ openpkg-src/openpkg/shtool 18 Apr 2004 12:03:57 -0000 1.18.2.1
@@ -6,7 +6,7 @@
## See http://www.gnu.org/software/shtool/ for more information.
## See ftp://ftp.gnu.org/gnu/shtool/ for latest version.
##
-## Version: 2.0b1 (18-Feb-2004)
+## Version: 2.0b2 (07-Apr-2004)
## Contents: all available modules
##
@@ -65,7 +65,7 @@
exit 1
fi
if [ ".$1" = ".-h" ] || [ ".$1" = ".--help" ]; then
- echo "This is GNU shtool, version 2.0b1 (18-Feb-2004)"
+ echo "This is GNU shtool, version 2.0b2 (07-Apr-2004)"
echo "Copyright (c) 1994-2004 Ralf S. Engelschall <[EMAIL PROTECTED]>"
echo "Report bugs to <[EMAIL PROTECTED]>"
echo ''
@@ -131,7 +131,7 @@
exit 0
fi
if [ ".$1" = ".-v" ] || [ ".$1" = ".--version" ]; then
- echo "GNU shtool 2.0b1 (18-Feb-2004)"
+ echo "GNU shtool 2.0b2 (07-Apr-2004)"
exit 0
fi
if [ ".$1" = ".-r" ] || [ ".$1" = ".--recreate" ]; then
@@ -454,7 +454,7 @@
# parse option alias string
eval `echo h:help,$opt_alias |\
- tr 'x-' 'x_' | sed -e 's/\([a-zA-Z0-9]\):\([^,]*\),*/opt_ALIAS_\2=\1;/g'`
+ sed -e 's/-/_/g' -e 's/\([a-zA-Z0-9]\):\([^,]*\),*/opt_ALIAS_\2=\1;/g'`
# interate over argument line
opt_PREV=''
@@ -479,12 +479,12 @@
--[a-zA-Z0-9]*=*)
eval `echo "x$1" |\
sed -e
's/^x--\([a-zA-Z0-9-]*\)=\(.*\)$/opt_OPT="\1";opt_ARG="\2"/'`
- opt_STR=`echo $opt_OPT | tr 'x-' 'x_'`
+ opt_STR=`echo $opt_OPT | sed -e 's/-/_/g'`
eval "opt_OPT=\${opt_ALIAS_${opt_STR}-${opt_OPT}}"
;;
--[a-zA-Z0-9]*)
opt_OPT=`echo "x$1" | cut -c4-`
- opt_STR=`echo $opt_OPT | tr 'x-' 'x_'`
+ opt_STR=`echo $opt_OPT | sed -e 's/-/_/g'`
eval "opt_OPT=\${opt_ALIAS_${opt_STR}-${opt_OPT}}"
opt_ARG=''
;;
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]