[devel] php5-5.2.7.20080627-alt1: i586 rebuild failed [1]

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Пн Сен 1 20:59:48 MSD 2008


On Mon, Sep 01, 2008 at 08:31:36PM +0400, Alexey Gladkov wrote:
> Andrey Rahmatullin wrote:
> >On Mon, Sep 01, 2008 at 06:10:24PM +0400, Alexey Gladkov wrote:
> >>470-#ifdef _GNU_SOURCE
> >А определяется он где?
> 
> До include <sys/utsname.h> и ifdef _GNU_SOURCE.
> 
> Проверим:
> 
> $ cat z.sh
> #!/bin/sh
> cd /usr/src/RPM/BUILD/php5-source
> cpp \
> 	-Iext/posix/ -I$PWD/ext/posix/ -DPHP_ATOM_INC \
> 	-I$PWD/include -I$PWD/main -I$PWD -I/usr/include/libxml2 \
> 	-I$PWD/ext/date/lib -I$PWD/TSRM -I$PWD/Zend -I/usr/include \
> ext/posix/posix.c
> 
> $ ./z.sh >/dev/null
> ext/posix/posix.c:40:2: error: #error Aaaaaa!!!!
> 
> $ grep -n -B1 -A2 '^#error' ext/posix/posix.c
> 39-#ifdef _GNU_SOURCE
> 40:#error Aaaaaa!!!!
> 41-#include <sys/utsname.h>
> 42-#endif
> 
> Вывод: _GNU_SOURCE явно не достаточно.
> Или я что-то упустил ?

В файле ext/posix/posix.c тот заголовочный файл, который (в конечном
итоге) включает php_config.h (который определяет _GNU_SOURCE), включается
слишком поздно: к этому времени features.h уже обработан.

Можно в этом ext/posix/posix.c заменить проверку _GNU_SOURCE на
проверку __USE_GNU, но, возможно, из-за неправильного включения
заголовочных файлов могут случиться и другие неприятности.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080901/2720b221/attachment-0002.bin>


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