94 lines
2.2 KiB
Bash
Executable file
94 lines
2.2 KiB
Bash
Executable file
#!/bin/sh -x
|
||
|
||
# variables
|
||
VERSION=$(date +"%Y.%m.%d_%H.%M")
|
||
BUILD=1
|
||
|
||
|
||
TAG=cyco
|
||
TMP=/tmp/$TAG
|
||
CWD=$(pwd)
|
||
OUTPUT=/tmp
|
||
|
||
PRGNAM=$(basename $CWD)
|
||
PKG=$TMP/pkg-$PRGNAM
|
||
|
||
ARCH=$(uname -m)
|
||
|
||
REPOSITORY=/home/installs/SlackBuilds/repositories/$PRGNAM
|
||
PREFIX=/usr
|
||
|
||
EMACS=$(basename $(ls /usr/bin/emacs-2*))
|
||
EMACS_VERSION=$(echo "$EMACS" | grep -o "\-[0-9\.]*\-" | tr -d - | head -n1)
|
||
|
||
# nettoyage préalable
|
||
rm -fr $PKG $TMP/$PRGNAM-$VERSION
|
||
|
||
mkdir -p $PKG
|
||
|
||
# mise en place
|
||
cd $TMP
|
||
if [ ! -e $REPOSITORY ] ; then
|
||
mkdir -p $(dirname $REPOSITORY)
|
||
cd $(dirname $REPOSITORY)
|
||
git clone "http://git.sv.gnu.org/r/geiser.git" $PRGNAM
|
||
else
|
||
( cd $REPOSITORY
|
||
git pull
|
||
)
|
||
fi
|
||
|
||
mkdir -p $PKG #$PREFIX/share/emacs/site-lisp
|
||
cp -R $REPOSITORY $TMP
|
||
( cd $TMP/$PRGNAM
|
||
rm -fr .git*
|
||
./autogen.sh
|
||
./configure \
|
||
--prefix=$PREFIX \
|
||
--infodir=$PREFIX/info
|
||
|
||
make
|
||
make install DESTDIR=$PKG
|
||
rm $PKG$PREFIX/info/dir
|
||
)
|
||
|
||
# correction
|
||
( cd $PKG
|
||
chown -R root:root *
|
||
)
|
||
|
||
# embaumement
|
||
mkdir -p $PKG/install
|
||
cat <<EOF > $PKG/install/doinst.sh
|
||
cd /usr/info
|
||
for file in \$(ls *.gz | grep -v ".*\-[0-9]\+\.gz")
|
||
do
|
||
install-info \$file ./dir
|
||
done
|
||
EOF
|
||
|
||
cat <<EOF > $PKG/install/slack-desc
|
||
# HOW TO EDIT THIS FILE:
|
||
# The "handy ruler" below makes it easier to edit a package description. Line
|
||
# up the first '|' above the ':' following the base package name, and the '|'
|
||
# on the right side marks the last column you can put a character in. You must
|
||
# make exactly 11 lines for the formatting to be correct. It's also
|
||
# customary to leave one space after the ':'.
|
||
|
||
|-----handy-ruler------------------------------------------------------|
|
||
$PRGNAM: $PRGNAM (Scheme modes for Emacs)
|
||
$PRGNAM:
|
||
$PRGNAM: Geiser is a collection of Emacs major and minor modes that conspire with one
|
||
$PRGNAM: or more Scheme interpreters to keep the Lisp Machine Spirit alive. It draws
|
||
$PRGNAM: inspiration (and a bit more) from environments such as Common Lisp’s Slime,
|
||
$PRGNAM: Factor’s FUEL, Squeak or Emacs itself, and does its best to make Scheme
|
||
$PRGNAM: hacking inside Emacs (even more) fun.
|
||
$PRGNAM:
|
||
$PRGNAM:
|
||
$PRGNAM: http://www.nongnu.org/geiser/
|
||
$PRGNAM:
|
||
EOF
|
||
|
||
# empaquetage
|
||
cd $PKG
|
||
makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
|