The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск пакетного менеджера RPM 4.16"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Выпуск пакетного менеджера RPM 4.16" –1 +/
Сообщение от Аноним (200), 03-Окт-20, 18:25 
Да что ж вы, только rpm видевшие, спорить про deb берётесь?
> Как в debian/rules прописать путь к директории с корнем будущего пакета, почему
> его нужно угадать и почему он не вынесен в переменную окрудения
> (env)? В rpm это макрос %buildroot или эквивалентная переменная окружения RPM_BUILD_ROOT.

Зачем тебе его явно прописывать? И в rpm-спеках так уже лет 10 никто не делает. А если нужно запаковать содержимое конкретного каталога, то для этого вообще никакой rules не нужен. dpkg-deb -b в руки и пакуй что хошь. Вот это называется гибкость, а не возможность переопределить макрос в спеке.

> Как прописать путь к стандартному расположению библиотек? Нужно вручную прописать /usr/lib/x86_64-linux-gnu
> и понадеяться, что не ошибся, да еще и для каждой архитектуры
> отдельный вариант сделать вручную, когда как в rpm просто макрос %_libdir.
> А задача упаковывать deb в обход dpkg-buildpackage весьма странная, попахивает корявой
> сборкой пакета, но иногда может быть полезно, согласен.

Вручную писать? Серьёзно?
На, любуйся. Надеюсь, с синтаксисом GNU make знаком хоть немножко? Не только %define в спеках умеешь?


$ cat /usr/share/dpkg/architecture.mk
# This Makefile snippet defines all the DEB_HOST_* / DEB_BUILD_* variables
# that dpkg-architecture can return. Existing values of those variables
# are preserved as per policy.

dpkg_lazy_eval ?= $$(or $$(value DPKG_CACHE_$(1)),$$(eval DPKG_CACHE_$(1) := $$(shell $(2)))$$(value DPKG_CACHE_$(1)))

dpkg_architecture_setvar = export $(1) ?= $(call dpkg_lazy_eval,$(1),dpkg-architecture -q$(1))

$(foreach machine,BUILD HOST TARGET,\
  $(foreach var,ARCH ARCH_ABI ARCH_LIBC ARCH_OS ARCH_CPU ARCH_BITS ARCH_ENDIAN GNU_CPU GNU_SYSTEM GNU_TYPE MULTIARCH,\
    $(eval $(call dpkg_architecture_setvar,DEB_$(machine)_$(var)))))


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск пакетного менеджера RPM 4.16, opennews, 30-Сен-20, 17:28  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру