#!/bin/bash
# This file is part of Cockpit.
#
# Copyright (C) 2015 Red Hat, Inc.
#
# Cockpit is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# Cockpit is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Cockpit; If not, see <http://www.gnu.org/licenses/>.

set -eu

if [ $# -gt 1 ]; then
	echo "usage: make-source [target]" >&2
    exit 2
fi

TARGET=${1:-dist-gzip}
BASE=$(cd $(dirname $(dirname $0)); pwd -P)
cd $BASE

# Configure the source for making a tarball in a temporary directory, unless
# the source has already been configured
if test ! -f Makefile; then
    rm -rf tmp-dist
    mkdir -p tmp-dist
    if [ -f .tarball ]; then
        (cd tmp-dist && ../configure) 1>&2
    else
        (cd tmp-dist && NOREDIRECTMAKEFILE=t ../autogen.sh) 1>&2
    fi
    builddir=tmp-dist
else
    builddir=.
fi

make -j8 -C "$builddir" --silent $TARGET 1>&2

# Output the gzip name if requested
if [ "$TARGET" = "dist-gzip" ]; then
    make -C "$builddir" --silent dump-dist-gzip
else
    echo "$builddir"
fi
