libexec script summary2multi_variants was separated from pkg_src-summary
This commit is contained in:
parent
59bea19734
commit
d9f3353ff0
4 changed files with 55 additions and 56 deletions
|
@ -1,4 +1,4 @@
|
|||
@comment $NetBSD: PLIST,v 1.31 2011/01/02 21:37:42 cheusov Exp $
|
||||
@comment $NetBSD: PLIST,v 1.32 2011/11/09 14:19:01 cheusov Exp $
|
||||
bin/cvs_checksum
|
||||
bin/pkg_assignments2pkgpath
|
||||
bin/pkg_bin_summary
|
||||
|
@ -25,6 +25,7 @@ bin/pkg_update_summary
|
|||
libexec/psu/XB2bin_summary
|
||||
libexec/psu/direct_deps
|
||||
libexec/psu/get_processed_pkgs
|
||||
libexec/psu/summary2multi_variants
|
||||
man/man1/cvs_checksum.1
|
||||
man/man1/pkg_bin_summary.1
|
||||
man/man1/pkg_cleanup_distdir.1
|
||||
|
|
|
@ -16,7 +16,8 @@ BMAKE ?= /usr/bin/make
|
|||
|
||||
#############################################################
|
||||
|
||||
LIBEXECSCRIPTS = direct_deps XB2bin_summary get_processed_pkgs
|
||||
LIBEXECSCRIPTS = direct_deps XB2bin_summary get_processed_pkgs \
|
||||
summary2multi_variants
|
||||
|
||||
INSCRIPTS = pkg_cmp_summary pkg_list_all_pkgs
|
||||
INSCRIPTS += pkg_refresh_summary pkg_src_fetch_var
|
||||
|
|
|
@ -439,59 +439,6 @@ fi
|
|||
# multi-variant packages
|
||||
export PSS_FIELDS
|
||||
|
||||
summary2all_variants (){
|
||||
awk '
|
||||
$1 ~ /PKGPATH=/ {
|
||||
pkgpath = substr($0, 9)
|
||||
next
|
||||
}
|
||||
|
||||
$1 ~ /_VARIANTS=/ {
|
||||
variants = substr($0, 11)
|
||||
next
|
||||
}
|
||||
|
||||
NF == 0 {
|
||||
$0 = variants
|
||||
count = 0
|
||||
for (k=1; k <= NF; ++k){
|
||||
values = varname = $k
|
||||
sub(/=.*$/, "", varname)
|
||||
sub(/^[^=]*=/, "", values)
|
||||
|
||||
cnt = split(values, vals, /,/)
|
||||
|
||||
if (count){
|
||||
new_count = count
|
||||
for (i=1; i <= count; ++i){
|
||||
if (!(i in variant)) continue
|
||||
|
||||
for (j=1; j <= cnt; ++j){
|
||||
++new_count
|
||||
variant [new_count] = (variant [i] "," varname "=" vals [j])
|
||||
}
|
||||
delete variant [i]
|
||||
}
|
||||
count = new_count
|
||||
}else{
|
||||
for (j=1; j <= cnt; ++j){
|
||||
variant [j] = (varname "=" vals [j])
|
||||
}
|
||||
count = cnt
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 1; i <= count; ++i){
|
||||
if (i in variant)
|
||||
print pkgpath ":" variant [i]
|
||||
}
|
||||
pkgpath = variants = ""
|
||||
|
||||
delete variant
|
||||
}
|
||||
' "$@"
|
||||
}
|
||||
|
||||
if test "_$multi_var" = _2; then
|
||||
move_ASSIGNMENTS_to_PKGPATH (){
|
||||
pkg_assignments2pkgpath "$@"
|
||||
|
@ -512,7 +459,7 @@ if test "$multi_var"; then
|
|||
mv $normal_pkgs_fn $partial_summary_fn
|
||||
|
||||
runpipe0 \
|
||||
summary2all_variants < $multi_pkgs_fn '|' \
|
||||
$LIBEXECDIR/summary2multi_variants < $multi_pkgs_fn '|' \
|
||||
env _PSS_RECURS=1 $0 $with_xxx $make_plist '|' \
|
||||
move_ASSIGNMENTS_to_PKGPATH >> "$partial_summary_fn"
|
||||
fi
|
||||
|
|
50
pkg_summary-utils/files/summary2multi_variants.in
Executable file
50
pkg_summary-utils/files/summary2multi_variants.in
Executable file
|
@ -0,0 +1,50 @@
|
|||
#!/usr/bin/env runawk
|
||||
|
||||
$1 ~ /PKGPATH=/ {
|
||||
pkgpath = substr($0, 9)
|
||||
next
|
||||
}
|
||||
|
||||
$1 ~ /_VARIANTS=/ {
|
||||
variants = substr($0, 11)
|
||||
next
|
||||
}
|
||||
|
||||
NF == 0 {
|
||||
$0 = variants
|
||||
count = 0
|
||||
for (k=1; k <= NF; ++k){
|
||||
values = varname = $k
|
||||
sub(/=.*$/, "", varname)
|
||||
sub(/^[^=]*=/, "", values)
|
||||
|
||||
cnt = split(values, vals, /,/)
|
||||
|
||||
if (count){
|
||||
new_count = count
|
||||
for (i=1; i <= count; ++i){
|
||||
if (!(i in variant)) continue
|
||||
|
||||
for (j=1; j <= cnt; ++j){
|
||||
++new_count
|
||||
variant [new_count] = (variant [i] "," varname "=" vals [j])
|
||||
}
|
||||
delete variant [i]
|
||||
}
|
||||
count = new_count
|
||||
}else{
|
||||
for (j=1; j <= cnt; ++j){
|
||||
variant [j] = (varname "=" vals [j])
|
||||
}
|
||||
count = cnt
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 1; i <= count; ++i){
|
||||
if (i in variant)
|
||||
print pkgpath ":" variant [i]
|
||||
}
|
||||
pkgpath = variants = ""
|
||||
|
||||
delete variant
|
||||
}
|
Loading…
Reference in a new issue