From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 14 Jul 2005 18:16:38 +0400 From: "Anton D. Kachalov" To: devel-kernel@altlinux.ru Message-ID: <20050714141638.GA19991@basalt.office.altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit Subject: [d-kernel] =?koi8-r?b?7cHL0s/T2SDQz8TExdLWydfBxc3ZyCDB0sjJ1MXL?= =?koi8-r?b?1NXSIMTM0SDTws/Sy8k=?= kernel-image X-BeenThere: devel-kernel@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: ALT Linux kernel packages development List-Id: ALT Linux kernel packages development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jul 2005 14:16:39 -0000 Archived-At: List-Archive: List-Post: Вот изготовил пару макросов. <кусь> %_kernel_config_offset 1 %_kernel_arches %nil %set_kernel_arches() %global _kernel_arches %* \ %( \ echo "ExclusiveArch: %*" \ n=%_kernel_config_offset \ for arch in %_kernel_arches; do \ echo "Source$n: config-%kernel_base_version-%flavour.$arch" \ n=$(($n+1)) \ done \ ) %get_kernel_config() %{expand:%%SOURCE%( \ n=%_kernel_config_offset \ for arch in %_kernel_arches; do \ if [ "$arch" = "%1" ]; then \ echo $n \ exit \ fi \ n=$((n+1)) \ done \ echo "__No_such_architecture__%{1}" \ )} Пользоваться так. В самом начале спека вместо Source1: config-... и ExclusiveArch: ... вставляем макрос: %set_kernel_arches i586 или %set_kernel_arches i586 i686 athlon x86_64 При этом конфиги для каждой архитектуры должны именоваться как config-%kernel_base_version-%flavour.архитектура Введение более жёсткий правил на --target сделает более корректную сборку ядер под определённый процессор. Т.е. если у нас нет config.i686, то собрать ядрышко с --target=i686 не получится, что само по себе верно, т.к. конфиг ядра создан для i586, а не i686. Далее, в месте, где копируется конфиг на место дефолтного в сборочном дереве, нужно написать что-то вроде такого: %__cp -vf %{get_kernel_config %base_arch} .config Замечания, предложения? Данные макросы, в первую очередь, созданы необходимостью сборки из одного src.rpm ядер как и под i586, так и под x86_64. -- mouse