59 lines
1.5 KiB
Bash
Executable file
59 lines
1.5 KiB
Bash
Executable file
#!/bin/sh
|
|
# Nico Schottelius
|
|
# Date: Mit Nov 9 12:57:04 CET 2005
|
|
# Last Modified: Thu Nov 10 12:53:00 CET 2005
|
|
#
|
|
# Install latest git and cogito to $INSTALL_PREFIX/$name and
|
|
# link the binaries to $BINDIR
|
|
# Needs git and cogito to work!
|
|
# And:
|
|
# - libexpat-dev
|
|
# - libcurl3-dev
|
|
# - libssl-dev
|
|
# - libz-dev
|
|
|
|
BASE_GET=http://www.kernel.org/pub/scm/
|
|
PROJECTS="git/git.git cogito/cogito.git"
|
|
BUILDDIR=/home/user/nico/build
|
|
INSTALL_PREFIX=/usr/packages
|
|
BINDIR=/usr/local/bin
|
|
|
|
error_in()
|
|
{
|
|
echo "[failed] $1"
|
|
echo "Exiting now."
|
|
exit 1
|
|
}
|
|
|
|
for project in $PROJECTS; do
|
|
realname=$(echo $project | sed -e 's,.*/,,' -e 's/\.git$//')
|
|
|
|
echo "Working on $realname (in $BUILDDIR/$realname) ... "
|
|
|
|
if [ ! -d "$BUILDDIR/$realname" ]; then
|
|
echo "Cloning $realname"
|
|
cg-clone "${BASE_GET}${project}" "$BUILDDIR/$realname"
|
|
else
|
|
echo "Updating $realname from \"origin\""
|
|
cd "$BUILDDIR/$realname" || error_in "$BUILDDIR/$realname"
|
|
cg-update origin
|
|
fi
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Pull or clone failed, ABORTING."
|
|
exit 23
|
|
fi
|
|
|
|
cd "$BUILDDIR/$realname"
|
|
version=$(cg-object-id)
|
|
echo "Installing $realname (Version: $version)"
|
|
DDIR=$INSTALL_PREFIX/$realname-$version
|
|
make clean || error_in "Cleaning $realname"
|
|
make "prefix=$DDIR" all || error_in "Building $realname"
|
|
make "prefix=$DDIR" install || error_in "Installing $realname"
|
|
|
|
echo "Linking files to $BINDIR ..."
|
|
for file in "$DDIR/bin/"*; do
|
|
ln -sf $file "$BINDIR" || error_in "Linking $file"
|
|
done
|
|
done
|