Muokataan sivua Ebuild
Siirry navigaatioon
Siirry hakuun
Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.
Nykyinen versio | Oma tekstisi | ||
Rivi 1: | Rivi 1: | ||
{{Ohjelma | nimi=ebuild | kuva= | kuvateksti= | lisenssi=[[GPL]]| käyttöliittymä=ei | kotisivu=[http://gentoo.org gentoo.org] }} | |||
{{Ohjelma | |||
| nimi=ebuild | |||
| kuva= | |||
| kuvateksti= | |||
| lisenssi=[[GPL]] | |||
| käyttöliittymä=ei | |||
| kotisivu=[http://gentoo.org gentoo.org] | |||
}} | |||
Ebuild on kieli jolla kuvaillaan, miten paketteja asennetaan sekä ohjelma, joka toteuttaa kyseisen kielen. Ebuild on käytössä erityisesti [[Gentoo]]-[[jakelu|jakelussa]] [[paketinhallintajärjestelmä| paketinhallintajärjestelmän]] osana. | |||
==Kieli== | ==Kieli== | ||
Rivi 15: | Rivi 7: | ||
===Muuttujat=== | ===Muuttujat=== | ||
Seuraavien tyypillisesti ebuildin alussa määriteltävien muuttujien | Seuraavien tyypillisesti ebuildin alussa määriteltävien muuttujien käyttö on suositeltavaa: | ||
#kuvaus | #kuvaus | ||
Rivi 50: | Rivi 42: | ||
*CATEGORY=kategoria | *CATEGORY=kategoria | ||
Näitä on hyvä käyttää SRC_URI:n ja muun tarvittavan kanssa. Mikäli [[gentoo|gentoon]] tai muun [[jakelu|jakelun]] tarjoama versiomuotoilu ei sovi | Näitä on hyvä käyttää SRC_URI:n ja muun tarvittavan kanssa. Mikäli [[gentoo| gentoon]], tai muun [[jakelu | jakelun]], tarjoama versiomuotoilu ei sovi määrittele vastavat sopivat muuttujat MY_ -etuliitteellä, esim MY_P. Älä muuta ebuildin nimeä. | ||
====Hakemistomuuttujat==== | ====Hakemistomuuttujat==== | ||
Rivi 57: | Rivi 49: | ||
*WORKDIR="${PORTAGE_TMPDIR}/portage/${CATEGORY}/${PF}/work" kertoo mihin hakemistoon ohjelman SRC_URI-objektit puretaan tai siirretään kääntämistä, tai muuta, varten. | *WORKDIR="${PORTAGE_TMPDIR}/portage/${CATEGORY}/${PF}/work" kertoo mihin hakemistoon ohjelman SRC_URI-objektit puretaan tai siirretään kääntämistä, tai muuta, varten. | ||
*FILESDIR="${PORTDIR}/${CATEGORY}/${PN}/files" files-kansio ebuidin hakemistosta tänne voit tallettaa esimerkiksi pienikokoisia patcheja, alle | *FILESDIR="${PORTDIR}/${CATEGORY}/${PN}/files" files-kansio ebuidin hakemistosta tänne voit tallettaa esimerkiksi pienikokoisia patcheja, alle 20kiB. | ||
*S="${WORKDIR}/${P}" Tämä kertoo pääasiallisen kansion, jossa työ tehdään oletusasetusta voi muokata tarpeen mukaan, yleensä suhteessa WORKDIR:iin. | *S="${WORKDIR}/${P}" Tämä kertoo pääasiallisen kansion, jossa työ tehdään oletusasetusta voi muokata tarpeen mukaan, yleensä suhteessa WORKDIR:iin. | ||
Rivi 67: | Rivi 59: | ||
====Riippuvuusmuuttujat==== | ====Riippuvuusmuuttujat==== | ||
*DEPEND Ebuildin riippuvuudet, näiden tulee olla asennettuina, ennen kuin ebuild ajetaan. | *DEPEND Ebuildin riippuvuudet, näiden tulee olla asennettuina, ennen kuin ebuild ajetaan. | ||
*RDEPEND Ebuildin ajonaikaiset riippuvuudet, esimerkiksi | *RDEPEND Ebuildin ajonaikaiset riippuvuudet, esimerkiksi dynaamisestiladattavat kirjastot. | ||
*PDEPEND Ebuildin jälkeisriippuvuudet, nämä tulee asentaa ebuildin ajon jälkeen. | *PDEPEND Ebuildin jälkeisriippuvuudet, nämä tulee asentaa ebuildin ajon jälkeen. | ||
*PROVIDE Kuvailee paketin tarjoaman virtuaalipaketin, älä käytä, jos et tiedä, mitä olet tekemässä. | *PROVIDE Kuvailee paketin tarjoaman virtuaalipaketin, älä käytä, jos et tiedä, mitä olet tekemässä. | ||
Rivi 73: | Rivi 65: | ||
Dynaamisten riippuvuuksien määrittely seuraavia yhdistelemällä loogisina lausekkeina. riippuvuudet ilmaistaan pitkässä muodossa kategoria/paketti-(versio) | Dynaamisten riippuvuuksien määrittely seuraavia yhdistelemällä loogisina lausekkeina. riippuvuudet ilmaistaan pitkässä muodossa kategoria/paketti-(versio) | ||
*<, >, =, >= ja <= nämä kuvaavat, että riippuvuuden version tulee olla | *<, >, =, >= ja <= nämä kuvaavat, että riippuvuuden version tulee olla kirjattulle versiolle pienempi, suurempi, yhtäsuuri kuin, suurempi tai yhtä suuri kuin tai pienempi tai yhtä suuri kuin. | ||
*use? riippuvuus on voimassa, mikäli USE-muuttuja use on asetettu. Vastaavasti ei voimassa kun !use?. | *use? riippuvuus on voimassa, mikäli USE-muuttuja use on asetettu. Vastaavasti ei voimassa kun !use?. | ||
Rivi 84: | Rivi 76: | ||
====Muut muuttujat==== | ====Muut muuttujat==== | ||
===Funktiot=== | ===Funktiot=== | ||
ebuild-kielessä on otsikon jälkeen [[Bash-skriptaus|bash-syntaksin]] mukaisia funktioita, joilla on oma osansa paketin asennuksessa. Mitään näistä funktioista ei ole pakko määritellä. Funktioton ebuild toimiikin tyypillisesti [[autotools]]-ohjelmaa varten, jolle ei tarvitse määritellä käännösaikaisia valintoja. src-alkuiset funktiot ajetaan tyypillisesti | ebuild-kielessä on otsikon jälkeen [[Bash-skriptaus|bash-syntaksin]] mukaisia funktioita, joilla on oma osansa paketin asennuksessa. Mitään näistä funktioista ei ole pakko määritellä. Funktioton ebuild toimiikin tyypillisesti [[autotools]]-ohjelmaa varten, jolle ei tarvitse määritellä käännösaikaisia valintoja. src-alkuiset funktiot ajetaan tyypillisesti sandboxin sisällä, eikä niissä saisi kajota muuhun järjestelmään. | ||
====pkg_nofetch==== | ====pkg_nofetch==== | ||
Rivi 108: | Rivi 86: | ||
Ajetaan tarkistuksia asetusten suhteen. | Ajetaan tarkistuksia asetusten suhteen. | ||
====src_unpack==== | ====src_unpack==== | ||
Puretaan SRC_URI-objekti $WORKDIR-muuttujan osoittamaan kansioon ja ajetaan | Puretaan SRC_URI-objekti $WORKDIR-muuttujan osoittamaan kansioon ja ajetaan epatch funktio patcheille tarpeen mukaan, tar.bz2 ja tar.gz -pakatuille ohjelmille riittää tässä oletusfunktio. | ||
====src_compile==== | ====src_compile==== | ||
Tässä funktiossa käännetään lähdekoodi tai tehdään muuta vastaavaa. | Tässä funktiossa käännetään lähdekoodi tai tehdään muuta vastaavaa. | ||
Rivi 138: | Rivi 115: | ||
*use_enable valinta [configure-valitsin=valinta] [configure-valitsinasetus], palauttaa | *use_enable valinta [configure-valitsin=valinta] [configure-valitsinasetus], palauttaa | ||
<tt>--enable-configure-valitsin=configure-valitsinasetus</tt> tai disable, mikäli muuttujaa ei ole määritelty. | <tt>--enable-configure-valitsin=configure-valitsinasetus</tt> tai disable, mikäli muuttujaa ei ole määritelty. | ||
===Muut ominaisuudet=== | ===Muut ominaisuudet=== | ||
Import-lauseella voit sisällyttää ebuildiin .eclass-tiedostoja eclass-hakemistosta #-merkillä alkavat rivit sivuutetaan kommentteina samalla tavalla kuin [[bash]]issa. Omia muuttujia voidaan määritellä bash-tyylisesti missä tahansa ebuidin kohdassa. | |||
===Tyyli=== | ===Tyyli=== | ||
Rivi 189: | Rivi 157: | ||
*clean, siistii ebuildin luoman hakemistopuun $PORTAGE_TMPDIR:stä | *clean, siistii ebuildin luoman hakemistopuun $PORTAGE_TMPDIR:stä | ||
*package, luo binääripaketin tar.bz2-muodossa $D:n hakemistopuusta ja asettaa sen PGKDIR="${PORTDIR}/packages"-muuttujan osoittamaan hakemistoon | *package, luo binääripaketin tar.bz2-muodossa $D:n hakemistopuusta ja asettaa sen PGKDIR="${PORTDIR}/packages"-muuttujan osoittamaan hakemistoon | ||
*rpm, luo package-toimintoa vastaavasti [[rpm|rpm-paketin]], tämä paketti ei välttämättä toimi kuitenkaan kaikissa [[jakelu|jakeluissa]] ja sen ominaisuudet saattavat olla vajavaiset. | *rpm, luo package-toimintoa vastaavasti [[rpm|rpm-paketin]], tämä paketti ei välttämättä toimi kuitenkaan kaikissa [[jakelu| jakeluissa]] ja sen ominaisuudet saattavat olla vajavaiset. | ||
==Muuta luettavaa== | |||
===Man-sivut=== | ===Man-sivut=== | ||
*<tt> | *<tt>man 1 ebuild</tt> ebuild-ohjelman man-sivu | ||
*<tt> | *<tt>man 5 ebuild</tt> ebuild-tiedostorakenteen, tai kielen, man-sivu | ||
Lisää man-sivuja aiheesta | Lisää man-sivuja aiheesta gentoossa saat | ||
emerge portage-manpages | |||
*<tt> | *<tt>man eutils.eclass</tt> ... | ||
[[Luokka: | [[Luokka:Ylläpitotyökalut]] | ||