]> pd.if.org Git - pdclib.old/blobdiff - Readme.rst
Add optional EIO to tss_errno
[pdclib.old] / Readme.rst
index b1143a950da8f82c3115932026df3db23cbab7e5..fce23ea414e1b76404c6789ffee7b76ce0ffa3c4 100644 (file)
@@ -1,8 +1,9 @@
-PDCLib - the `Public Domain C Library<http://pdclib.e43.eu>`_\r
-================================\r
+==============================================================\r
+PDCLib - the `Public Domain C Library <http://pdclib.e43.eu>`_\r
+==============================================================\r
 \r
 What is it\r
-----------\r
+==========\r
 \r
 This is a C Standard Library - what's defined in ISO/IEC 9899 "Information \r
 technology — Programming languages — C" or extensions to the above defined in\r
@@ -10,10 +11,11 @@ ISO/IEC 14882 "Information technology — Programming languages — C++". A few
 extensions may optionally be provided.\r
 \r
 License\r
--------\r
+=======\r
 \r
-Written in 2003-2012 by Martin "Solar" Baute,\r
-           2012-     by Owen Shepherd\r
+Written in \r
+ * 2003-2012 by Martin "Solar" Baute,\r
+ * 2012-     by Owen Shepherd\r
 \r
 To the extent possible under law, the author(s) have dedicated all copyright \r
 and related and neighboring rights to this software to the public domain \r
@@ -22,18 +24,33 @@ worldwide. This software is distributed without any warranty.
 You should have received a copy of the CC0 Public Domain Dedication along with \r
 this software. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.\r
 \r
-    **Exception:** Portions of the test suite are under different licenses. \r
-    Where this is the case, it is clearly noted in the relevant location.\r
+Exceptions\r
+----------\r
+\r
+Unicode Character Data\r
+~~~~~~~~~~~~~~~~~~~~~~\r
+PDCLib necessarily includes Unicode character data derived from that provided by\r
+Unicode, Inc in its' implementation of the localization and wide character \r
+support (in particular for use by the ctype.h and wctype.h functions.)\r
 \r
-    The license of this code has no bearing upon the licensing of the built \r
-    library (as it does not comprise part of it).\r
+Unicode, Inc licenses that data under a license agreement which can be found at\r
+<http://www.unicode.org/copyright.html#Exhibit1>, or in the file \r
+UNICODE_DATA_LICENSE.txt. found in the same directory as this file.\r
 \r
-    At the time this was written, this exception only applies to portions of the\r
-    printf test suite, which are released under the terms of the 2-clause BSD\r
-    license (see testing/printf_testcases.h for full details)\r
+Test Suite\r
+~~~~~~~~~~\r
+Portions of the test suite are under different licenses. Where this is the case, \r
+it is clearly noted in the relevant location.\r
+\r
+The license of this code has no bearing upon the licensing of the built library \r
+(as it does not comprise part of it).\r
+\r
+At the time this was written, this exception only applies to portions of the \r
+printf test suite, which are released under the terms of the 2-clause BSD \r
+license (see testing/printf_testcases.h for full details)\r
 \r
 Terms for extensions\r
---------------------\r
+====================\r
 Extensions are permitted only if they pass the following tests:\r
 \r
 Pre-existing wide usage\r
@@ -94,7 +111,7 @@ flockfile, funlockfile, getc_unlocked, putc_unlocked, fwrite_unlocked, ...
     the existing I/O functions, and impossible to implement externally\r
 \r
 Internals\r
----------\r
+=========\r
 \r
 As a namespace convention, everything (files, typedefs, functions,\r
 macros) not defined in ISO/IEC 9899 is prefixed with _PDCLIB.\r
@@ -144,7 +161,7 @@ of PDCLib (or link them into the appropriate places). That should be
 all that is actually required to make PDCLib work for your platform.\r
 \r
 Future directions\r
------------------\r
+=================\r
 Obviously, full C89, C99 and C11 conformance; and full support for the \r
 applicable portions of C++98, C++03 and C++11 (the version which acomplishes \r
 this will be christened "1.0").\r
@@ -157,51 +174,52 @@ version of a given function.
 Post 1.0, support for C11 Annexe K "Bounds checking interfaces"\r
 \r
 Development Status\r
