|
|
|
@ -1,41 +1,39 @@
|
|
|
|
|
#!/bin/bash
|
|
|
|
|
# Build script for Slackware
|
|
|
|
|
# Damien Goutte-Gattat "gouttegd" <damien.goutte-gattat at e.ujf-grenoble.fr>
|
|
|
|
|
# Copyright (C) 2009 Damien Goutte-Gattat
|
|
|
|
|
#
|
|
|
|
|
# Redistribution and use of this script, with or without modifications, is
|
|
|
|
|
# permitted provided that the following conditions are met:
|
|
|
|
|
# Redistribution and use of this script, with or without modifications,
|
|
|
|
|
# is permitted provided that the following conditions are met:
|
|
|
|
|
#
|
|
|
|
|
# 1. Redistributions of this script must retain the above copyright
|
|
|
|
|
# notice, this list of conditions and the following disclaimer.
|
|
|
|
|
# notice, this list of conditions and the following disclaimer.
|
|
|
|
|
#
|
|
|
|
|
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
|
|
|
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
|
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
|
|
|
|
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
|
|
|
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
|
|
|
|
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
|
|
|
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
|
|
|
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
|
|
|
|
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
|
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR
|
|
|
|
|
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
|
|
|
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
|
|
|
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
|
|
|
|
|
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
|
|
|
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
|
|
|
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
|
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
|
|
|
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
|
|
|
|
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
|
|
|
# POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
|
#
|
|
|
|
|
# Contact: Damien Goutte-Gattat <damien.goutte-gattat@e.ujf-grenoble.fr
|
|
|
|
|
#
|
|
|
|
|
# Latest acedb sourcecode is available at:
|
|
|
|
|
# http://www.acedb.org/Software/Downloads/
|
|
|
|
|
# <http://www.acedb.org/Software/Downloads/>.
|
|
|
|
|
|
|
|
|
|
# Source package infos
|
|
|
|
|
# Source packages infos
|
|
|
|
|
VERSION=${VERSION:-4.9.39}
|
|
|
|
|
SOURCE=${SOURCE:-ACEDB-source.$VERSION.tar.gz}
|
|
|
|
|
DEMODB=${DEMODB:-ACEDB-demo.$VERSION.tar.gz}
|
|
|
|
|
DEVDOC=${DEVDOC:-ACEDB-doc.$VERSION.tar.gz}
|
|
|
|
|
HELP=${HELP:-ACEDB-help.$VERSION.tar.gz}
|
|
|
|
|
TOOLS=${TOOLS:-ACEDB-tools.$VERSION.tar.gz}
|
|
|
|
|
BASEURL=${BASEURL:-ftp://ftp.sanger.ac.uk/pub/acedb/SUPPORTED}
|
|
|
|
|
|
|
|
|
|
# Built package infos
|
|
|
|
|
# Build infos
|
|
|
|
|
NAMETGZ=${NAMETGZ:-acedb}
|
|
|
|
|
BUILD=${BUILD:-1GGD}
|
|
|
|
|
BUILD=${BUILD:-2GGD}
|
|
|
|
|
ARCH=${ARCH:-i486}
|
|
|
|
|
TARGET=${TARGET:-i486}
|
|
|
|
|
JOBS=${JOBS:-1}
|
|
|
|
|
|
|
|
|
|
# Directories
|
|
|
|
|
TMP=${TMP:-/tmp}
|
|
|
|
@ -43,7 +41,9 @@ OUT=${OUT:-$TMP/build}
|
|
|
|
|
PKG=${PKG:-$OUT/$NAMETGZ}
|
|
|
|
|
CWD=$(pwd)
|
|
|
|
|
|
|
|
|
|
set -e # Quit if a command returns non-zero
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
NAME=$NAMETGZ-$VERSION
|
|
|
|
|
|
|
|
|
|
# Sanity checks
|
|
|
|
|
if [ $UID -eq 0 ]; then
|
|
|
|
@ -60,6 +60,9 @@ case "$ARCH" in
|
|
|
|
|
i?86)
|
|
|
|
|
CPUOPT="-O2 -march=$ARCH -mtune=i686"
|
|
|
|
|
;;
|
|
|
|
|
x86_64)
|
|
|
|
|
CPUOPT="-O2 -fPIC"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
CPUOPT="-O2"
|
|
|
|
|
;;
|
|
|
|
@ -67,31 +70,32 @@ esac
|
|
|
|
|
|
|
|
|
|
# Get and verify the archives
|
|
|
|
|
# (beware when extracting them, they are tar bombs!)
|
|
|
|
|
for ARCHIVE in $SOURCE $DEMODB $DEVDOC $HELP $TOOLS; do
|
|
|
|
|
if [ ! -r $ARCHIVE ]; then
|
|
|
|
|
wget "$BASEURL/$ARCHIVE"
|
|
|
|
|
for archive in ACEDB-{demo,doc,help,source,tools}.$VERSION.tar.gz ; do
|
|
|
|
|
if [ ! -r $archive ]; then
|
|
|
|
|
wget -c -O $archive.part "$BASEURL/$archive"
|
|
|
|
|
mv $archive.part $archive
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
sha1sum -c sha1sums
|
|
|
|
|
sha1sum -c checksums
|
|
|
|
|
|
|
|
|
|
# Build and install the binaries
|
|
|
|
|
mkdir -p $TMP/$NAMETGZ
|
|
|
|
|
tar xf $CWD/$SOURCE -C $TMP/$NAMETGZ
|
|
|
|
|
tar xf $CWD/ACEDB-source.$VERSION.tar.gz -C $TMP/$NAMETGZ
|
|
|
|
|
cd $TMP/$NAMETGZ
|
|
|
|
|
ACEDB_MACHINE=LINUX_4 make -j 3 COPT="$CPUOPT" || true
|
|
|
|
|
ACEDB_MACHINE=LINUX_4 make -j $JOBS COPT="$CPUOPT" || true
|
|
|
|
|
mkdir -p $PKG/usr/bin
|
|
|
|
|
find bin.LINUX_4 -type f -perm 755 -exec install -m 755 '{}' $PKG/usr/bin \;
|
|
|
|
|
find $PKG/usr/bin -exec strip --strip-unneeded '{}' \;
|
|
|
|
|
|
|
|
|
|
# Install the sample database and the helper scripts
|
|
|
|
|
mkdir -p $PKG/usr/share/$NAMETGZ/{demo,tools}
|
|
|
|
|
tar xf $CWD/$DEMODB -C $PKG/usr/share/$NAMETGZ/demo
|
|
|
|
|
tar xf $CWD/$TOOLS -C $PKG/usr/share/$NAMETGZ/tools
|
|
|
|
|
tar xf $CWD/ACEDB-demo.$VERSION.tar.gz -C $PKG/usr/share/$NAMETGZ/demo
|
|
|
|
|
tar xf $CWD/ACEDB-tools.$VERSION.tar.gz -C $PKG/usr/share/$NAMETGZ/tools
|
|
|
|
|
|
|
|
|
|
# Install the docs
|
|
|
|
|
mkdir -p $PKG/usr/doc/$NAMETGZ-$VERSION/{developers,users}
|
|
|
|
|
tar xf $CWD/$DEVDOC -C $PKG/usr/doc/$NAMETGZ-$VERSION/developers
|
|
|
|
|
tar xf $CWD/$HELP -C $PKG/usr/doc/$NAMETGZ-$VERSION/users
|
|
|
|
|
mkdir -p $PKG/usr/doc/$NAME/{developers,users}
|
|
|
|
|
tar xf $CWD/ACEDB-doc.$VERSION.tar.gz -C $PKG/usr/doc/$NAME/developers
|
|
|
|
|
tar xf $CWD/ACEDB-help.$VERSION.tar.gz -C $PKG/usr/doc/$NAME/users
|
|
|
|
|
|
|
|
|
|
# Get rid of the various CVS directories, and sanitize permissions
|
|
|
|
|
# for all files except the binaries
|
|
|
|
@ -100,8 +104,7 @@ find $PKG/usr/doc -type f -exec chmod 644 '{}' \;
|
|
|
|
|
find $PKG/usr/share -type f -exec chmod 644 '{}' \;
|
|
|
|
|
|
|
|
|
|
# Copy slack-desc file
|
|
|
|
|
mkdir -p $PKG/install
|
|
|
|
|
install -m 644 $CWD/slack-desc $PKG/install/slack-desc
|
|
|
|
|
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc
|
|
|
|
|
|
|
|
|
|
# Package the tree
|
|
|
|
|
cd $PKG
|
|
|
|
|