cleansed and good to go, build from git by default ;)

Signed-off-by: Gwenhael Le Moine <cycojesus@darkstar.example.net>
This commit is contained in:
Gwenhael Le Moine 2009-12-10 11:16:58 +07:00
parent 6146b669e9
commit f876ccf38c
2 changed files with 4 additions and 151 deletions

View file

@ -1,134 +0,0 @@
#!/bin/sh -x
# variables
TMP=/tmp
CWD=$(pwd)
APP_NAME=emacs
PKG=$TMP/package-$APP_NAME
VERSION=${VERSION:-git$(date +"%Y%m%d")}
ARCH=x86_64
BUILD=1cyco
REPOSITORY=/home/cycojesus/projets/packages/repositories/emacs
PREFIX=/usr
SLCKFLAGS="-O2"
# nettoyage préalable
rm -fr $PKG $TMP/$APP_NAME-$VERSION
mkdir -p $PKG
# mise en place
cd $TMP
if [ ! -e $CWD/$APP_NAME-$VERSION.tar.?z* ] ; then
mkdir $APP_NAME-$VERSION
if [ ! -e $REPOSITORY ] ; then
mkdir -p $(dirname $REPOSITORY)
cd $(dirname $REPOSITORY)
git clone http://git.sv.gnu.org/r/emacs.git
fi
cd $REPOSITORY
make distclean
git pull
else
tar xvf $CWD/$APP_NAME-$VERSION.tar.?z*
cd $APP_NAME-$VERSION
REPOSITORY=.
fi
CFLAGS=$SLCKFLAGS \
CXXFLAGS=$SLCKFLAGS \
$REPOSITORY/configure \
--prefix=$PREFIX \
--infodir=$PREFIX/info \
--mandir=$PREFIX/man \
--libdir=$PREFIX/lib64 \
--enable-font-backend \
--with-x-toolkit=gtk \
--with-freetype \
--with-libotf \
--with-xft
make bootstrap
# cd ..
make
# installation
make install DESTDIR=$PKG
rm $PKG/usr/bin/emacs
cat <<EOF > $PKG$PREFIX/bin/emacs
#!/bin/sh
XMODIFIERS= GTK_IM_MODULE= QT_IM_MODULE= $(basename $(ls $PKG$PREFIX/bin/emacs-*.*.*)) "\$@"
EOF
chmod +x $PKG$PREFIX/bin/emacs
# correction
cd $PKG
chown -R root:root *
[ -d $PKG/usr/man ] && find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
rm $PKG/usr/info/dir
[ -d $PKG/usr/info ] && find $PKG/usr/info -type f -name "*" -exec gzip -9f {} \;
#gunzip $PKG/usr/info/dir.gz
# Strip binaries
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
# embaumement
mkdir -p $PKG/install
cat <<EOF > $PKG/install/doinst.sh
# Vim ships a better (IMHO) version of ctags, and we don't want
# to overwrite it with this one. If you really want emacs' ctags
# either copy or link it into place yourself, or remove the vim
# packages and reinstall emacs. Besides, does anyone know/use
# *both* emacs and vi? I'd think that would bring the universe
# to an end. ;-)
if [ ! -e usr/bin/ctags ]; then
cp -a usr/bin/ctags-emacs usr/bin/ctags
cp -a usr/man/man1/ctags-emacs.1.gz usr/man/man1/ctags.1.gz
fi
#rebuild /usr/info/dir
( cd /usr/info
for i in $(ls *.gz | grep -v ".*\-[0-9]*.gz$") ; do
install-info $i ./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------------------------------------------------------|
$APP_NAME: $APP_NAME (Almighty editor)
$APP_NAME:
$APP_NAME: GNU Emacs is a version of Emacs, written by the author of the
$APP_NAME: original (PDP-10) Emacs, Richard Stallman.
$APP_NAME:
$APP_NAME: The one and only.
$APP_NAME:
$APP_NAME:
$APP_NAME:
$APP_NAME:
$APP_NAME: see /usr/doc/$APP_NAME-$VERSION$VERSION for more details
EOF
# empaquetage
cd $PKG
makepkg -l y -c n $TMP/$APP_NAME-$VERSION-$ARCH-$BUILD.txz

View file

@ -20,7 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Slackware build script for emacs-22
# Slackware build script for emacs-23
# Written by Dušan Stefanović (stefanovic.dusan@gmail.com)
# Modified by Robby Workman <rworkman@slackbuilds.org>
@ -94,6 +94,7 @@ $REPOSITORY/configure \
--enable-shared=yes \
--with-x \
--with-x-toolkit=gtk \
--without-gconf \
--build=${ARCH}-slackware-linux
make bootstrap
@ -118,18 +119,7 @@ EOF
cd $TMP
rm -rf $PRGNAM-$VERSION
if [ ! -e $CWD/$PRGNAM-$VERSION.tar.?z* ] ; then
# if [ ! -e $REPOSITORY ] ; then
# mkdir -p $(dirname $REPOSITORY)
# cd $(dirname $REPOSITORY)
# git clone http://git.sv.gnu.org/r/emacs.git
# fi
# ( cd $REPOSITORY
# [ -e Makefile ] && make distclean
# git pull
# )
# #mkdir $PRGNAM-$VERSION
# # FIXME: Hackish hack
# FIXME: Hackish hack
cp -R $REPOSITORY $TMP/$PRGNAM-$VERSION
else
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z* || exit 1
@ -157,6 +147,7 @@ $REPOSITORY/configure \
--enable-static=no \
--enable-shared=yes \
--with-x=no \
--without-gconf \
--build=${ARCH}-slackware-linux
make $NUMJOBS || make || exit 1
@ -235,10 +226,6 @@ Comment=Text Editor
Categories=Application;Development;
EOF
# Make the package freedesktop compliant
mkdir -p $PKG/usr/share/icons/hicolor/48x48/apps
cat $PKG/usr/share/$PRGNAM/$EMACS_VERSION/etc/images/icons/emacs_48.png > $PKG/usr/share/icons/hicolor/48x48/apps/emacs.png
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PRGNAM-$VERSION-$ARCH-$BUILD.txz