[pacman-dev] [PATCH] makepkg: complain if an install/changelog is found as source

Allan McRae allan at archlinux.org
Sun Aug 14 07:00:44 EDT 2011

On 14/08/11 06:07, Dave Reisner wrote:
> Signed-off-by: Dave Reisner<dreisner at archlinux.org>
> ---
> bsdtar can't extract a tarball with the same path/file in it twice, but it
> will gladly pack it that way... odd. Credit for the AUR for finding this.
>   scripts/makepkg.sh.in |    4 ++++
>   1 files changed, 4 insertions(+), 0 deletions(-)
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index f464014..e5840f1 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -1540,6 +1540,10 @@ check_sanity() {
>   				error "$(gettext "%s file (%s) does not exist.")" "$i" "$file"
>   				ret=1
>   			fi
> +			if in_array "$file" "${source[@]}"; then
> +				error "$(gettext "%s file found in source array: %s")" "$i" "$file"
> +				ret=1
> +			fi
>   		done
>   	done

I am sure we already "fixed" this in the past.  Did the fix get lost 
with some of that re-factoring that happened with handling 
install/changelog files?

As background, there was a big discussion a couple of years back about 
whether we should support the inclusion of install files (changelog was 
different then) in the source array.  The majority opinion (of which I 
was not part...) then was to do so.  So even though this patch goes with 
my line of thinking about the handling of install files, I think we 
should fix the actual issue and not pack the same file twice.


More information about the pacman-dev mailing list