Evo ukratko kako FantBuild funkcionise
najpre ga instalirate tako sto kopirate skriptu u /usr/bin i man stranice u /usr/man tako da one man stranice koje se zavrsavaju sa .5 idu u /usr/man/man5 a one sa .8 idu u /usr/man/man8 .
Sada recimo zelite da kompajlirate awesome. Napravite build.sh skriptu i stavite je u recimo /usr/src/awesome
build.sh skripta bi za awesome izgledala ovako recimo
Code: Select all
PKG_NAME="awesome"
PKG_VERSION="3.4.11"
PKG_BUILD=1
PKG_HOMEPAGE="http://awesome.naquadah.org"
PKG_SOURCE="http://awesome.naquadah.org/download/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_MAINTAINER="Stefan Nozinic <stefan AT lugons DOT org>"
build_pkg()
{
cd $SRCDIR/$PKG_NAME-$PKG_VERSION/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBSUFFIX} \
-DMAN_INSTALL_DIR=/usr/man \
-DSYSCONFDIR=/etc \
-DPREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release .
}
install_pkg()
{
cd $SRCDIR/$PKG_NAME-$PKG_VERSION/
make DESTDIR=$PKGDIR install
}
Sada predjete u dir gde ste napravili build.sh skriptu (u nasem primeru /usr/src/awesome) i tu pokrenete fantbuild
on ce preuzeti awesome, kompajlirati, napraviti .txz paket i recice vam gde se paket nalazi
onda vi samo uradite installpkg /putanja/do/paketa.txz i to je to
Cilj je da se brzo napisu skripte koje mogu da kompajliraju program ali kao sto vidite mi u build.sh nismo proveravali premisije, kopirali README slack-desc itd, mi smo samo rekli gde moze skinuti source, koji paket, koja verzija, par komandi za build koje su potrebne i to je to. Nismo morali kucati makepkg komandu itd u skripti. To fantbuild sam radi za nas.
Naravno FantBuild-u nedostaju neke stvari kao npr opcija da svlaci source sa gita, da se definise CFLAGS CXXFLAGS LDFLAGS itd...
Ali trudicu se da i to sto pre dodam u skriptu
Vi mozete probati i ako zelite prijavite koji bug kako bi unapredili zajedno ovo
Uzivajte