[devel] buildreqs

Ivan Zakharyaschev =?iso-8859-1?q?vanyaz_=CE=C1_mccme=2Eru?=
Вс Мар 4 18:40:10 MSK 2001


On Sun, 4 Mar 2001, Dmitry V. Levin wrote:

> On Sat, Mar 03, 2001 at 02:21:23PM +0300, Ivan Zakharyaschev wrote:

> > Еще предложение: можно ли buildreqs научить выявлять статическую
> линковку
> > с glibc (чтобы знать, можно ли пакет собирать для i586 в системе с
> glibc
> > для i686)?
>
> Не совсем понятно. Было бы здорово эту мысль развить.

Попробую. Хотя я тоько теоретически понимаю, что такое динамическая и
статическая линковка, и зачем она нужна. Я имею в виду вот что: buildreqs
следит за тем, что происходит во время сборки, к каким файлам,
библиотекам, архивам происходят обращения. Если buildreqs замечает, что
происходят обращения к архивам, используемым для статической линковки с
glibc, то записывается информация об этом в spec-файл в виде комментария.
Чтобы packager знал, что собирать он может пакет только для своей
архитектуры. Buildreqs может вести себя и строже и не полагаться на
совесть packager'а, а посмотреть на то, для какой архитектуры собрана
установленная glibc, и записать это явно в spec-файл в тэг, например,

BuildArchitecture: i686

Тогда у него, наверное, возникнут проблемы при попытке сделать
rpm -bb --target i586.

Но этот вариант плох тем, что если этот spec-файл попадет на другую
системус другой архитектурой, то эта информация он может стать неверной.

Можно добавлять в spec-файл таких пакетов

BuildArchitecture: %(rpm -q glibc-devel --queryformat=%%{ARCH})

или еще как-нибудь выразить информацию, полученную buildreqs
(ввести специальный макрос, проверяющий соответствие target и архитектуры
glibc; встроить проверку в rpm и т.д.)

А ведь, наверное, могут аналогичные проблемы наблюдаться и при статической
линковке не только с glibc, но и c другими библиотеками для не тех
архитектур (несовпадающих с target)? Можно за всеми статическими
линковками, производимыми при сборке следить, определить специальный
макрос типа %needsSameArch ...

-- 
Best regards,
	Ivan Z.

_______________________________________________
Devel mailing list
Devel на linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel



Подробная информация о списке рассылки Devel