[devel] I: xulrunner-1.8.0.4 носит свою копию cairo

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Окт 30 03:56:51 MSK 2007


On Tue, Oct 30, 2007 at 03:07:44AM +0300, Dmitry V. Levin wrote:
> xulrunner-1.8.0.4 носит свою старую копию cairo:
> 
> $ fgrep -c cairo_font_type_t /usr/include/cairo/cairo.h /usr/src/RPM/BUILD/xulrunner-1.8.0.4/mozilla/gfx/cairo/cairo/src/cairo.h 
> /usr/include/cairo/cairo.h:5
> /usr/src/RPM/BUILD/xulrunner-1.8.0.4/mozilla/gfx/cairo/cairo/src/cairo.h:0
> 
> $ rpmquery libcairo-devel
> libcairo-devel-1.4.10-alt1
> $ grep 'cairo.*1\.' /usr/src/RPM/BUILD/xulrunner-1.8.0.4/mozilla/gfx/cairo/README
>   cairo 1.0.2
>   
> Если убрать каталог
> /usr/src/RPM/BUILD/xulrunner-1.8.0.4/mozilla/gfx/cairo, то файл
> nsSVGCairoCanvas.cpp компилируется.

Ужос.  У меня есть такая небольшая личная практика при сборке каких бы
то ни было пакетов: первым дело удалять все известные на данный момент
дублирующиеся куски кода.  Типа

%prep
%setup -q
rm -rv mozilla/gfx/cairo

Это не всегда удобно, потому что при сборке кто-то хочет как минимум
"заходить" в этот каталог, и поэтому после удаления приходится делать
что-то вроде

mkdir -p mozilla/gfx/cairo
echo 'all:' >mozilla/gfx/cairo/Makefile.am

Это можно обойти и другими способами, без создания каталога с фиктивным
Makefile'ом.

Но в принципе эта практика себя окупает.  Так что я советую всем:
на стадии %prep ВЫ ОБЯЗАНЫ УДАЛИТЬ любой дублирующийся системный код.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?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/20071030/99a3b7a6/attachment-0002.bin>


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