On Mon, May 19, 2008 at 3:20 PM, Allan McRae <mcrae_allan@hotmail.com> wrote:
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index cc44c68..8009ef0 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1315,7 +1315,7 @@ if [ "$arch" = 'any' ]; then fi
if ! in_array $CARCH ${arch[@]}; then - if [ "$IGNOREARCH" = "0" ]; then + if [ "$IGNOREARCH" = "0" -o "$GENINTEG" = "1" ]; then error "$(gettext "%s is not available for the '%s' architecture.")" "$pkgname" "$CARCH" plain "$(gettext "Note that many packages may need a line added to their %s")" "$BUILDSCRIPT" plain "$(gettext "such as arch=('%s').")" "$CARCH"
I really don't understand the logic here :)
I will add a comment there. Essentially, if we are only generating integrity checks, then we don't care if the arch line is missing. Well, at least not error level care. Maybe in that case a warning should still be printed. Opinions?
It was more the implementation that I didn't understand : if [ "$IGNOREARCH" = "0" -o "$GENINTEG" = "1" ]; then Shouldn't it rather be something like this : if [ "$IGNOREARCH" = "0" -a "$GENINTEG" = "0" ]; then ? otherwise an additional if before that check : if [ "$GENINTEG" = "1" ]; then IGNOREARCH=1 fi But I think the current behavior is fine, just print an error in any cases. Are there really situations where you only want to generate md5sums, but not build the package or simply fix the pkgbuild so that others can build it?