Ero sivun ”Ebuild” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
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 ja ohjelma, joka toteuttaa kyseisen kielen. Ebuild on käytössä erityisesti [[Gentoo]]-[[jakelu|jakelussa]] [[paketinhallintajärjestelmä| paketinhallintajärjestelmän]] osana.
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==
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 [[portage |portagessa]] [[sandbox]]-loukkauksen.
ebuild epäilemättä on kielenä monipuolinen, jopa tietyllä tapaa täydellinen. On kuitenkin tärkeää muistaa noudattaa oikeita käytäntöjä tehtäessä paketteja Gentoo-järjestelmään. Esimerkiksi valmiiseen järjestelmään kirjoittaminen useimmissa funktioissa on huonoa tyyliä, ja aiheuttaakin tyypillisesti esimerkiksi [[portage |portagessa]] [[sandbox]]-loukkauksen.


===Muuttujat===
===Muuttujat===
Seuraavien muuttujien määrittely on suositeltavaa, ne määritellään tyypillisesti ebuildin alussa
Seuraavien tyypillisesti ebuildin alussa määriteltävien muuttujien käyttö on suositeltavaa:


  #kuvaus
  #kuvaus
  DESCRIPTION="tässä kerrot, mitä ohjelma tekee"
  DESCRIPTION="tässä kerrot mitä ohjelma tekee"
  #ohjelman kotisivu
  #ohjelman kotisivu
  HOMEPAGE="http://hyodyllinen.ohjelma.org"
  HOMEPAGE="http://hyodyllinen.ohjelma.org"
  #mistä ohjelma lähdekoodi haetaan
  #mistä ohjelman lähdekoodi haetaan
  SRC_URI="ftp://hyodyllinen.ohjelma.org/pub/${P}.tar.bz2"
  SRC_URI="ftp://hyodyllinen.ohjelma.org/pub/${P}.tar.bz2"
  #ohjelman lisenssi
  #ohjelman lisenssi
  LICENCE="GPL-2"
  LICENCE="GPL-2"
  #kertoo, mihin slottiin ebuild asentuu, gentoossa samassa slotissa
  #kertoo, mihin slottiin ebuild asentuu, Gentoossa samassa slotissa
  #ei voi olla kahta samannimistä pakettia
  #ei voi olla kahta samannimistä pakettia
  SLOT="0"
  SLOT="0"
  #kertoo, mihin avainsanoihin ebuild kuuluu
  #kertoo mihin avainsanoihin ebuild kuuluu
  KEYWORDS="x86 -*"
  KEYWORDS="x86 -*"
  #kertoo, mitkä USE-muuttujat vaikuttavat ebuildiin  
  #kertoo mitkä USE-muuttujat vaikuttavat ebuildiin  
  IUSE=""
  IUSE=""
   
   
  #kertoo, mitkä paketit ovat paketin riippuvuuksia
  #kertoo mitkä paketit ovat paketin riippuvuuksia
  DEPEND="dev-libs/hyodyllinen-kirjasto"
  DEPEND="dev-libs/hyodyllinen-kirjasto"
  #kertoo ne ebuildit, jotka ovat ebuildin ajonaikaisia riippuvuuksia
  #kertoo ne ebuildit, jotka ovat ebuildin ajonaikaisia riippuvuuksia
  #tyypillisesti vain näihin voi dynaaminen kirjastolinkkaus hajota.
  #tyypillisesti dynaaminen kirjastolinkkaus voi hajota vain näihin.
  RDEPEND="dev-libs/hyödyllinen-kirjasto"
  RDEPEND="dev-libs/hyödyllinen-kirjasto"


===funktiot===
===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.  
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ä. Funktioton ebuild toimiikin tyypillisesti [[autotools]]-ohjelmaa varten, jolle ei tarvitse määritellä käännösaikaisia valintoja.  


pkg_nofetch
pkg_nofetch
Rivi 46: Rivi 46:
pkg_config
pkg_config


===muut ebuildin ominaisuudet===
===Muut 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.
\#-merkillä alkavat rivit sivuutetaan kommentteina samalla tavalla kuin [[bash]]issa.
 
==Ohjelma==

Versio 21. huhtikuuta 2007 kello 22.11

ebuild
Käyttöliittymä ei
Lisenssi GPL
Kotisivu gentoo.org

Ebuild on kieli jolla kuvaillaan, miten paketteja asennetaan sekä 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 tietyllä tapaa täydellinen. On kuitenkin tärkeää muistaa noudattaa oikeita käytäntöjä tehtäessä paketteja Gentoo-järjestelmään. Esimerkiksi valmiiseen järjestelmään kirjoittaminen useimmissa funktioissa on huonoa tyyliä, ja aiheuttaakin tyypillisesti esimerkiksi portagessa sandbox-loukkauksen.

Muuttujat

Seuraavien tyypillisesti ebuildin alussa määriteltävien muuttujien käyttö on suositeltavaa:

#kuvaus
DESCRIPTION="tässä kerrot mitä ohjelma tekee"
#ohjelman kotisivu
HOMEPAGE="http://hyodyllinen.ohjelma.org"
#mistä ohjelman 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 dynaaminen kirjastolinkkaus voi hajota vain näihin.
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ä. Funktioton ebuild toimiikin tyypillisesti autotools-ohjelmaa varten, 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 ominaisuudet

Import-lauseella voit sisällyttää ebuildiin .eclass-tiedostoja eclass-hakemistosta \#-merkillä alkavat rivit sivuutetaan kommentteina samalla tavalla kuin bashissa.