]>
Commit | Line | Data |
---|---|---|
0b3acdf9 JB |
1 | #!/bin/sh |
2 | cd `rpm --eval %{_builddir}` | |
3 | ||
4 | # _noauto* wrapper for builtin rpm Provides generator | |
5 | # requires: /bin/sh, /usr/bin/rpmdeps, coreutils, findutils | |
6 | # input (stdin): filenames (one per line) | |
7 | # output (stdout): Provides list (one per line) | |
8 | ||
9 | # note that no large list is stored in shell variable - this was VERY slow | |
10 | ||
11 | ulimit -c 0 | |
12 | ||
13 | noprovfiles='' | |
14 | if [ -r __rpm_noautoprovfiles ]; then | |
15 | for i in `cat __rpm_noautoprovfiles`; do | |
16 | noprovfiles="${noprovfiles}\|${i}" | |
17 | done | |
18 | fi | |
19 | if [ -r /etc/rpm/noautoprovfiles ]; then | |
20 | for i in `cat /etc/rpm/noautoprovfiles | grep -v '^#'`; do | |
21 | noprovfiles="${noprovfiles}\|${i}" | |
22 | done | |
23 | fi | |
24 | ||
25 | noprov='' | |
26 | if [ -r __rpm_noautoprov ]; then | |
27 | for i in `cat __rpm_noautoprov`; do | |
28 | noprov="${noprov}\|${i}" | |
29 | done | |
30 | fi | |
31 | if [ -r /etc/rpm/noautoprov ]; then | |
32 | for i in `cat /etc/rpm/noautoprov | grep -v '^#'`; do | |
33 | noprov="${noprov}\|${i}" | |
34 | done | |
35 | fi | |
36 | ||
37 | # rpmdeps output seems sorted, but resort it in case of long list split | |
38 | grep -v -e "^\(${noprovfiles}\)\$" | tr '\n' '\0' | \ | |
39 | xargs -r -0 /usr/bin/rpmdeps --provides | LC_ALL=C sort -u | \ | |
40 | grep -v -e "^\(${noprov}\)\$" | |
41 | ||
42 | exit 0 |