#!/bin/sh # Heavily based on the Slackware 12.1 SlackBuild # http://www.gnome.org # Packager Andrea Sciucca ( gohanz at infinito.it) # http://www.slacky.it # # Required: Libgnomecanvas, Zenity. CWD=`pwd` TMP=${TMP:-/tmp/tgz} PKG=$TMP/package/gdm NAME=gdm VERSION=2.20.8 CHOST=i486 ARCH=${ARCH:-i486} BUILD=1as SOURCE=http://ftp.gnome.org/pub/GNOME/desktop/2.22/2.22.3/sources/$NAME-$VERSION.tar.bz2 if [ ! -e $NAME-$VERSION.tar.bz2 ]; then wget -c $SOURCE fi if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O3 -march=i686 -pipe -fomit-frame-pointer" elif [ "$ARCH" = "athlon64" ]; then SLKCFLAGS="-O2 -march=athlon64 -pipe" elif [ "$ARCH" = "athlonxp" ]; then SLKCFLAGS="-O3 -march=athlon-xp -pipe -fomit-frame-pointer" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" fi if [ ! -d $TMP ]; then mkdir -p $TMP fi if [ ! -d $PKG ]; then mkdir -p $PKG fi cd $TMP tar xvjf $CWD/$NAME-$VERSION.tar.bz2 echo -e "\E[0;32m+-----------------------------+\E[0;0m" echo -e "\E[0;32m| Start SlackBuild $NAME-$VERSION |\E[0;0m" echo -e "\E[0;32m+-----------------------------+\E[0;0m" cd $NAME-$VERSION find . -perm 666 -exec chmod 644 {} \; find . -perm 664 -exec chmod 644 {} \; find . -perm 600 -exec chmod 644 {} \; find . -perm 444 -exec chmod 644 {} \; find . -perm 400 -exec chmod 644 {} \; find . -perm 440 -exec chmod 644 {} \; find . -perm 777 -exec chmod 755 {} \; find . -perm 775 -exec chmod 755 {} \; find . -perm 511 -exec chmod 755 {} \; find . -perm 711 -exec chmod 755 {} \; find . -perm 555 -exec chmod 755 {} \; chown -R root:root . CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure --prefix=/usr --sysconfdir=/etc/X11 --localstatedir=/var/lib \ --disable-static \ --mandir=/usr/man \ --disable-scrollkeeper \ --enable-ipv6=yes \ --enable-secureremote=yes \ --with-prefetch=yes \ --with-xevie=yes \ --with-log-dir=/var/log/gdm \ --program-prefix= \ --program-suffix= \ --build=$CHOST-slackware-linux make make install DESTDIR=$PKG mkdir -p $PKG/usr/share/faces # Simple session files designed to work with Slackware: mkdir -p $PKG/etc/X11/dm/Sessions for file in $CWD/Sessions/* ; do cp $file $PKG/etc/X11/dm/Sessions done chown -R root:root $PKG/etc/X11/dm chmod 755 $PKG/etc/X11/dm/Sessions/* chown -R gdm:gdm $PKG/var/lib/gdm chmod 750 $PKG/var/lib/gdm touch $PKG/usr/share/faces $PKG/var/lib/gdm rm $PKG/etc/X11/gdm/custom.conf cat $CWD/gdm.conf-graphical > $PKG/etc/X11/gdm/custom.conf.new mkdir -p $PKG/usr/doc/$NAME-$VERSION cp -a AUTHORS COPYING ChangeLog INSTALL MAINTAINERS NEWS README* TODO $PKG/usr/doc/$NAME-$VERSION mkdir -p $PKG/usr/share/xsessions mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh cat $CWD/gnome.desktop > $PKG/usr/share/xsessions/gnome.desktop cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/slack-desc cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/$NAME.SlackBuild echo "if [ -x /usr/bin/update-mime-database ]; then /usr/bin/update-mime-database /usr/share/mime &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh echo "if [ -x /usr/bin/update-desktop-database ]; then /usr/bin/update-desktop-database &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh echo "if [ -x /usr/bin/gtk-update-icon-cache ]; then /usr/bin/gtk-update-icon-cache -f -q /usr/share/icons/hicolor &> /dev/null fi" >> $PKG/install/doinst.sh echo "" >> $PKG/install/doinst.sh ( 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 find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs strip -g 2> /dev/null ) gzip -9 $PKG/usr/man/*/* cd $PKG ADD=$(ls /var/log/packages/ | sed -ne 's/\(zenity\)-\([^-]\+-[^-]\+-[^-]\+\)/\1 >= \2,/p') \ requiredbuilder -v -y -s $CWD $PKG makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.tgz if [ "$1" = "--cleanup" ]; then rm -rf $TMP fi