larga um set -e no começo do script e remova os || exit 1. com set -e
o script é instruído a parar em caso de processos que saiam com erro.

veja o template do slackbuild.org[1], é relativamente bem comentado.


[1]http://slackbuilds.org/template.SlackBuild

2010/1/5 Elton <[email protected]>:
> Boa noite, lendo no site do SlackBuild, vendo alguns do Alien Bob e
> alguns do site Slacky, resolvi iniciar os meus estudos com o
> SlackBuild, fiz um modelo para instalar no Slackware 13 64 bits e fui
> adaptando para cada programa ou biblioteca, o primeiro que eu fiz é
> para o tls, ainda não instalei, gostaria que vocês olhassem e se
> possível, indicar possíveis erros que eu possa estar comentendo. Desde
> já agradecido. O script estar a seguir:
>
> #############################################################################
> #!/bin/sh -e
>
> # Slackware Slackbuild script
> # By:           Elton <[email protected]>
> # For:          tls
> # description:  An OpenSSL TCL extension
> # URL:          http://tls.sourceforge.net/
> # Need:         tcl 8.3.2+
>
> # Set initial variables:
> PRGNAM=tls
> VERSION=1.6
> ARCH=${ARCH:-x86_64}
> BUILD=${BUILD:-1}
> TAG=${TAG:-gp}
>
> # Place to build (TMP) package (PKG) and output (OUTPUT) the program:
> CWD=$(pwd)
> TMP=${TMP:-/tmp/txz}
> PKG="$TMP/pkg-$PRGNAM"
> OUTPUT=${OUTPUT:-/tmp}
>
> # the architecture on which you want to build your package
> if [ "$ARCH" = "i486" ]; then
>  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
>  LIBDIRSUFFIX=""
> elif [ "$ARCH" = "x86_64" ]; then
>  SLKCFLAGS="-O2 -fPIC"
>  LIBDIRSUFFIX="64"
> fi
>
> # Delete the leftover directories if they exist (due to a previous
> build)
> # and (re)create the packaging directory
> rm -rf $PKG
> mkdir -p $TMP $PKG $OUTPUT
> rm -rf $TMP/$PRGNAM$VERSION
>
> # Change to the TMP directory
> cd $TMP || exit 1
>
> # Extract the application source in TMP
> # tar.gz
> tar -zxvf $CWD/$PRGNAM$VERSION-src.tar.gz || exit 1
>
> 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"
>
> # Change to the application source directory
> cd $PRGNAM$VERSION || exit 1
>
> # Change ownership and permissions if necessary
> chown -R root:root .
> find . -perm 777 -exec chmod 755 {} \;
> find . -perm 775 -exec chmod 755 {} \;
> find . -perm 555 -exec chmod 755 {} \;
> find . -perm 666 -exec chmod 644 {} \;
> find . -perm 664 -exec chmod 644 {} \;
> find . -perm 444 -exec chmod 644 {} \;
>
> # Set configure options
> CFLAGS="$SLKCFLAGS" \
> CFLAGS="$SLKCFLAGS" \
> ./configure \
>  --prefix=/usr \
>  --libdir=/usr/lib${LIBDIRSUFFIX} \
>  --localstatedir=/var \
>  --sysconfdir=/etc \
>  --with-ssl-dir=/usr \
>  --enable-gcc \
>  $ARCH-slackware-linux \
>  2>&1 | tee $OUTPUT/configure-${PRGNAM}.log || exit 1
>
> # compile the source, but exit if anything goes wrong
> make || exit 1
>
> # Install everything into the package directory, but exit if anything
> goes wrong
> make install DESTDIR=$PKG || exit 1
>
> # Create a directory for documentation
> mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
>
> # Copy documentation to the docs directory and fix permissions
> cp -a ChangeLog README.txt license.terms tls.htm \
>  $PKG/usr/doc/$PRGNAM-$VERSION
> cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/
> $PRGNAM.SlackBuild
> find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \;
>
> # Create the ./install directory and copy the slack-desc into it
> mkdir -p $PKG/install
> cat $CWD/slack-desc > $PKG/install/slack-desc
>
> # Strip some libraries and 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
> find . | xargs file | grep "current ar archive" | cut -f 1 -d : |
> xargs strip -g 2> /dev/null
>
> # Build the package
> cd $PKG
> /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$
> {PKGTYPE:-txz}
>
> # End
>
> --
> GUS-BR - Grupo de Usuários de Slackware Brasil
> http://www.slackwarebrasil.org/
> http://groups.google.com/group/slack-users-br
>
> Antes de perguntar:
> http://www.istf.com.br/perguntas/
>
> Para sair da lista envie um e-mail para:
> [email protected]
>
-- 
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br

Antes de perguntar:
http://www.istf.com.br/perguntas/

Para sair da lista envie um e-mail para:
[email protected]

Responder a