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