From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 20 Nov 2020 22:51:15 +0300 From: "Dmitry V. Levin" To: ALT Devel discussion list Message-ID: <20201120195115.GD30505@altlinux.org> References: <5416036.DvuYhMxLoT@zerg.malta.altlinux.ru> <92f145b5-c8fe-b5e7-8f74-877d63d05209@rosalinux.ru> <20201119083359.4f217497@tower> <505e1cd4-972b-fd16-e831-6d5ca3bf3de1@rosalinux.ru> <20201120101209.0be7ca83@tower> <20201120132824.GC25354@altlinux.org> <69c367a9-0655-a67c-ba8d-1e3f9118973d@rosalinux.ru> <20201120174705.GB29142@altlinux.org> <2ea6342c-8fad-6da7-e55e-96642413ba9d@basealt.ru> <5b2f66c4-6461-e2e7-42fc-8d8258a8ced6@rosalinux.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <5b2f66c4-6461-e2e7-42fc-8d8258a8ced6@rosalinux.ru> Subject: Re: [devel] =?koi8-r?b?0MXSxdPCz9LLwQ==?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Nov 2020 19:51:15 -0000 Archived-At: List-Archive: List-Post: On Fri, Nov 20, 2020 at 09:40:58PM +0300, Mikhail Novosyolov wrote: > > 20.11.2020 20:52, Anton Farygin пишет: > > On 20.11.2020 20:47, Dmitry V. Levin wrote: > >> On Fri, Nov 20, 2020 at 07:24:59PM +0300, Mikhail Novosyolov wrote: [...] > >>> Отсутствие полной пересборки после бранчевания - это просто экономия времени и машинных ресурсов (вряд ли), или чем-то еще обусловлено? > >> Полная пересборка после бранчевания - это концептуально неправильно, > >> по-хорошему, пересобирать нужно всегда, когда результат пересборки > >> меняется, не дожидаясь бранчевания. > >> > > согласен.  не очень сложно выяснить, нужно ли пересобирать пакет. > Недавно в devel@ обсуждался хороший пример, почему это не совсем так: многие пакеты используют лишь заголовки из boost, не линкуясь с ним, все методы определения необходимости пересборки покажут, что пересборка не нужна, но ведь она нужна для уверенности в поддержании пакета в пересобираемом состоянии как минимум. Также могут меняться структуры данных и пр., оставляя внешние символы теми же самыми, такое тоже не отловится существующим инструментарием, гораздо надежнее пересобрать. Лучше всего, когда уверенность основывается на знании. Если все методы определения необходимости пересборки покажут, что пересборка не нужна, значит, либо методы неправильные, либо пересборка действительно не нужна. Например, если NT_GNU_BUILD_ID у файла после пересборки с другим boost не поменялся, значит, его пересобирать не надо. Грубо говоря, алгоритм может быть такой: 1. определяем все пакеты, у которых поменялась сборочная среда; 2. пересобираем все эти пакеты; 3. те из них, которые в результате пересборки поменялись, коммитим в репозиторий. -- ldv