88 lines
2.3 KiB
Bash
88 lines
2.3 KiB
Bash
# Generate libint2 source tarball.
|
|
# 2013-05-12 Susi Lehtola
|
|
|
|
# Before running this script, make sure that you have all the
|
|
# buildrequires for building libint2 w/ bootstrapping
|
|
|
|
# Read hg release from spec file
|
|
hgrel=`grep "global hgrel" libint2.spec|awk '{print $3}'`
|
|
# Read the version from the spec file
|
|
ver=`grep "Version" libint2.spec|awk '{print $2}'`
|
|
|
|
echo "Using hg release $hgrel of version $ver."
|
|
|
|
# Get the sources
|
|
if [ ! -d libint2 ]; then
|
|
hg clone -u $hgrel http://hg.code.sf.net/p/libint/mercurial libint2
|
|
else
|
|
cd libint2
|
|
|
|
# Get the current version
|
|
cur=`hg parent | head -n 1 |sed 's|:| |g' | awk '{print $2}'`
|
|
|
|
# Check if we are not at the wanted revision
|
|
if [ $cur != $hgrel ]; then
|
|
# Remove the generated tarball
|
|
echo "Removing tarball generated from revision $cur"
|
|
rm -rf objdir/libint-*.tgz
|
|
|
|
# Pull update
|
|
hg pull
|
|
hg update -r $hgrel
|
|
else
|
|
echo "Old version was $cur, current is $hgrel"
|
|
fi
|
|
|
|
cd ..
|
|
fi
|
|
|
|
# Generate source tarball
|
|
if [ ! -f libint2-${hgrel}hg.tar.xz ]; then
|
|
tar Jcf libint2-${hgrel}hg.tar.xz --exclude=.hg/ --exclude=objdir* libint2
|
|
fi
|
|
|
|
# Go into the directory
|
|
cd libint2
|
|
|
|
# Run autoconf
|
|
aclocal -I lib/autoconf
|
|
autoconf
|
|
|
|
# Object directory
|
|
if [ ! -d objdir ]; then
|
|
mkdir objdir
|
|
fi
|
|
|
|
cd objdir
|
|
# Configure the options for the target library
|
|
if [ ! -f libint-${ver}-stable.tgz ]; then
|
|
echo "libint-${ver}-stable.tgz does not exist, generating."
|
|
|
|
export CXX=g++
|
|
# Optimization flags to use for the compiler (just speeds up the generation)
|
|
export OPTFLAGS=`rpm --eval %{optflags}`
|
|
|
|
../configure --enable-shared --disable-static \
|
|
--enable-eri=2 --enable-eri3=2 --enable-eri2=2 \
|
|
--with-eri-max-am=7,5,4 --with-eri-opt-am=3 \
|
|
--with-eri3-max-am=7 --with-eri2-max-am=7 \
|
|
--with-g12-max-am=5 --with-g12-opt-am=3 \
|
|
--with-g12dkh-max-am=5 --with-g12dkh-opt-am=3 \
|
|
--disable-unrolling --enable-generic-code --enable-contracted-ints \
|
|
--with-cxx-optflags="$OPTFLAGS" \
|
|
| tee configure.log
|
|
|
|
# Generate the library sources
|
|
echo "Running make export, follow progress in export.log"
|
|
make export > export.log
|
|
else
|
|
echo "Found previously generated tarball."
|
|
fi
|
|
|
|
# Compress the source tarball
|
|
cp libint-${ver}-stable.tgz libint-${ver}-${hgrel}hg.tar.gz
|
|
gunzip libint-${ver}-${hgrel}hg.tar.gz
|
|
xz libint-${ver}-${hgrel}hg.tar
|
|
mv libint-${ver}-${hgrel}hg.tar.xz ../..
|
|
|
|
|