#!/bin/bash -e
#
# QEMU Release Script
#
# Copyright IBM, Corp. 2012
#
# Authors:
#  Anthony Liguori <aliguori@us.ibm.com>
#
# This work is licensed under the terms of the GNU GPLv2 or later.
# See the COPYING file in the top-level directory.

src="$1"
version="$2"
destination=qemu-${version}

git clone "${src}" ${destination}
pushd ${destination}
git checkout "v${version}"
git submodule update --init
(cd roms/seabios && git describe --tags --long --dirty > .version)
(cd roms/skiboot && ./make_version.sh > .version)
# Fetch edk2 submodule's submodules, since it won't have access to them via
# the tarball later.
#
# A more uniform way to handle this sort of situation would be nice, but we
# don't necessarily have much control over how a submodule handles its
# submodule dependencies, so we continue to handle these on a case-by-case
# basis for now.
(cd roms/edk2 && \
    git submodule update --init -- \
        ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 \
        BaseTools/Source/C/BrotliCompress/brotli \
        CryptoPkg/Library/OpensslLib/openssl \
        MdeModulePkg/Library/BrotliCustomDecompressLib/brotli)
popd
tar --exclude=.git -cjf ${destination}.tar.bz2 ${destination}
rm -rf ${destination}