ALT Linux Team development discussions
 help / color / mirror / Atom feed
* Re: [devel] Определение целевой архитектуры в mkimage и m-p
  @ 2019-10-01 23:44 ` Alexey V. Vissarionov
  2019-10-02  6:38 ` Ivan A. Melnikov
  1 sibling, 0 replies; 5+ messages in thread
From: Alexey V. Vissarionov @ 2019-10-01 23:44 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2019-10-02 00:06:58 +0300, Leonid Krivoshein wrote:

 > Простой вопрос: как в процессе сборки образа отличить целевую
 > архитектуру: x86_64, aarm64 или powerpc? Могу я полагаться на
 > $(uname -m) или есть более кошерная переменная?

В общем случае целевая может отличаться от хостовой - например,
сборка для старой писюшатины i686 может происходить на x86_64

 > И что там конкретно должно быть, на всякий?

Я знаю про:

^aarch64$
^arm (например, armv7l)
^i.86$ (например, i686)
^x86_64$


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Определение целевой архитектуры в mkimage и m-p
    2019-10-01 23:44 ` [devel] Определение целевой архитектуры в mkimage и m-p Alexey V. Vissarionov
@ 2019-10-02  6:38 ` Ivan A. Melnikov
  2019-10-02  6:43   ` Антон Мидюков
  1 sibling, 1 reply; 5+ messages in thread
From: Ivan A. Melnikov @ 2019-10-02  6:38 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Wed, Oct 02, 2019 at 12:06:58AM +0300, Leonid Krivoshein wrote:
> Коллеги, приветствую!
> 
> Простой вопрос: как в процессе сборки образа отличить целевую архитектуру:
> x86_64, aarm64 или powerpc? Могу я полагаться на $(uname -m) или есть более
> кошерная переменная? И что там конкретно должно быть, на всякий?

Полагаться на $(uname -m) нельзя -- образы часто собираются через
qemu-user на x86_64, особенно для arm* и mipsel.

Если Вы про mkimage-profiles, то там есть переменная $(ARCH), или
$GLOBAL_ARCH во всяких image-scripts.d. Примеры использования, и,
соответственно, что там может быть, несложно на git grep'ать.

--
  wbr,
    iv m.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Определение целевой архитектуры в mkimage и m-p
  2019-10-02  6:38 ` Ivan A. Melnikov
@ 2019-10-02  6:43   ` Антон Мидюков
    0 siblings, 1 reply; 5+ messages in thread
From: Антон Мидюков @ 2019-10-02  6:43 UTC (permalink / raw)
  To: devel

02.10.2019 13:38, Ivan A. Melnikov пишет:
> On Wed, Oct 02, 2019 at 12:06:58AM +0300, Leonid Krivoshein wrote:
>> Коллеги, приветствую!
>>
>> Простой вопрос: как в процессе сборки образа отличить целевую архитектуру:
>> x86_64, aarm64 или powerpc? Могу я полагаться на $(uname -m) или есть более
>> кошерная переменная? И что там конкретно должно быть, на всякий?
> Полагаться на $(uname -m) нельзя -- образы часто собираются через
> qemu-user на x86_64, особенно для arm* и mipsel.
>
> Если Вы про mkimage-profiles, то там есть переменная $(ARCH), или
> $GLOBAL_ARCH во всяких image-scripts.d. Примеры использования, и,
> соответственно, что там может быть, несложно на git grep'ать.
В mkimage-profiles не проблема. Леонид хочет в mkimage сделать проверку 
архитектур. Но там, вроде, проверка архитектур ни где не делается.

-- 
С уважением, Антон Мидюков <antohami@altlinux.org>



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Определение целевой архитектуры в mkimage и m-p
  @ 2019-10-02  9:46       ` Ivan A. Melnikov
  2019-10-02 10:06         ` Alexey Gladkov
  0 siblings, 1 reply; 5+ messages in thread
From: Ivan A. Melnikov @ 2019-10-02  9:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Wed, Oct 02, 2019 at 12:16:19PM +0300, Leonid Krivoshein wrote:
> 
> 
> 02.10.2019 9:43, Антон Мидюков пишет:
> > 02.10.2019 13:38, Ivan A. Melnikov пишет:
> > > On Wed, Oct 02, 2019 at 12:06:58AM +0300, Leonid Krivoshein wrote:
> > > > Коллеги, приветствую!
> > > > 
> > > > Простой вопрос: как в процессе сборки образа отличить целевую
> > > > архитектуру:
> > > > x86_64, aarm64 или powerpc? Могу я полагаться на $(uname -m) или
> > > > есть более
> > > > кошерная переменная? И что там конкретно должно быть, на всякий?
> > > Полагаться на $(uname -m) нельзя -- образы часто собираются через
> > > qemu-user на x86_64, особенно для arm* и mipsel.
> > > 
> > > Если Вы про mkimage-profiles, то там есть переменная $(ARCH), или
> > > $GLOBAL_ARCH во всяких image-scripts.d. Примеры использования, и,
> > > соответственно, что там может быть, несложно на git grep'ать.
> > В mkimage-profiles не проблема. Леонид хочет в mkimage сделать проверку
> > архитектур. Но там, вроде, проверка архитектур ни где не делается.
> > 
> 
> Скрипт отрабатывает в чруте собираемого образа. По большому счёту не так
> важно, будет он частью mkimage, частью m-p или попадёт туда как-то иначе.
> Потому что в конечном итоге его вызовет mkimage. И, как я подозреваю,
> вызовет он его, предварительно почистив окружение. Поэтому и спрашиваю...

В m-p проще (и правильнее наверное) использовать $GLOBAL_ARCH, она
создаётся и прокидывается куда нужно; вне m-p вполне можно воспользоваться
$(rpm --eval '%_host_cpu'), видел в паре мест, должно работать хорошо.

Ещё можно скрипт в пакет запаковать, правильный для каждой архитектуры,
а в профиле просто добавить пакет ;D

--
  wbr,
    iv m.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [devel] Определение целевой архитектуры в mkimage и m-p
  2019-10-02  9:46       ` Ivan A. Melnikov
