From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 14 Mar 2018 08:45:22 +0300 From: Michael Shigorin To: devel-distro@lists.altlinux.org Message-ID: <20180314054522.GA21886@imap.altlinux.org> References: <20180314050354.GA21344@imap.altlinux.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="gBBFr7Ir9EOA20Yy" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20180314050354.GA21344@imap.altlinux.org> User-Agent: Mutt/1.5.23.88.hg577987ca2d02 (2014-03-12) Subject: [devel-distro] =?koi8-r?b?zsUsIEE6IHBrZ0BJQTMyLCBwa2dAWDg2?= X-BeenThere: devel-distro@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Distributions development List-Id: Distributions development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Mar 2018 05:45:22 -0000 Archived-At: List-Archive: --gBBFr7Ir9EOA20Yy Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit On Wed, Mar 14, 2018 at 08:03:55AM +0300, I wrote: > Приложенный патч, который ожидается в mkimage-profiles 1.2.12 Уже не ожидается. Ожидается приложенный к этому письму :) До меня всё-таки дошло, что zerg@ спрашивал про штуку, которая теперь названа @IA32 ("32-битный x86-пакет, названный так, как принято в репозиториях для выбранной целевой платформы") -- а мне с утра пораньше понадобилась чуть другая штука, которая обеспечит включение заданного пакета на любой x86-архитектуре, но только на x86. --  ---- WBR, Michael Shigorin / http://altlinux.org   ------ http://opennet.ru / http://anna-news.info --gBBFr7Ir9EOA20Yy Content-Type: text/x-patch; charset=koi8-r Content-Disposition: attachment; filename="0001-lists-doc-introduce-IA32-X86-archdep-macros.patch" Content-Transfer-Encoding: 8bit >>From 2d257a425b9e9f49483559857c4e894d1743aa72 Mon Sep 17 00:00:00 2001 From: Michael Shigorin Date: Wed, 14 Mar 2018 07:55:42 +0300 Subject: [PATCH] lists, doc: introduce @IA32, @X86 archdep macros The former ("proper 32-bit x86 package form") has been suggested by zerg@ quite some time ago but the desired interface wasn't clear at the moment IIRC; a quiet morning helped me realize that ICAClient-preinstall@IA32 is rather more readable than ICAClient-preinstall@i586 i586-ICAClient-preinstall@x86_64 so here's the (trivial) implementation; and I actually needed the latter, @X86 ("any-x86") to mark x86-only packages so xorg-drv-intel@X86 is now equivalent to xorg-drv-intel@i586 xorg-drv-intel@x86_64 --- doc/archdep.txt | 9 +++++++++ pkg.in/lists/Makefile | 4 +++- pkg.in/lists/README | 3 +++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/doc/archdep.txt b/doc/archdep.txt index 6383e37..c9ecddd 100644 --- a/doc/archdep.txt +++ b/doc/archdep.txt @@ -40,7 +40,16 @@ haspd@i586 i586-haspd@x86_64 +или упрощённо (с версии 1.2.12): + + haspd@IA32 + Для преобразования можно воспользоваться следующей командой: sed -r -e 's/@I586_ONLY@([^\t ]+)/\1@i586/g' \ -e 's/@X86_64_ONLY@([^\t ]+)/\1@x86_64/g' + +При необходимости добавить пакет только на x86-архитектурах (неважно, +i586 или x86_64) можно воспользоваться макросом X86 (с версии 1.2.12): + + xorg-drv-intel@X86 diff --git a/pkg.in/lists/Makefile b/pkg.in/lists/Makefile index e112e4f..02bc67e 100644 --- a/pkg.in/lists/Makefile +++ b/pkg.in/lists/Makefile @@ -40,8 +40,10 @@ grep-archdep: @# xargs -L 1024 -n 1024 ? -- breaks -I @find $(TARGET) -type f \ | xargs -I '__' sh -c '\ + sed -ri "s/\\<([^@ ]*)@X86\\>/\\1@i586 \\1@x86_64/g" __; \ + sed -ri "s/\\<([^@ ]*)@IA32\\>/\\1@i586 i586-\\1@x86_64/g" __;\ sed -rni "s/\\<([^@ ]*)\\>|\\<([^@ ]*)@$a\\>/\\1\\2/pg" __; \ - sed -i -r "s/\\<([^@ ]*)@[^@ ]+\\> *//g" __' + sed -ri "s/\\<([^@ ]*)@[^@ ]+\\> *//g" __' # do beforehand as foreach gets expanded before recipe execution $(TARGET): diff --git a/pkg.in/lists/README b/pkg.in/lists/README index 21719a0..9e4602e 100644 --- a/pkg.in/lists/README +++ b/pkg.in/lists/README @@ -16,6 +16,9 @@ устойчивые группы пакетов могут заслуживать выделения отдельным списком. +При копировании списков в BUILDROOT происходит их обработка +с применением архитектурнозависимых макросов, см. doc/archdep.txt + NB: списки пакетов есть смысл выделять в файлы при повторном использовании либо при заметном объёме, когда перечисление прямо в конфигурации сильно снижает её читаемость. -- 2.10.4 --gBBFr7Ir9EOA20Yy--