ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexander Bokovoy <a.bokovoy@sam-solutions.net>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] ccache support in gcc-common
Date: Tue, 23 Sep 2003 11:50:35 +0300
Message-ID: <20030923085035.GD29029@sam-solutions.net> (raw)
In-Reply-To: <20030923082832.GB7186@basalt.office.altlinux.org>

On Tue, Sep 23, 2003 at 12:28:32PM +0400, Dmitry V. Levin wrote:
> > > Если так, то это можно было бы сделать, не дожидаясь изменения макросов в
> > > rpm-build.  Кстати, что конкретно там надо будет поменять?
> > Знаешь, убери оттуда вообще поддержку ccache. Я положу макросы в 
> > /etc/rpm/macros.d/ccache в пакет с ccache, так будет проще всего и,
> > очевидно, правильнее.
> 
> $ fgrep -i ccache /usr/lib/rpm/i586-alt-linux/macros
>         unset CCACHE_CC CCACHE_CXX CCACHE_DIR ||:\
>         %{?__ccache_cc:export CCACHE_CC=\"%__ccache_cc\"}\
>         %{?__ccache_cxx:export CCACHE_CXX=\"%__ccache_cxx\"}\
>         %{?__ccache_dir:export CCACHE_DIR=\"%__ccache_dir\"}\
> 
> Это они все?
Да, это они все.

> Как ты их сможешь переопределить, если это все из определения макроса
> %___build_pre?
Добавь туда какой-нибудь %___build_pre_extender и механизм добавления в
него строчек, тогда любой макро-файл сможет их расширять. Можно сделать
даже просто макрос вроде
	%build_add_variable_expand var1 var2
который будет разворачивать полученный список пар (var1, var2)_1, ..., (var1, var2)_n
в последовательность
	unset var2_1 ... var2_n ||:\
	%{?var1_1:export var2_1=\"%var1_1\"}\
	....
	%{?var1_n:export var2_n=\"%var1_n\"}\

Тогда в /etc/rpm/macros.d/ccache я просто напишу
%build_add_variable_expand __ccache_use GCC_USE_CCACHE
%build_add_variable_expand __ccache_dir CCACHE_DIR

А пользователь сможет включать/выключать использование ccache у себя в
.rpmmacros, например, так:

%__ccache_use 1
%__ccache_dir $HOME/.ccache

Естественно, что в этот же механизм простановки переменных смогут
встраиваться и другие приложения, если потребуется.
-- 
/ Alexander Bokovoy
---
taxidermist, n.:
	A man who mounts animals.


  reply	other threads:[~2003-09-23  8:50 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-17 16:13 Alexander Bokovoy
2003-09-17 16:21 ` [devel] " Alexey Tourbin
2003-09-17 12:41   ` Sergey Vlasov
2003-09-17 16:48   ` Alexander Bokovoy
2003-09-17 17:19     ` Alexey Tourbin
2003-09-17 17:29       ` Alexander Bokovoy
2003-09-18 10:28   ` Dmitry V. Levin
2003-09-22 14:08   ` Michael Shigorin
2003-09-17 18:23 ` [devel] " Dmitry V. Levin
2003-09-18  8:29   ` Alexander Bokovoy
2003-09-23  8:12     ` Dmitry V. Levin
2003-09-23  8:21       ` Alexander Bokovoy
2003-09-23  8:28         ` Dmitry V. Levin
2003-09-23  8:50           ` Alexander Bokovoy [this message]
2003-09-30 16:43             ` Dmitry V. Levin
2003-09-30 16:48               ` Alexander Bokovoy
2003-09-30 16:58                 ` Dmitry V. Levin
2003-10-02 14:02                   ` Alexander Bokovoy
2003-10-02 17:09                     ` Dmitry V. Levin
2003-10-16 11:18 ` Dmitry V. Levin

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=20030923085035.GD29029@sam-solutions.net \
    --to=a.bokovoy@sam-solutions.net \
    --cc=devel@altlinux.ru \
    /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 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