Ebuild

Linux.fista
Versio hetkellä 21. huhtikuuta 2007 kello 20.19 – tehnyt 80.222.20.89 (keskustelu) (→‎Kieli)
Siirry navigaatioon Siirry hakuun
ebuild
Käyttöliittymä ei
Lisenssi GPL
Kotisivu gentoo.org

Ebuild on kieli jolla kuvaillaan, miten paketteja asennetaan ja ohjelma, joka toteuttaa kyseisen kielen. Ebuild on käytössä erityisesti Gentoo-jakelussa paketinhallintajärjestelmän osana.

Kieli

ebuild epäilemättä on kielenä monipuolinen jopa Turing-täydellinen. On kuitenkin tärkeää muistaa noudattaa hyviä käytäntöjä tehtäessä paketteja gentoo-järjestelmään. Esimerkiksi valmiin järjestelmään kirjoittaminen useimmissa funktioissa on huonoa tyyliä, ja aiheuttaakin tyypillisesti esimerkiksi portagessa sandbox-loukkauksen.

Muuttujat

Seuraavien muuttujien määrittely on suositeltavaa, ne määritellään tyypillisesti ebuildin alussa

#kuvaus
DESCRIPTION="tässä kerrot, mitä ohjelma tekee"
#ohjelman kotisivu
HOMEPAGE="http://hyodyllinen.ohjelma.org"
#mistä ohjelma lähdekoodi haetaan
SRC_URI="ftp://hyodyllinen.ohjelma.org/pub/${P}.tar.bz2"
#ohjelman lisenssi
LICENCE="GPL-2"
#kertoo, mihin slottiin ebuild asentuu, gentoossa samassa slotissa
#ei voi olla kahta samannimistä pakettia
SLOT="0"
#kertoo, mihin avainsanoihin ebuild kuuluu
KEYWORDS="x86 -*"
#kertoo, mitkä USE-muuttujat vaikuttavat ebuildiin 
IUSE=""

#kertoo, mitkä paketit ovat paketin riippuvuuksia
DEPEND="dev-libs/hyodyllinen-kirjasto"
#kertoo ne ebuildit, jotka ovat ebuildin ajonaikaisia riippuvuuksia
#tyypillisesti vain näihin voi dynaaminen kirjastolinkkaus hajota.
RDEPEND="dev-libs/hyödyllinen-kirjasto"

funktiot

ebuild-kielessä on otsikon jälkeen bash-syntaksin mukaisia funktioita joilla on oma osansa paketin asennuksessa, mitään näistä funktioista ei ole pakko määritellä. Tyypillisesti funktioton ebuildi toimiikin autotools-ohjelmalle, jolle ei tarvitse määritellä käännösaikaisia valintoja.

pkg_nofetch pkg_setup src_unpack src_compile src_test src_install pkg_preinst pkg_postinst pkg_prerm pkg_postrm pkg_config

muut ebuildin ominaisuudet

Import-lauseella voit sisällyttää ebuildiin .eclass-tiedostoja eclass-hakemistosta

Ohjelma