|  | #! /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 |