[devel] Q: crosstools-common - нужна помощь...

Alexey I. Froloff =?iso-8859-1?q?raorn_=CE=C1_immo=2Eru?=
Вт Июн 1 18:31:49 MSD 2004


По мотивам https://bugzilla.altlinux.org/show_bug.cgi?id=4110
занялся я написанием чего-то похожего на cross-tools...
Естественно хочу сделать это универсальным.

Идея такая:

cross-configure target-platform ./configure --with-something ...

Скрипт cross-configure идёт в /etc/crosstools, смотрит, есть ли
файл target-platform.conf, где описаны переменные типа CC, CXX,
CFLAGS, и запускает ./configure в правильном окружении...

Выглядит это примерно так:

===8<===
#!/bin/sh

target="$1"; shift

. "/etc/crosstools/$target.conf"

export CC
export AR
export RANLIB
...

exec "$@"
===8<===

/etc/crosstools/target-platform.conf выглядит примерно так:

===8<===
: ${CC:=target-platform-gcc}
: ${AR:=target-platform-ar}
: ${RANLIB:=target-platform-ranlib}
...
: ${CFLAGS:=-march=target}
: ${CXXFLAGS:=$CFLAGS}
===8<===

: ${:=} сделаны для того, чтобы можно было переопределить
некоторые переменные (например CFLAGS).

Проблема в том, что cross-configure не знает какие переменные
определены в конфигурационном файле.  Делать . вместо exec
не подходит по причине почти аналогичного cross-make.

Можно либо договориться какие переменные должны гарантированно
находиться в конфигурационном файле, либо экспортировать их
непосредственно из него.

Конструкции ": ${:=}" мне тоже не нравятся - в этом случае нельзя
"сбросить" переменную, чтобы использовалось значение по
умолчанию, например CCAS может быть выставлена в
target-platform-as, а если CCAS не определена используется $CC...

Есть идеи?  Ах, да - /bin/sh only.

-- 
Regards, Sir Raorn.
-------------------
> Не подскажете-ли, как в xfce прикрутить общее для всех меню?
Повесить багу на этот пакет
		-- zerg in sisyphus@
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20040601/3a1cc09c/attachment-0001.bin>


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