[d-kernel] adjusting kernel headers

Alexander Bokovoy =?iso-8859-1?q?a=2Ebokovoy_=CE=C1_sam-solutions=2Enet?=
Ср Май 21 16:39:44 MSD 2003


On Wed, May 21, 2003 at 03:34:14PM +0400, Dmitry V. Levin wrote:
> Предлагаю несколько модифицированный вариант.
> 
> пакет kernel-headers-common:
> %_sbindir/adjust_kernel_headers
> %_initdir/kheaders
> %dir /etc/sysconfig/kernel
> /usr/include/asm -> /etc/sysconfig/kernel/include/asm
> /usr/include/linux -> /etc/sysconfig/kernel/include/linux
> %ghost /etc/sysconfig/kernel/include -> /usr/include/linux-default/include
> %dir /usr/lib/kernel
> %dir /var/run/kernel
> %ghost /var/run/kernel/*
> 
> Корректировака kernel headers (путём запуска %_initdir/kheaders) должна
> происходить после старта netfs для того, чтобы схема не перестала работать
> в случае использования /usr по NFS.
> 
> Точка переключения, /etc/sysconfig/kernel/include, управляется скриптом
> adjust_kernel_headers, который работает по следующему алгоритму:
> 
> + Определяется полная версия ядра, по умолчанию это $(uname -r)
> + Если существует /usr/include/linux-<версия ядра>-<flavour>/include; то 
> 	/etc/sysconfig/kernel/include -> /usr/include/linux-<версия ядра>-<flavour>/include
>   Иначе если существует /(usr|var)/lib/kernel/<полная версия ядра>; то
>   	/etc/sysconfig/kernel/include -> /usr/lib/kernel/include
>   	создаются файлы в /var/run/kernel/ (как в нынешнем gen_kernel_headers)
>   Иначе если существует /usr/include/linux-default/include; то
>   	/etc/sysconfig/kernel/include -> /usr/include/linux-default/include
>   Иначе
>   	/etc/sysconfig/kernel/include остается неизменным
> 	и возвращается ошибка.
> 
> Преимущества такого управления:
> + на один indirection меньше в случае использования новых kernel headers;
> + не портится ссылка /usr/lib/kernel/include, находящаяся под управлением
> update-alternatives, в случае использования старых kernel headers.
> 
> Недостаток такого управления:
> + на один indirection больше в случае использования старых kernel headers.
> 
> Для совместимости с уже существующими скриптами следует сохранить имя
> /etc/rc.d/scripts/gen_kernel_headers, заменив его на обертку к (возможно,
> не установленному в системе) %_sbindir/adjust_kernel_headers.
Я -- за. Еще мнения?

Давайте по-быстрее завершим разработку политики.

-- 
/ Alexander Bokovoy
---
Goldenstern's Rules:
	(1) Always hire a rich attorney
	(2) Never buy from a rich salesman.



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