ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Q: crosstools-common - нужна помощь...
@ 2004-06-01 14:31 Alexey I. Froloff
  0 siblings, 0 replies; only message in thread
From: Alexey I. Froloff @ 2004-06-01 14:31 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1737 bytes --]

По мотивам 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@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-06-01 14:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-06-01 14:31 [devel] Q: crosstools-common - нужна помощь Alexey I. Froloff

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