1 |
commit: 61bb1d8c568187e0393bc32d78d5972f8245cae9 |
2 |
Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Jan 9 11:19:16 2017 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jan 9 12:43:29 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/java-ebuilder.git/commit/?id=61bb1d8c |
7 |
|
8 |
movl: refresh ebuilds and only digest 1 ebuild. |
9 |
|
10 |
scripts/movl | 34 +++++++++++++++++++++++++++++----- |
11 |
1 file changed, 29 insertions(+), 5 deletions(-) |
12 |
|
13 |
diff --git a/scripts/movl b/scripts/movl |
14 |
index 231ab5d..efc31c7 100755 |
15 |
--- a/scripts/movl |
16 |
+++ b/scripts/movl |
17 |
@@ -1,5 +1,6 @@ |
18 |
#!/bin/bash |
19 |
-source /etc/java-ebuilder.conf |
20 |
+source "/etc/java-ebuilder.conf" |
21 |
+tsh="/usr/lib/java-ebuilder/tree.sh" |
22 |
|
23 |
clean-maven() { |
24 |
rm -f "${CACHEDIR}"/maven-cache |
25 |
@@ -21,6 +22,27 @@ clean() { |
26 |
clean-maven |
27 |
} |
28 |
|
29 |
+rrdep() { |
30 |
+ # regenerate reverse dependencies |
31 |
+ for rdep in $(egrep -l "$1.*->" -r "${MAVEN_OVERLAY_DIR}"/app-maven); do |
32 |
+ [[ ${rdep} = *.ebuild ]] && "${tsh}" ${rdep} |
33 |
+ done |
34 |
+} |
35 |
+ |
36 |
+refresh() { |
37 |
+ if [[ $1=*:* ]]; then |
38 |
+ rrdep $1 |
39 |
+ else |
40 |
+ # input: package name |
41 |
+ for ebd in "${MAVEN_OVERLAY_DIR}"/app-maven/$1/*.ebuild; do |
42 |
+ mid=$(sed -nr 's,^MAVEN_ID="(.*)",\1,p' "${ebd}") |
43 |
+ rm "${ebd}"; "${tsh}" ${mid} |
44 |
+ sed "/${mid}/d" -i "${CACHEDIR}"/maven-cache |
45 |
+ rrdep ${mid} |
46 |
+ done |
47 |
+ fi |
48 |
+} |
49 |
+ |
50 |
build() { |
51 |
: ${PORTDIR:=$(portageq get_repo_path $(portageq envvar EROOT) gentoo)} |
52 |
: ${PORTAGE_TMPDIR:=$(portageq envvar PORTAGE_TMPDIR)} |
53 |
@@ -51,18 +73,20 @@ build() { |
54 |
fi |
55 |
|
56 |
for M in ${MAVEN_ARTS}; do |
57 |
- /usr/lib/java-ebuilder/tree.sh ${M} |
58 |
+ "${tsh}" ${M} |
59 |
done |
60 |
|
61 |
- ls -1 "${MAVEN_OVERLAY_DIR}"/app-maven/*/*.ebuild | parallel ebuild {} digest |
62 |
+ cd "${MAVEN_OVERLAY_DIR}"/app-maven |
63 |
+ parallel ebuild '$(echo {}/*.ebuild | cut -d\ -f1)' digest ::: * |
64 |
} |
65 |
|
66 |
if [[ $# -gt 0 ]]; then |
67 |
- funcs=$@ |
68 |
+ funcs=$1 |
69 |
+ shift 1 |
70 |
else |
71 |
funcs=build |
72 |
fi |
73 |
|
74 |
for func in ${funcs}; do |
75 |
- ${func} |
76 |
+ ${func} $@ |
77 |
done |