@ 2019-10-02 10:06         ` Alexey Gladkov
  0 siblings, 0 replies; 5+ messages in thread
From: Alexey Gladkov @ 2019-10-02 10:06 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Wed, Oct 02, 2019 at 01:46:10PM +0400, Ivan A. Melnikov wrote:
> On Wed, Oct 02, 2019 at 12:16:19PM +0300, Leonid Krivoshein wrote:
> > 
> > 
> > 02.10.2019 9:43, Антон Мидюков пишет:
> > > 02.10.2019 13:38, Ivan A. Melnikov пишет:
> > > > On Wed, Oct 02, 2019 at 12:06:58AM +0300, Leonid Krivoshein wrote:
> > > > > Коллеги, приветствую!
> > > > > 
> > > > > Простой вопрос: как в процессе сборки образа отличить целевую
> > > > > архитектуру:
> > > > > x86_64, aarm64 или powerpc? Могу я полагаться на $(uname -m) или
> > > > > есть более
> > > > > кошерная переменная? И что там конкретно должно быть, на всякий?
> > > > Полагаться на $(uname -m) нельзя -- образы часто собираются через
> > > > qemu-user на x86_64, особенно для arm* и mipsel.
> > > > 
> > > > Если Вы про mkimage-profiles, то там есть переменная $(ARCH), или
> > > > $GLOBAL_ARCH во всяких image-scripts.d. Примеры использования, и,
> > > > соответственно, что там может быть, несложно на git grep'ать.
> > > В mkimage-profiles не проблема. Леонид хочет в mkimage сделать проверку
> > > архитектур. Но там, вроде, проверка архитектур ни где не делается.
> > > 
> > 
> > Скрипт отрабатывает в чруте собираемого образа. По большому счёту не так
> > важно, будет он частью mkimage, частью m-p или попадёт туда как-то иначе.
> > Потому что в конечном итоге его вызовет mkimage. И, как я подозреваю,
> > вызовет он его, предварительно почистив окружение. Поэтому и спрашиваю...
> 
> В m-p проще (и правильнее наверное) использовать $GLOBAL_ARCH, она
> создаётся и прокидывается куда нужно; вне m-p вполне можно воспользоваться
> $(rpm --eval '%_host_cpu'), видел в паре мест, должно работать хорошо.
> 
> Ещё можно скрипт в пакет запаковать, правильный для каждой архитектуры,
> а в профиле просто добавить пакет ;D

В mkimage есть GLOBAL_TARGET, TARGET [1], которая превращается в
соответствующую опцию hsh. Да, это конечно не архитектура процессора.

Если же используется qemu, то есть HSH_USE_QEMU [2], которая определяет
какой qemu будет использоваться.

[1] https://github.com/altlinux/mkimage/blob/master/doc/README.ru#L211
[2] https://github.com/altlinux/mkimage/blob/master/doc/README.ru#L369

-- 
Rgrds, legion



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-10-02 10:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-01 23:44 ` [devel] Определение целевой архитектуры в mkimage и m-p Alexey V. Vissarionov
2019-10-02  6:38 ` Ivan A. Melnikov
2019-10-02  6:43   ` Антон Мидюков
2019-10-02  9:46       ` Ivan A. Melnikov
2019-10-02 10:06         ` Alexey Gladkov

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git