ebuild

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

ebuildформат bash-сценариев для системы управления пакетами Portage в операционной системе Gentoo. Файлы этого формата имеют расширение .ebuild и содержат переменные, команды, информацию о зависимостях, список файлов, необходимых для скачивания, распаковки, наложения патчей, сборки и установки пакета. Файлы сценариев именуются по шаблону «название-версия.ebuild» (например apache-2.0.59-r2.ebuild). Существуют ebuild-файлы как для компилирования пакетов из исходных кодов, так и для установки бинарных пакетов. Файлы, которые устанавливают только документацию или такую информацию как шрифты или темы для приложений, называются «metabuild»

ebuild-файлы обычно создаются разработчиками Gentoo Linux для наиболее распространённых и используемых программ. Однако пользователи могут создавать сами файлы сценариев для установки программ[1], ещё не добавленных в дерево Portage. Для этого предусмотрены специальные средства — оверлеи (англ. overlays перекрытие). Позже файлы с расширением .ebuild могут быть внесены в каталоги пакетов (дерево портежей) операционной системы Gentoo.

Пример ebuild’а

[править | править код]
# Copyright 1999-2005 Gentoo Foundation 
# Distributed under the terms of the GNU General Public License v2
# $Header: $

       inherit some_eclass another_eclass

       DESCRIPTION="Super-useful stream editor (sed)"
       HOMEPAGE="http://www.gnu.org/software/sed/sed.html"
       SRC_URI="ftp://alpha.gnu.org/pub/gnu/sed/${P}.tar.gz"

       LICENSE="GPL-2"

       SLOT="0"

       KEYWORDS="~x86"

       IUSE=""

       DEPEND="virtual/libc"
       RDEPEND="virtual/libc"

       src_compile() {
            econf || die "could not configure"
            emake || die "emake failed"                                                              
       }

       src_install() {                                                              
            into /usr
            doinfo doc/sed.info
            doman doc/sed.1 
            into /
            dobin sed/sed || die "dobin sed failed"
            dodir /usr/bin                                                              
            dosym /bin/sed /usr/bin/sed                                              
            dodoc NEWS README* THANKS TODO AUTHORS BUGS ANNOUNCE
       }

Примечания

[править | править код]