ALT Linux architecture porting
 help / color / mirror / Atom feed
From: Michael Shigorin <mike@osdn.org.ua>
To: devel-ports@lists.altlinux.org
Subject: [devel-ports] Fwd: Re: Порт Alt Linux под MIPS-32 и процессор КОМДИВ-64/ RM7000
Date: Wed, 22 Aug 2007 13:24:46 +0300
Message-ID: <20070822102446.GA11266@osdn.org.ua> (raw)

----- Forwarded message from Michael Shigorin <mike/osdn.org.ua> -----

Date: Wed, 15 Aug 2007 10:51:41 +0300
From: Michael Shigorin <mike/osdn.org.ua>
To: gosha <embedded/nm.ru>
Subject: Re: Порт Alt Linux под MIPS-32 и процессор КОМДИВ-64/ RM7000
Cc: "Kirill A. Shutemov" <k.shutemov/velesys.com>,
	Хихин Руслан <hihin/rambler.ru>,
	Alexey Rusakov <ktirf/altlinux.org>

перебрасываю ответ Кирилла, почему-то ко мне он не добрался;
также здесь:

http://www.freesource.info/wiki/ALTLinux/Sisyphus/porting

---

On Tue, Aug 14, 2007 at 11:12:58AM +0300, Michael Shigorin wrote:
> По общественному же порту -- пишите Кириллу Шутемову (kas@),
> он сейчас озадачился сборкой под ARM и вроде как MIPS на qemu

Под MIPS я портировать не планирую. Могу помочь с поддержкой MIPS
в qemu, если интересно. Благо в hasher поддержку qemu
втянули(пока лежит у ldv@ в git'е, в следующем релизе будет).

> -- вдруг сможет поделиться опытом (у него сейчас совсем мало
> времени) именно по переносу базовой системы и зависимостей
> rpm-build.

1. Нужно оценить насколько целесообразна нативная сборка. Думаю для MIPS
она более целесообразна, чем для ARM, но всё же зависит от количества
доступного железа и его производительности. _Вероятно_ стоит выделить
железку для доступа по ssh заинтересованным, а собирать в qemu(хотя его
ещё придётся допиливать под MIPS).

2. Bootstrap лучше делать на каком-нибудь готовом порту. Очень облегчает
жизнь. Я использовал неофициальный порт Debian ARM EABI. Кстати на MIPS,
что-нибудь типа EABI есть?

3. Собирал я так:
- в Debian пересобрал руками пропатченый на тему ARM альтовский rpm,
 поставил и снова пересобрал rpm. уже rpm'ом. Дальнейшая сборка идет
 только  rpm'мом. На этапе Bootstrap'а допустимо подсовывания некоторого
 количества костылей. Первоначально базу rpm'ок собирал по принципу
 "лишь бы собралось".
- пересобрал toolchain(binutils, gcc, glibc), устанавливая в систему по
 мере сборки. Тулчейну и опциям в к gcc в rpm следует уделить особое
 внимания, что бы с одной стороны полученный дистрибутив запускался на
 как можно большем количестве железа, с другой - не терял много
 производительности из-за поддержки устаревшего железа. Я для этого
 покопался в Debian'овских рассылках(это ж opensource -- у кого хочу у
 того и тырю:). Ещё нужно проследить, что бы использовались современные
 технологии. Поясню: в случае ARM есть два ABI: EABI(Embeded ABI) и
 OABI (Old/Obsoleted ABI). Собирать под OABI сейчас не целесообразно,
 ибо со временем он отомрёт. Портов полноразмерных дистрибутивов под
 EABI не так много(официального пота Debian, к примеру, ещё нету),
 следовательно придёться ходить по минам, но это того стоит ;)
- Пересобрал все не-noarch пакеты требуемые для работы hasher'а. У меня
 получилось примерно 130-150 исходных пакетов. Естественно на этом этапе
 я безжалостно резал BuildRequires, что бы не пересобирать половину xorg и
 gnome'а ;). Хотя в случае ALT это не так сложно -- много где есть
 %if_enabled/%if_with. С Федорой мучались больше.
- Дальше пересобирается всё те же 130-150 пакетов, но теперь в hasher'е
 с разворачиванием всех BuildRequires и фиксированием изменений(вот где
 git здорово помогает). Итого у меня получилось около 350'ти исходных
 пакетов. Местами, хорошо помучился: например с большими кольцами в
 BuildRequires. Типа "tetex хотят все, tetex хочет всех" ;)
- После этого уже можно работать с community, для включения изменений в
 пакеты и включения порта в Sisyphus.

Если есть какие-то вопросы, постараюсь ответить.

> Дам-ка я тем, кто судя по отложенным письмам -- имел интерес
> к теме, копии (отвечайте всем).

--
Regards,  Kirill A. Shutemov
+ Belarus, Minsk
+ Velesys LLC, http://www.velesys.com/
+ ALT Linux Team, http://www.altlinux.com/

---

----- End forwarded message -----

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


                 reply	other threads:[~2007-08-22 10:24 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070822102446.GA11266@osdn.org.ua \
    --to=mike@osdn.org.ua \
    --cc=devel-ports@lists.altlinux.org \
    --cc=shigorin@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux architecture porting

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-ports/0 devel-ports/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-ports devel-ports/ http://lore.altlinux.org/devel-ports \
		devel-ports@lists.altlinux.org devel-ports@lists.altlinux.ru devel-ports@lists.altlinux.com
	public-inbox-index devel-ports

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


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