#!/bin/sh

# This script is used to download the upstream source for libva and
# generate it into an orig source tarball for Debian.

# Common variables used to ease maintenance of this script
LIBVA_VERSION="1.0.8"
LIBVA_TARBALL="libva-$LIBVA_VERSION.tar.gz"
LIBVA_ORIG_TARBALL="libva_$LIBVA_VERSION.orig.tar.gz"
USAGE="\n\
This script is used to generate the orig tarball used in building\n\
Debian packages for libva-$LIBVA_VERSION.\n\
Usage: libva-get-orig-source [OPTION]\n\
\n\
 -h, --help                 Display this help message.\n"

while [ "$#" -gt "0" ]
do
    case "$1" in
        -h|--help|*)
            echo "${USAGE}"
            exit 1
            ;;
    esac
done

make_current_tarball() {
    # Download the tarball if it's not available in the current directory
    [ -f $LIBVA_TARBALL ] || \
        wget -c http://cgit.freedesktop.org/libva/snapshot/$LIBVA_TARBALL

    # Extract tarball and run 'autoreconf -vif'
    echo "Extracting tarball and running 'autoreconf -vif'"
    tar -zxf $LIBVA_TARBALL
    cd libva-$LIBVA_VERSION
    autoreconf -vif
    cd ..

    # Remove temp files and other cruft from source tarball
    # The find command snippet here was taken from debhelper's dh_clean command
    # with some modification to delete more unneeded files.
    echo "Removing temp files and other cruft from source tarball"
    find libva-$LIBVA_VERSION \( \( -type f -a \
        \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
        -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
        -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
        -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
        -o -name config.status -o -name config.cache -o -name config.log \
        \) -exec rm -f "{}" \; \) -o \
        \( -type d -a -name autom4te.cache -prune -exec rm -rf "{}" \; \) \)
    rm libva-$LIBVA_VERSION/.gitignore
    rm libva-$LIBVA_VERSION/.cvsignore
    rm -rf libva-$LIBVA_VERSION/debian

    # Remove empty directories
    echo "Removing empty directories"
    find libva-$LIBVA_VERSION -type d -empty -delete

    # Repack tarball to final orig tarball
    echo "Creating orig tarball"
    tar --exclude-vcs -zcf "$LIBVA_ORIG_TARBALL" "libva-$LIBVA_VERSION/"
}

make_current_tarball
