From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: To: ALT Devel discussion list References: <20060425224736.GA12850@nomad.office.altlinux.org> <20060425234602.GI8441@localhost> <20060425235610.GC12520@basalt.office.altlinux.org> <20060426000636.GL8441@localhost> <20060426002132.GA14244@nomad.office.altlinux.org> From: Sergey Bolshakov Date: Fri, 28 Apr 2006 13:35:58 +0400 In-Reply-To: <20060426002132.GA14244@nomad.office.altlinux.org> (Dmitry V. Levin's message of "Wed, 26 Apr 2006 04:21:32 +0400") Message-ID: User-Agent: Gnus/5.1007 (Gnus v5.10.7) SXEmacs/22.1.4 (linux) MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Subject: Re: [devel] =?koi8-r?b?68HLINPExczB1Ngg0sXQz9rJ1M/Sycog1yBnaXQ=?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Apr 2006 09:36:00 -0000 Archived-At: List-Archive: List-Post: >>>>> "Dmitry" == Dmitry V Levin writes: > On Wed, Apr 26, 2006 at 04:06:36AM +0400, Alexey Tourbin wrote: >> On Wed, Apr 26, 2006 at 03:56:10AM +0400, Dmitry V. Levin wrote: > [...] >> > > Проблема в том, что из спека на самом деле нетривиально получить src.rpm >> > > для последующей сборки. >> > >> > Нетривиально, но с помощью hasher'а можно. У меня есть мысли (и код) на >> > эту тему. А что, интересно? >> >> Интересно. > 1. С помощью очень простого описания (примеры .buildspec'ов были приведены > ранее) можно сформировать файловое содержимое srpm'а, в виде тарболла. У > меня уже есть скрипт, который это делает. > 2. В базовой сборочной среде (hsh --initroot) можно распаковать этот > тарболл, и с помощью команды вроде > sed '/^BuildRequires(pre):[[:space:]]*/!d;s///;q' > извлечь из specfile'а сборочные зависимости, которые необходимо > удовлетворить для того, чтобы можно было выполнить команду вроде > rpmbuild -bs --nodeps > и получить srpm, который уже можно собирать обычным образом. В этом месте предлагается устроить двухпроходное нечто, бишь, после первого sed и доустановки пакета(ов), выполнять второй вида rpmbuild -bE |sed '/^BuildRequires:[[:space:]]*/!d;s///;q' доустановить обнаруженное и закончить rpmbuild -bs. Да, на всякий случай: тэги в rpm Case-InSensitivE :) --