[devel] Использование asprintf/vasprintf в разных ОСях

Dmitry V. Levin ldv на altlinux.org
Пн Окт 9 01:19:59 MSD 2006


On Mon, Oct 09, 2006 at 04:09:59AM +0700, Slava Semushin wrote:
>     Столкнулся с некоторой проблемой при упаковке libtap: автор
>     использовал ф-ции asprintf/vasprintf и я получаю предупреждение при
>     сборке, что они дескать не декларированы.
> 
>     Суть в том, что чтобы эти ф-ции были доступны нужно объявить константу
>     _GNU_SOURCE. НО! Её объявлять нужно только в Линуксе. Во FreeBSD
>     (которую использовал атор), в OpenBSD и NetBSD ничего кроме включения
>     stdio.h не требуется.
> 
>     Вопрос: как правильно эту ситуацию разруливать, чтобы патч не было
>     стыдно отправлять в апстрим?

Если используется autoconf, то AC_GNU_SOURCE.
Если нет, то
#if !defined(_GNU_SOURCE) && defined(__GLIBC__)
# define _GNU_SOURCE
#endif

>     (Есть идея всегда определять _GNU_SOURCE, стОит ли так делать?)

Всегда вряд ли, а вообще стОит.


-- 
ldv
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : http://lists.altlinux.org/pipermail/devel/attachments/20061009/afc0ff72/attachment.bin 


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