\input texinfo @c -*-texinfo-*-
-@comment $Id: gnulib.texi,v 1.7 2005-04-18 20:58:20 jas Exp $
+@comment $Id: gnulib.texi,v 1.9 2005-05-23 11:05:53 jas Exp $
@comment %**start of header
@setfilename gnulib.info
@settitle GNU Gnulib
@syncodeindex pg cp
@comment %**end of header
-@set UPDATED $Date: 2005-04-18 20:58:20 $
+@set UPDATED $Date: 2005-05-23 11:05:53 $
@copying
This manual is for GNU Gnulib (updated @value{UPDATED}),
which is a library of common routines intended to be shared at the
source level.
-Copyright @copyright{} 2004 Free Software Foundation, Inc.
+Copyright @copyright{} 2004, 2005 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
@node Gnulib
@chapter Gnulib
-This is not a real manual. It's just a place to store random notes
-until someone (you?) gets around to actually writing a manual.
+This manual contains some bare-bones documentation, but not much more.
+It's mostly been a place to store notes until someone (you?) gets
+around to writing a coherent manual.
Getting started:
your header file as something available for C programs only, or for C
and C++ programs alike.
+@subsection Include ordering
+
+When writing a gnulib module, or even in general, a good way to order
+the @samp{#include} directives is the following.
+
+@itemize
+@item First comes the #include "..." specifying the module being implemented.
+@item Then come all the #include <...> of system or system-replacement headers,
+in arbitrary order.
+@item Then come all the #include "..." of gnulib and private headers, in
+arbitrary order.
+@end itemize
+
@node ctime
@section ctime
@findex ctime
SUBDIRS += gl
@end example
-Finally, you have add C flags and LD flags, so that you can make use
+Finally, you have to add compiler and linker flags in the appropriate
+source directories, so that you can make use
of the gnulib library. For example:
@example
...
AM_CPPFLAGS = -I$(top_srcdir)/lib
...
-LIBADD = lib/libgnu.la
+LIBADD = lib/libgnu.a
...
@end example