Ero sivun ”Ebuild” versioiden välillä
(→Kieli) |
|||
Rivi 48: | Rivi 48: | ||
===muut ebuildin ominaisuudet=== | ===muut ebuildin ominaisuudet=== | ||
Import-lauseella voit sisällyttää ebuildiin .eclass-tiedostoja eclass-hakemistosta | Import-lauseella voit sisällyttää ebuildiin .eclass-tiedostoja eclass-hakemistosta | ||
\#-merkillä alkavat rivit sivuutetaan kommentteina, kuten bashissa. | |||
==Ohjelma== | ==Ohjelma== |
Versio 21. huhtikuuta 2007 kello 21.59
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 \#-merkillä alkavat rivit sivuutetaan kommentteina, kuten bashissa.