[devel-distro] про общие и частные механизмы (хак по pack для e2k)
Michael Shigorin
mike at altlinux.org
Mon Aug 24 20:01:31 MSK 2020
Здравствуйте.
У меня тут сумбур за неимением лучшего -- начал писать как
постскриптум к письму antohami@, потом вышло добрых полписьма,
потом понял, что это не к той теме, а именно в рассылку.
Упомянутый коммит выглядит вот так (на эльбрусе поддерживаем ядро
elbrus-def; std-def/un-def пока не светят, как и вообще разные
ветки, а применявшиеся ранее варианты под конкретный процессор
уже упразднены):
---
pack: ensure e2k support on e2k
[...]
--- a/features.in/pack/config.mk
+++ b/features.in/pack/config.mk
-use/pack:
+use/pack::
@$(call add_feature)
+ifeq (,$(filter-out e2k%,$(ARCH)))
+use/pack:: use/e2k; @:
+endif
---
Появился он затем, чтобы не обкладывать громоздким условным
добавлением use/e2k _всех_ образов (включая regular.mk),
которые мы вообще собираем на эльбрусах.
Привожу как есть написанное по этому поводу:
---
Хотел избежать такого частного вмешательства в общий механизм,
но тогда надо делать какой-то другой общий механизм подтягивания
заведомо нужных для целевой архитектуры (или даже машины) кусков
именно по факту того, что она объявлена целевой. Как это делать
красиво, пока не представляю.
Или TARGET какой, или примерно как сделал с pack, только через
хуки: use/arch/$ARCH и определять для каждой архитектуры, но так
не получится с машинами. Хотя... мы же можем сделать что-то
вроде "добавить use/target/$(TARGET), если выставлена переменная
TARGET"; правда, я сходу не помню, как именно, но точно помню,
что подобное применял. Но с таким влёгкую может вылезти новое
измерение, когда "хочу собрать alt-workstation подо всё" выльется
в какое-то очень хитрое итерирование по ARCHES с учётом TARGET,
где можно крепко увязнуть.
Вот об этом думал плотнее посоветоваться с тобой, поскольку
проблема наиболее видна как раз на ARM, но тоже не успевал
хотя бы набросать проблему.
Извини, что сумбурно %) Решил хотя бы как-то изложить.
---
--
---- WBR, Michael Shigorin / http://altlinux.org
------ http://opennet.ru / http://anna-news.info
More information about the devel-distro
mailing list