+++ /dev/null
-#!/bin/sh
-
-# _noauto* wrapper for builtin rpm Provides generator
-# requires: /bin/sh, /usr/bin/rpmdeps, coreutils, findutils
-# input (stdin): filenames (one per line)
-# output (stdout): Provides list (one per line)
-
-# note that no large list is stored in shell variable - this was VERY slow
-
-ulimit -c 0
-
-PERLOPT="--define=__perl_provides /bin/sh -c 'cat >/dev/null'"
-PERLOPT2="--define=__perl_requires /bin/sh -c 'cat >/dev/null'"
-PHPOPT="--define=__php_provides /bin/sh -c 'cat >/dev/null'"
-PHPOPT2="--define=__php_requires /bin/sh -c 'cat >/dev/null'"
-noprovfiles=''
-noprov=''
-buildroot=''
-while [ $# -gt 0 ]; do
- case "$1" in
- --with-perl)
- PERLOPT=""
- PERLOPT2=""
- ;;
- --with-php)
- PHPOPT=""
- PHPOPT2=""
- ;;
- --buildroot=*)
- buildroot="${1#--buildroot=}"
- ;;
- --noautoprovfiles=*)
- for i in ${1#--noautoprovfiles=} ; do
- noprovfiles="${noprovfiles}\|${buildroot}${i}"
- done
- ;;
- --noautoprov=*)
- for i in ${1#--noautoprov=} ; do
- noprov="${noprov}\|${i}"
- done
- esac
- shift
-done
-
-if [ -r /etc/rpm/noautoprovfiles ]; then
- for i in `cat /etc/rpm/noautoprovfiles | grep -v '^#'`; do
- noprovfiles="${noprovfiles}\|${buildroot}${i}"
- done
-fi
-
-if [ -r /etc/rpm/noautoprov ]; then
- for i in `cat /etc/rpm/noautoprov | grep -v '^#'`; do
- noprov="${noprov}\|${i}"
- done
-fi
-
-# rpmdeps output seems sorted, but resort it in case of long list split
-grep -v -e "^\(${noprovfiles}\)\$" | tr '\n' '\0' | \
- xargs -r -0 /usr/bin/rpmdeps "${PERLOPT}" "${PERLOPT2}" \
- "${PHPOPT}" "${PHPOPT2}" --provides | \
- LC_ALL=C sort -u | grep -v -e "^\(${noprov}\)\$"
-
-exit 0
+++ /dev/null
-#!/bin/sh
-
-# _noauto* wrapper for builtin rpm Requires generator
-# requires: /bin/sh, /usr/bin/rpmdeps, rpm, coreutils, findutils. mktemp
-# input (stdin): filenames (one per line)
-# output (stdout): Requires list (one per line)
-
-# note that no large list is stored in shell variable - this was VERY slow
-
-ulimit -c 0
-
-PERLOPT="--define=__perl_requires /bin/sh -c 'cat >/dev/null'"
-PERLOPT2="--define=__perl_provides /bin/sh -c 'cat >/dev/null'"
-PHPOPT="--define=__php_requires /bin/sh -c 'cat >/dev/null'"
-PHPOPT2="--define=__php_provides /bin/sh -c 'cat >/dev/null'"
-PROVARG=""
-NOPROVFILES=""
-NOPROV=""
-noreqfiles=''
-noreq=''
-noreqdep=''
-while [ $# -gt 0 ]; do
- case "$1" in
- --with-perl)
- PERLOPT=""
- PERLOPT2=""
- PROVARG="$PROVARG --with-perl"
- ;;
- --with-php)
- PHPOPT=""
- PHPOPT2=""
- PROVARG="$PROVARG --with-php"
- ;;
- --buildroot=*)
- buildroot="${1#--buildroot=}"
- PROVARG="$PROVARG $1"
- ;;
- --noautoprovfiles=*)
- NOPROVFILES="$1"
- ;;
- --noautoprov=*)
- NOPROV="$1"
- ;;
- --noautoreqfiles=*)
- for i in ${1#--noautoreqfiles=} ; do
- noreqfiles="${noreqfiles}\|${buildroot}${i}"
- done
- ;;
- --noautoreq=*)
- for i in ${1#--noautoreq=} ; do
- noreq="${noreq}\|${i}"
- done
- ;;
- --noautoreqdep=*)
- for i in ${1#--noautoreqdep=} ; do
- noreqdep="${noreqdep}\|${i}"
- done
- esac
- shift
-done
-
-if [ -r /etc/rpm/noautoreqfiles ]; then
- for i in `cat /etc/rpm/noautoreqfiles | grep -v '^#'`; do
- noreqfiles="${noreqfiles}\|${buildroot}${i}"
- done
-fi
-
-if [ -r /etc/rpm/noautoreq ]; then
- for i in `cat /etc/rpm/noautoreq | grep -v '^#'`; do
- noreq="${noreq}\|${i}"
- done
-fi
-
-if [ -r /etc/rpm/noautoreqdep ]; then
- for i in `cat /etc/rpm/noautoreqdep | grep -v '^#'`; do
- noreqdep="${noreqdep}\|${i}"
- done
-fi
-
-FILES=`mktemp ${TMPDIR:-/tmp}/.rpmfilesXXXXXX`
-PROVS=`mktemp ${TMPDIR:-/tmp}/.rpmprovsXXXXXX`
-REQS=`mktemp ${TMPDIR:-/tmp}/.rpmreqsXXXXXX`
-
-# we must duplicate file list here (to remove Provides list from Requires)
-tee ${FILES} | \
- /usr/lib/rpm/find-provides-wrapper ${PROVARG} "${NOPROVFILES}" "${NOPROV}" \
- > ${PROVS}
-
-# rpmdeps output seems sorted, but resort it in case of long list split
-grep -v -e "^\(${noreqfiles}\)\$" ${FILES} | tr '\n' '\0' | \
- xargs -r -0 /usr/bin/rpmdeps "${PERLOPT}" "${PERLOPT2}" \
- "${PHPOPT}" "${PHPOPT2}" --requires | \
- LC_ALL=C sort -u | grep -v -e "^\(${noreq}\)\$" | \
- LC_ALL=C comm -2 -3 - ${PROVS} | tee ${REQS}
-
-# package names only for SONAMES, perl(module) and pear(module)
-grep -e '.\+\.so\|perl(.\+)\|pear(.\+)' ${REQS} | \
- grep -v -e "^\(${noreqdep}\)\$" | tr '\n' '\0' | \
- LC_ALL=C xargs -r -0 -- rpm -q --whatprovides --qf '%{NAME}\n' 2>/dev/null | \
- grep -v "no package provides" | LC_ALL=C sort -u
-
-rm -f ${FILES} ${PROVS} ${REQS}
-
-exit 0
+++ /dev/null
---- rpm-4.3/macros.in.orig 2003-06-25 23:53:55.000000000 +0200
-+++ rpm-4.3/macros.in 2003-06-25 23:58:35.000000000 +0200
-@@ -321,7 +321,9 @@
-
- #
- # Use internal dependency generator rather than external helpers?
--%_use_internal_dependency_generator 1
-+# note: we wrap around internal generator (invoked by rpmdeps) to
-+# postprocess provides/requires lists and apply _noauto*
-+%_use_internal_dependency_generator 0
-
- #
- # Path to scripts to autogenerate package dependencies,
-@@ -329,8 +331,12 @@
- # Note: Used iff _use_internal_dependency_generator is zero.
- #%__find_provides @RPMCONFIGDIR@/rpmdeps --provides
- #%__find_requires @RPMCONFIGDIR@/rpmdeps --requires
--%__find_provides @RPMCONFIGDIR@/find-provides
--%__find_requires @RPMCONFIGDIR@/find-requires
-+# these are ELF-only generators
-+#%__find_provides @RPMCONFIGDIR@/find-provides
-+#%__find_requires @RPMCONFIGDIR@/find-requires
-+# rpmdeps wrappers
-+%__find_provides @RPMCONFIGDIR@/find-provides-wrapper%{?_perl_deps: --with-perl}%{?_php_deps: --with-php}%{?_noautoprovfiles:%{?buildroot: --buildroot='%{buildroot}'} --noautoprovfiles='%{_noautoprovfiles}'}%{?_noautoprov: --noautoprov='%{_noautoprov}'}
-+%__find_requires @RPMCONFIGDIR@/find-requires-wrapper%{?_perl_deps: --with-perl}%{?_php_deps: --with-php}%{?buildroot: --buildroot='%{buildroot}'}%{?_noautoprovfiles: --noautoprovfiles='%{_noautoprovfiles}'}%{?_noautoprov: --noautoprov='%{_noautoprov}'}%{?_noautoreqfiles: --noautoreqfiles='%{_noautoreqfiles}'}%{?_noautoreq: --noautoreq='%{_noautoreq}'}%{?_noautoreqdep: --noautoreqdep='%{_noautoreqdep}'}
- #%__find_conflicts ???
- #%__find_obsoletes ???
-