On 19 October 2012 18:04, Yufeng Zhang wrote:
>
> Please find the attached patch which documents the 'newlib' option for the
> configuration option '--enable-clocale'.
>
> Feel free to improve it.

Thanks for the description.  I changed it slightly as I realised the
'darwin' option was also undocumented, so I committed the attached
patch to the trunk.

I haven't regenerated the HTML pages, I plan to do that soon after a
few more doc updates.
commit 7e0b461312a4304d8f84602732aa19cb718af32c
Author: Jonathan Wakely <jwakely....@gmail.com>
Date:   Mon Oct 22 00:40:07 2012 +0100

    2012-10-22  Yufeng Zhang  <yufeng.zh...@arm.com>
            Jonathan Wakely  <jwakely....@gmail.com>
    
        * doc/xml/manual/configure.xml (--enable-clocale): Document the
        'newlib' and 'darwin' options. Minor stylistic improvements.

diff --git a/libstdc++-v3/doc/xml/manual/configure.xml 
b/libstdc++-v3/doc/xml/manual/configure.xml
index bc98d7a..827b232 100644
--- a/libstdc++-v3/doc/xml/manual/configure.xml
+++ b/libstdc++-v3/doc/xml/manual/configure.xml
@@ -38,7 +38,7 @@
 </para>
 <para>The canonical way to find out the configure options that are
    available for a given set of libstdc++ sources is to go to the
-   source directory and then type:<command>./configure --help</command>.
+   source directory and then type: <command>./configure --help</command>.
 </para>
 
 <variablelist>
@@ -107,15 +107,20 @@
        (IEEE Std. 1003.1-2001) model based on langinfo/iconv/catgets,
        'gnu' to specify a model based on functionality from the GNU C
        library (langinfo/iconv/gettext) (from <link 
xmlns:xlink="http://www.w3.org/1999/xlink"; 
xlink:href="http://sources.redhat.com/glibc/";>glibc</link>, the GNU C
-       library), or 'generic' to use a generic "C"
-       abstraction which consists of "C" locale info.
+       library), 'generic' to use a generic "C" abstraction which consists
+       of "C" locale info, 'newlib' to specify the Newlib C library model
+       which only differs from the 'generic' model in the handling of
+       ctype, or 'darwin' which omits the <type>wchar_t</type> specializations
+       needed by the 'generic' model.
      </para>
 
-     <para>If not explicitly specified, the configure proccess tries
+     <para>If not explicitly specified, the configure process tries
       to guess the most suitable package from the choices above. The
       default is 'generic'. On glibc-based systems of sufficient
-      vintage (2.3 and newer), 'gnu' is automatically selected. This option
-      can change the library ABI.
+      vintage (2.3 and newer), 'gnu' is automatically selected. On newlib-based
+      systems (<code>'--with_newlib=yes'</code>) and OpenBSD, 'newlib' is
+      automatically selected. On Mac OS X 'darwin' is automatically selected.
+      This option can change the library ABI.
      </para>
  </listitem></varlistentry>
 
@@ -181,9 +186,9 @@
        and of the nanosleep and sched_yield functions, used in the
        implementation of [thread.thread.this] of the 2011 ISO C++ standard.
        The choice OPTION=yes checks for the availability of the facilities
-       in libc and libposix4.  In case of need the latter is also linked
+       in libc and libposix4.  In case it's needed the latter is also linked
        to libstdc++ as part of the build process.  OPTION=rt also searches
-       (and, in case, links) librt.   Note that the latter is not always
+       (and, if needed, links) librt.   Note that the latter is not always
        desirable because, in glibc, for example, in turn it triggers the
        linking of libpthread too, which activates locking, a large overhead
        for single-thread programs.  OPTION=no skips the tests completely.
@@ -249,7 +254,7 @@
  </listitem></varlistentry>
 
  <varlistentry><term><code>--enable-c99</code></term>
- <listitem><para>The "long long" type was introduced in C99, along
+ <listitem><para>The <type>long long</type> type was introduced in C99, along
        with many other functions for wide characters, and math
        classification macros, etc.  If enabled, all C99 functions not
        specified by the C++ standard will be put into <code>namespace
@@ -264,7 +269,7 @@
  </listitem></varlistentry>
 
  <varlistentry><term><code>--enable-wchar_t</code>[default]</term>
- <listitem><para>Template specializations for the "wchar_t" type are
+ <listitem><para>Template specializations for the <type>wchar_t</type> type are
        required for wide character conversion support.  Disabling
        wide character specializations may be expedient for initial
        porting efforts, but builds only a subset of what is required by
@@ -274,7 +279,7 @@
  </listitem></varlistentry>
 
  <varlistentry><term><code>--enable-long-long  </code></term>
- <listitem><para>The "long long" type was introduced in C99.  It is
+ <listitem><para>The <type>long long</type> type was introduced in C99.  It is
        provided as a GNU extension to C++98 in g++.  This flag builds
        support for "long long" into the library (specialized
        templates and the like for iostreams).  This option is on by default:
@@ -351,7 +356,7 @@
  <listitem><para>Use extern template to pre-instantiate all required
        specializations for certain types defined in the standard libraries. 
        These types include <classname>string</classname> and dependents like
-       <classname>char_traits</classname>, the templateized io classes,
+       <classname>char_traits</classname>, the templatized IO classes,
        <classname>allocator</classname>, and others.  
        Disabling means that implicit
        template generation will be used when compiling these types.  By

Reply via email to