-------------------\r
-\r
-v0.1 - 2004-12-12\r
-Freestanding-only C99 implementation without any overlay, and missing\r
-the INTN_C() / UINTN_C() macros. <float.h> still has the enquire.c\r
-values hardcoded into it; not sure whether to include enquire.c in the\r
-package, to leave <float.h> to the overlay, or devise some parameterized\r
-macro magic as for <limits.h> / <stdint.h>. Not thoroughly tested, but\r
-I had to make the 0.1 release sometime so why not now.\r
-\r
-v0.2 - 2005-01-12\r
-Adds implementations for <string.h> (excluding strerror()), INTN_C() /\r
-UINTN_C() macros, and some improvements in the internal headers.\r
-Test drivers still missing, but added warnings about that.\r
-\r
-v0.3 - 2005-11-21\r
-Adds test drivers, fixes some bugs in <string.h>.\r
-\r
-v0.4 - 2005-02-06\r
-Implementations for parts of <stdlib.h>. Still missing are the floating\r
-point conversions, and the wide-/multibyte-character functions.\r
-\r
-v0.4.1 - 2006-11-16\r
-With v0.5 (<stdio.h>) taking longer than expected, v0.4.1 was set up as\r
-a backport of bugfixes in the current development code.\r
-- #1  realloc( NULL, size ) fails           (fixed)\r
-- #2  stdlib.h - insufficient documentation (fixed)\r
-- #4  Misspelled name in credits            (fixed)\r
-- #5  malloc() splits off too-small nodes   (fixed)\r
-- #6  qsort() stack overflow                (fixed)\r
-- #7  malloc() bug in list handling         (fixed)\r
-- #8  strncmp() does not terminate at '\0'  (fixed)\r
-- #9  stdint.h dysfunctional                (fixed)\r
-- #10 NULL redefinition warnings            (fixed)\r
-\r
-v0.5 - 2010-12-22\r
-Implementations for <inttypes.h>, <errno.h>, most parts of <stdio.h>,\r
-and strerror() from <string.h>.\r
-Still no locale / wide-char support. Enabled all GCC compiler warnings I\r
-could find, and fixed everything that threw a warning. (You see this,\r
-maintainers of Open Source software? No warnings whatsoever. Stop telling\r
-me it cannot be done.) Fixed all known bugs in the v0.4 release.\r
+==================\r
+\r
+``v0.1 - 2004-12-12``\r
+    Freestanding-only C99 implementation without any overlay, and missing\r
+    the INTN_C() / UINTN_C() macros. <float.h> still has the enquire.c\r
+    values hardcoded into it; not sure whether to include enquire.c in the\r
+    package, to leave <float.h> to the overlay, or devise some parameterized\r
+    macro magic as for <limits.h> / <stdint.h>. Not thoroughly tested, but\r
+    I had to make the 0.1 release sometime so why not now.\r
+\r
+``v0.2 - 2005-01-12``\r
+    Adds implementations for <string.h> (excluding strerror()), INTN_C() /\r
+    UINTN_C() macros, and some improvements in the internal headers.\r
+    Test drivers still missing, but added warnings about that.\r
+\r
+``v0.3 - 2005-11-21``\r
+    Adds test drivers, fixes some bugs in <string.h>.\r
+\r
+``v0.4 - 2005-02-06``\r
+    Implementations for parts of <stdlib.h>. Still missing are the floating\r
+    point conversions, and the wide-/multibyte-character functions.\r
+\r
+``v0.4.1 - 2006-11-16``\r
+    With v0.5 (<stdio.h>) taking longer than expected, v0.4.1 was set up as\r
+    a backport of bugfixes in the current development code.\r
+\r
+    - #1 realloc( NULL, size ) fails\r
+    - #2 stdlib.h - insufficient documentation\r
+    - #4  Misspelled name in credits\r
+    - #5  malloc() splits off too-small nodes\r
+    - #6  qsort() stack overflow\r
+    - #7  malloc() bug in list handling\r
+    - #8  strncmp() does not terminate at '\0'\r
+    - #9  stdint.h dysfunctional\r
+    - #10 NULL redefinition warnings\r
+\r
+``v0.5 - 2010-12-22``\r
+    Implementations for <inttypes.h>, <errno.h>, most parts of <stdio.h>,\r
+    and strerror() from <string.h>.\r
+    Still no locale / wide-char support. Enabled all GCC compiler warnings I\r
+    could find, and fixed everything that threw a warning. (You see this,\r
+    maintainers of Open Source software? No warnings whatsoever. Stop telling\r
+    me it cannot be done.) Fixed all known bugs in the v0.4 release.\r
 \r
 Near Future\r
------------\r
+===========\r
 Current development directions are:\r
 \r
 Implement portions of the C11 standard that have a direct impact on the way \r
@@ -210,10 +228,6 @@ PDCLib needs a threading abstraction; therefore, C11's thread library is being
 implemented to provide the backing for this (as there is no purpose in \r
 implementing two abstractions)\r
 \r
-Cleanup portions of <stdio.h>, particularly the backend. _PDCLIB_fillbuffer and\r
-_PDCLIB_flushbuffer in particular do not feel 'well' factored and need to know\r
-too much about FILE's internals. \r
-\r
 Modularize the library somewhat. This can already be seen with components under \r
 "opt/". This structure is preliminary; it will likely change as the process \r
 continues.
\ No newline at end of file