#!/bin/sh
set -e

# This script is invoked by uscan after downloading a new tarball

if [ "x$1" != "x--upstream-version" ] || [ $# != 3 ]; then
	echo "invalid arguments: $*" >&2
	exit 2
fi

version="$2"
filename="$3"

rm -f "$filename" "../linux-${2}.tar.xz"
pruned_tarball="$(./debian/scripts/dfsg-prune ${version}-1 ${version} | awk '/^COMPLETED:/{print $2}')"
if [ -n "${pruned_tarball}" ] && [ -w "${pruned_tarball}" ]; then
	# write to ../tarballs/, if it exists - ../ otherwise
	if [ -d "../tarballs" ]; then
		mv "${pruned_tarball}" "../tarballs/"
		ln -fs "tarballs/$(basename ${pruned_tarball})" "../"
	elif [ -d "../_tarballs" ]; then
		mv "${pruned_tarball}" "../_tarballs/"
		ln -fs "_tarballs/$(basename ${pruned_tarball})" "../"
	else
		mv "${pruned_tarball}" "../"
	fi
	dch -v "$version-1" 'New upstream release'
	tar -xJf "../$(basename ${pruned_tarball})" --strip 1
	QUILT_PATCHES='debian/patches' QUILT_PC=.pc quilt push --quiltrc - -a -q --fuzz=0
else
	echo "failed to prune upstream tarball" >&2
	exit 3
fi

