Check architecture specific fields for VCS support

Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Allan McRae 2014-12-22 10:34:53 +10:00
parent a7c1b7a914
commit ec679e09b2
1 changed files with 13 additions and 3 deletions

View File

@ -2896,7 +2896,7 @@ get_vcsclient() {
}
check_vcs_software() {
local ret=0
local all_sources all_deps deps ret=0
if (( SOURCEONLY == 1 )); then
# we will not download VCS sources
@ -2908,7 +2908,17 @@ check_vcs_software() {
return $ret
fi
for netfile in ${source[@]}; do
# we currently only use global depends/makedepends arrays for --syncdeps
for attr in depends makedepends; do
pkgbuild_get_attribute "$pkg" "$attr" 1 'deps'
all_deps+=("${deps[@]}")
pkgbuild_get_attribute "$pkg" "${attr}_$CARCH" 1 'deps'
all_deps+=("${deps[@]}")
done
get_all_sources_for_arch 'all_sources'
for netfile in ${all_sources[@]}; do
local proto=$(get_protocol "$netfile")
case $proto in
@ -2921,7 +2931,7 @@ check_vcs_software() {
uninstalled="$(set +E; check_deps $client)" || exit 1
# if not installed, check presence in depends or makedepends
if [[ -n "$uninstalled" ]] && (( ! NODEPS || ( VERIFYSOURCE && !DEP_BIN ) )); then
if ! in_array "$client" ${depends[@]} ${makedepends[@]}; then
if ! in_array "$client" ${alldeps[@]}; then
error "$(gettext "Cannot find the %s package needed to handle %s sources.")" \
"$client" "${proto%%+*}"
ret=1