packages feed

leancheck-0.9.2: test/sdist

#!/bin/bash
#
# test/sdist: tests the package generated by "cabal sdist".
#
# Copyright (c) 2015-2020 Rudy Matela.
# Distributed under the 3-Clause BSD licence.
export LC_ALL=C  # consistent sort
pkgver=` cat *.cabal | grep "^version:" | sed -e "s/version: *//"`
pkgname=`cat *.cabal | grep "^name:"    | sed -e "s/name: *//"`
pkgbase=$pkgname-$pkgver
set -xe
cabal sdist &&
pkg=`find dist* -name $pkgbase.tar.gz`
tmp=`mktemp -d /tmp/test-sdist-XXXXXXXXXX`
tar -tf $pkg | sort --ignore-case          > $tmp/ls-cabal-i  &&
tar -tf $pkg | sort --ignore-case --unique > $tmp/ls-cabal-iu &&
diff -rud $tmp/ls-cabal-i $tmp/ls-cabal-iu &&
if [ -d .git ]
then
	# on git repo, test if files are the same
	git ls-files                                         | sort > $tmp/ls-git   &&
	tar -tf $pkg | grep -v "/$" | sed -e "s,$pkgbase/,," | sort > $tmp/ls-cabal &&
	diff -rud $tmp/ls-git $tmp/ls-cabal
fi
rm -r $tmp