Home
Repository 32bit  Forum
Repository 64bit  Wiki

Modifiche

Slackware & SlackBuild

2 330 byte rimossi, 11:00, 11 apr 2012
m
nessun oggetto della modifica
L'opzione --cleanup, se prevista, aiuta l'eliminazione automatica delle directory di lavoro.
= Esempio di SlackBuild: =
 
Questo è un breve esempio (commentato) di SlackBuild:
<pre>
#! /bin/bash
# definiamo alcune variabili contenenti la directory corrente e quella temporanea di lavoro:
CWD=`pwd`
if ["$TMP" = ""]; then
TMP=/tmp
fi
PKG=$TMP/package-xine-lib
# Settiamo qualche altra variabile per velocizzare il lavoro:
NAME=xine-lib
VERSION=1.0
ARCH=i486
BUILD=1
if [ ! -d $TMP ]; then
mkdir -p $TMP # posizione dove creiamo il sorgente
fi
if [ ! -d $PKG ]; then
mkdir -p $PKG # posizione dove creiamo il package
fi
echo "+-----------------+"
echo "| $NAME-$VERSION|"
echo "+-----------------+"
cd $TMP
# scompattiamo il sorgente
tar zxf $CWD/$NAME-$VERSION.tar.gz
# ci portiamo all'interno della directory appena scompattata
cd $NAME-$VERSION
# lanciamo il configure passandogli le opzioni di ottimizzazione di GCC
CFLAGS="-march=i486 -mcpu=i686" ./configure --prefix=/usr
# compiliamo
make
# passiamo a make , con il parametro DESTDIR la dir dove creiamo il package
make DESTDIR=$PKG install
# strippiamo gli eseguibili e le librerie
strip $PKG/usr/bin/*
strip --strip-unneeded $PKG/usr/lib/*.so
strip --strip-unneeded $PKG/usr/lib/xine/plugins/1.0.0/*.so
strip --strip-unneeded $PKG/usr/lib/xine/plugins/1.0.0/post/*.so
strip --strip-unneeded $PKG/usr/lib/xine/plugins/1.0.0/vidix/*.so
# rinominiamo e spostiamo la cartella doc standard, nel caso venga creata in un path non corretto
# come /usr/share/doc/xine-1.0
mv -f $PKG/usr/share/doc $PKG/usr/
mv -f $PKG/usr/doc/xine $PKG/usr/doc/$NAME-$VERSION
# copiamo i file con informazioni da conservare della dir doc
cp -a \
AUTHORS COPYING CREDITS ChangeLog INSTALL NEWS README TODO \
$PKG/usr/doc/$NAME-$VERSION
# gzippiamo le man pages
gzip $PKG/usr/man/man1/*
# impostiamo i permessi
chown -R root.bin $PKG/usr/bin
chown -R root.root $PKG/usr/doc
chmod -R 644 $PKG/usr/doc/$NAME-$VERSION/*
chown -R root.root $PKG/usr/include
chown -R root.root $PKG/usr/man
chown -R root.root $PKG/usr/share
mkdir -p $PKG/install
# copiamo slack-desc in install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
# Creiamo il pacchetto con makepkg
makepkg -l y -c n $TMP/$NAME-$SLVERSION-$ARCH-$BUILD.tgz
# eliminiamo le dir di lavoro qualora avessimo eseguito lo SlackBuild con l'opzione --cleanup
if [ "$1" = "--cleanup" ]; then
rm -rf $TMP/$NAME-$VERSION
rm -rf $PKG
fi
</pre>
= Considerazioni Finali: =
Ottimizzare alcune applicazioni e molto altro......
autore: [[Utente:Loris | Loris ]] 20042012
789
contributi