On 08/07/14 at 08:46pm, Dave Reisner wrote:
> This implements support for declarations such as:
> 
>   arch=('i686' 'x86_64')
>   ...
> 
>   source=("somescript.sh")
>   source_i686=("http://evilmonster.com/i686/ponies-9001-1.i686.bin";)
>   source_x86_64=("http://evilmonster.com/i686/ponies-9001-1.x86_64.bin";)
> 
>   md5sums=('d41d8cd98f00b204e9800998ecf8427e')
>   md5sums_i686=('e4ca381035a34b7a852184cc0dd89baa')
>   md5sums_x86_64=('4019740e6998f30a3c534bac6a83f582')
> 
> Just the same as the "untagged" sources, multiple integrity algorithms
> are supported. The manpage is updated to reflect support for these
> suffices.
> ---
>  doc/PKGBUILD.5.txt    |   4 ++
>  scripts/makepkg.sh.in | 104 
> +++++++++++++++++++++++++++++++++++++++++---------
>  2 files changed, 90 insertions(+), 18 deletions(-)

...

> @@ -710,8 +742,8 @@ download_sources() {
>               GET_VCS=0
>       fi
>  
> -     local netfile
> -     for netfile in "${source[@]}"; do
> +     get_all_sources_for_arch 'all_sources'
> +     for netfile in "${all_sources[@]}"; do
>               pushd "$SRCDEST" &>/dev/null
>  
>               local proto=$(get_protocol "$netfile")

...

> @@ -2065,8 +2131,10 @@ create_srcpackage() {
>       msg2 "$(gettext "Adding %s...")" "$BUILDSCRIPT"
>       ln -s "${BUILDFILE}" "${srclinks}/${pkgbase}/${BUILDSCRIPT}"
>  
> -     local file
> -     for file in "${source[@]}"; do
> +     local file all_sources
> +
> +     get_all_sources all_sources 'all_sources'

It looks like get_all_sources only takes one argument but you're
passing two.

> +     for file in "${all_sources[@]}"; do
>               if [[ "$file" = "$(get_filename "$file")" ]] || (( SOURCEONLY 
> == 2 )); then
>                       local absfile
>                       absfile=$(get_filepath "$file") || missing_source_file 
> "$file"

Doesn't this break --allsource packages?  This attempts to add *all*
sources but only the arch-specific sources are ever downloaded.  It
should also probably be noted somewhere that all sources must have
unique names even between different architectures, for example the
following will confuse create_srcpackage:

   source_i686=( "http://evilmonster.com/i686/ponies-9001-1.bin";)
   source_x86_64=("http://evilmonster.com/x64/ponies-9001-1.bin";)

apg

Reply via email to