CDBS
CDBS (Common Debian Build System) — это абстрактная система сборки программ, основанная на использовании make-файлов с заранее предписанными правилами. Все правила могут быть изменены, дополнены или переписаны. Другими словами, CDBS предоставляет некий рацонально обоснованный набор правил по умолчанию, используя которые можно построить deb-пакет. Любые правила могут быть изменены, если это необходимо.
Необходимость
Для создания deb-пакета необходимо иметь несколько дополнительных файлов. Один из них, debian/rules, является make-фалом и содержит правила автоконфигурирования, накладывания патчей, компиляции исходного кода, генерации документации, установка файлов в определённые директории, посторение deb-пакета из временных файлов, удаление временных файлов и т. д. Естественно, описание этих правил занимает достаточно много строк кода, но при этом большая часть кода может быть переиспользована. Изначально это наблюдение стало причиной создания debhelper-скриптов, CDBS является инструментом ещё более высокого уровня.
Как это работает
CDBS представляет собой набор make-файлов, которые могут быть включены в произвольный make-файл (как правило, это файл debian/rules), созданный майнтейнером или интегратором deb-пакета. Эти подключаемые make-файлы имплементируют действия, которые обычно необходимо непосредственно совершить в файле debian/rules. Например, типичный файл debian/rules должен содержать правила debhelper-а для автоматизации часто выполняемых задач, использование CDBS позволяет значительно уменьшить количество строк кода и упростить структуру файла, так как он предоставляет уже готовые make-правила, объединяющие последовательность выполнения скриптов debhelper’a. Очень часто (например, для пакетов, поддерживаемых мэйнтэйнерами Gnome) достаточно лишь сделать необходимые включения make-файлов CDBS и определить некоторые используемые инструментом переменные, чтобы получить полностью функциональный файл сборки deb-пакета.
Смотри также
Внешние ссылки
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |