X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=doc%2Fgnulib.texi;h=8411c80a647e0da03f65aa9f0964bcdfc423374c;hb=9ab3d34f0da915fe21691eeecfe4ae69ce6f61a6;hp=5b99de05d59cbf1f577811702ff44b685b78d1f3;hpb=4a07a4c1681a85311ab4d7f329291ffdefd9b811;p=gnulib.git diff --git a/doc/gnulib.texi b/doc/gnulib.texi index 5b99de05d..8411c80a6 100644 --- a/doc/gnulib.texi +++ b/doc/gnulib.texi @@ -22,11 +22,11 @@ Copyright @copyright{} 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.1 or +under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no -Invariant Sections, with no Front-Cover Texts, and with no Back-Cover -Texts. A copy of the license is included in the section entitled -``GNU Free Documentation License.'' +Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A +copy of the license is included in the section entitled ``GNU Free +Documentation License''. @end copying @dircategory Software development @@ -78,6 +78,7 @@ If you need this particular \thing\, you may write to @w{@code{}}. @end macro + @node Introduction @chapter Introduction @@ -96,6 +97,7 @@ Resources: @end itemize @menu +* Benefits:: * Library vs Reusable Code:: * Portability and Application Code:: * Modules:: @@ -199,6 +201,12 @@ preference might depend on whether you consider the API exported by your header file as something available for C programs only, or for C and C++ programs alike. +Note that putting a @code{#include} in an @code{extern "C" @{ ... @}} +block yields a syntax error in C++ mode on some platforms (e.g., glibc +systems with g++ v3.3 to v4.2, AIX, OSF/1, IRIX). For this reason, it +is recommended to place the @code{#include} before the @code{extern +"C"} block. + @subheading Include ordering When writing a gnulib module, or even in general, a good way to order @@ -326,21 +334,16 @@ other functions too. The getaddrinfo function exists in ws2tcpip.h and -lws2_32 on Windows XP. The function declaration is present if @code{WINVER >= 0x0501}. -Windows 2000 does not have getaddrinfo in its @file{WS2_32.dll}. +Windows 2000 does not have getaddrinfo in its @file{WS2_32.DLL}. Thus, if you want to assume Windows XP or later, you can add AC_DEFINE(WINVER, 0x0501) to avoid compiling to (partial) getaddrinfo implementation. -If you want to support Windows 2000, don't do anything, but be aware -that gnulib will use its own (partial) getaddrinfo implementation even -on Windows XP. Currently the code does not attempt to determine if -the getaddrinfo function is available during runtime. - -Todo: Make getaddrinfo.c open the WS2_32.DLL and check for the -getaddrinfo symbol and use it if present, otherwise fall back to our -own implementation. - +If you want to support Windows 2000, don't do anything. The +replacement function will open @file{WS2_32.DLL} during run-time to +see if there is a getaddrinfo function available, and use it when +available. @node Libtool and Windows @section Libtool and Windows @@ -5755,6 +5758,8 @@ This list of functions is sorted according to the header that declares them. * Regular expressions:: * Supporting Relocation:: * func:: +* warnings:: +* manywarnings:: @end menu @node alloca @@ -5836,11 +5841,15 @@ generated automatically. @include func.texi +@include warnings.texi + +@include manywarnings.texi + @node GNU Free Documentation License @appendix GNU Free Documentation License -@include fdl.texi +@include fdl-1.3.texi @node Index