File getElmerFEMgit.sh of Package ElmerFEM
#! /bin/bash
version=9.0
git_branch='devel'
# Get source
echo "Get source..."
if [ -d elmerfem-${version}.git ]; then
# Update
pushd elmerfem-${version}.git
git pull
popd
else
# Clone
# git clone https://github.com/ElmerCSC/elmerfem.git -b elmerice elmerfem-${version}.git
git clone https://github.com/ElmerCSC/elmerfem.git -b ${git_branch} elmerfem-${version}.git
git checkout tags/release-$version
fi
# Get git revision
pushd elmerfem-${version}.git
#git_rev_short=`git rev-parse --short HEAD`
#git_rev_long=`git rev-parse HEAD`
git_rev_long=`git describe HEAD`
echo "git_rev_long: $git_rev_long"
git_rev_short="${git_rev_long/release\-${version}-/}"
git_rev_short="${git_rev_short/-/.}"
git_date=$(git describe HEAD | xargs git show -s --date=format:'%Y%m%d' --format=format:'%cd')
echo "git revision: $git_rev_short of: $git_date"
popd
# Package source directory...
echo "Copy sources to package directory..."
rm -rf elmerfem-${version}
cp -rf elmerfem-${version}.git elmerfem-${version}
rm -rf elmerfem-${version}/.git*
echo `date` > elmerfem-${version}/git-${git_rev_long}
echo "Compress package directory..."
rm -rf elmerfem-${version}-git${git_rev_short}.tar.bz2
tar -cjf elmerfem-${version}-git${git_rev_short}.tar.bz2 elmerfem-${version}/
echo "Remove package directory..."
rm -rf elmerfem-${version}
ls --color -l ./
# Set git revision and date in spec-file
# %define elmerfem_git_branch devel
sed s/define.elmerfem_branch.*$/define\ elmerfem_branch\ ${git_branch}/ \
-i elmerfem.spec
sed s/define.elmerfem_git_revision.*$/define\ elmerfem_git_revision\ ${git_rev_short}/ \
-i elmerfem.spec
sed s/define.elmerfem_git_date.*$/define\ elmerfem_git_date\ ${git_date}/ \
-i elmerfem.spec