blob: d9f3a9e38302a5c3cf3b13ae434a8d91b8b1b8d6 [file] [log] [blame]
#! /bin/bash
# bootstrap -- Use this script to create generated files from a VCS checkout
#
# Copyright 2008 Sony Corporation of America
#
#
# Permission is hereby granted, free of charge, to any person obtaining
# a copy of this Library and associated documentation files (the
# "Library"), to deal in the Library without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Library, and to
# permit persons to whom the Library is furnished to do so, subject to
# the following conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Library.
#
# If you modify the Library, you may copy and distribute your modified
# version of the Library in object code or as an executable provided
# that you also do one of the following:
#
# Accompany the modified version of the Library with the complete
# corresponding machine-readable source code for the modified version
# of the Library; or,
#
# Accompany the modified version of the Library with a written offer
# for a complete machine-readable copy of the corresponding source
# code of the modified version of the Library.
#
#
# THE LIBRARY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
# LIBRARY OR THE USE OR OTHER DEALINGS IN THE LIBRARY.
#
version=
if [ "$1" ]; then
version=$1
elif head=$(git rev-parse --short --verify HEAD 2>/dev/null); then
# If available, use the git commit revision for the package version.
months="Jan:01 Feb:02 Mar:03 Apr:04 May:05 Jun:06 Jul:07 Aug:08 \
Sep:09 Oct:10 Nov:11 Dec:12"
# Add a date prefix for easy reading.
date=$(git log --pretty=format:"%cD" -1 HEAD)
# date='Fri, 2 Aug 2007 19:36:06 -0700'
date=${date##*, }
date=${date% [0-9][0-9]:*}
day=${date%* [A-Z][a-z][a-z] *}
year=${date##* [A-Z][a-z][a-z] 20}
month=${date##${day} }
month=${month%% 20${year}}
month=${months##*${month}:}
month=${month%% *}
[ ! ${day#[0-9][0-9]} ] || day="0$day"
version=$(printf '%s.%s.%s-%s%s' ${year} ${month} ${day} g ${head})
# Add a '-dirty' postfix for uncommitted changes.
if git diff-index HEAD | read dummy; then
version=`printf '%s%s' ${version} -dirty`
fi
else
# Default to date and time.
version="dev-$(date +%y.%m.%d-%H.%M.%S)"
fi
set -x
sed -e s,@version@,${version},g configure.ac.in > configure.ac
sed -e s,@version@,${version},g mars.spec.in > mars.spec
ln -sf scripts/acinclude.m4 .
aclocal
automake --foreign --add-missing --copy
autoconf
pushd base > /dev/null && ./bootstrap ${version} && popd > /dev/null
pushd task > /dev/null && ./bootstrap ${version} && popd > /dev/null