Tidy up the document a bit to be more consistent in style. Add a link to the mailing list discussion rather than keeping the text inline, some of which is now no longer correct.
Signed-off-by: Will Newton <[email protected]> --- docs/uClibc_vs_SuSv3.txt | 125 +++++++++++++++++----------------------------- 1 files changed, 46 insertions(+), 79 deletions(-) diff --git a/docs/uClibc_vs_SuSv3.txt b/docs/uClibc_vs_SuSv3.txt index a5a9dcd..888983b 100644 --- a/docs/uClibc_vs_SuSv3.txt +++ b/docs/uClibc_vs_SuSv3.txt @@ -7,6 +7,11 @@ specification. This document attempts to list these differences and, when completed, will contain a full list of all relevant differences between uClibc and the requirements of the SuSv3. +The list of missing interfaces was generated from scripts written by +Alexander van Heukelum. The following discussion on the mailing list can +be found here: + +http://lists.uclibc.org/pipermail/uclibc/2004-March/029390.html *) The uClibc setlocale() function is not threadsafe. @@ -24,82 +29,44 @@ and the requirements of the SuSv3. using any locale or ctype functions until the setlocale() call has finished. - - - ----------------------------------------------------------------- -heukelum -- heukelum at freemail dot nl writes: - -Hi everyone, - -I think uClibc is a great project! And, since I found the file -docs/uClibc_vs_SuSv3.txt in the source tarball which mentioned only -fmtmsg as a missing function compared to the SUSv3, I got curious about -the length of the list denoted by "<others?>". So I built the -20040305-snapshot using allyesconfig, extracted the symbols from the -(dynamic) libraries, and compared that list to the SUSv3 header files... - -The largest source of omissions was the mathematical interface -(183/355), followed by optional interfaces (134/355). The result: only -38 non-mathematical interfaces are missing compared to the minimal -SUSv3! Naming only one function as missing was over-enthousiastic, but -the result was better than I anticipated. - -A compact list of omissions is appended. -I hope this was a helpful exercise ;) - -Greetings, - Alexander - -P.S. uClibc was compiled with thread support, but did not provide the -interfaces pthread_cleanup_push and pthread_cleanup_pop. - - - -Omissions from obligatory interfaces: -------------------------------------- -stdlib.h: _Exit, lcong48, lldiv, posix_openpt; - ecvt, fcvt -ndbm.h: [all=9] dbm_* -utmpx.h: [all=6] *utx* (but functions without "x" do exist!) -nl_types.h: [all] catclose, catgets, catopen -unistd.h: getwd, ualarm -inttypes.h: imaxdiv -fmtmsg.h: fmtmsg -string.h: strerror_r -setjmp.h: setsigjmp -monetary.h: strfmon -sys/select.h: pselect -sys/socket.h: sockatmark -sys/wait.h: waitid - - -Unimplemented optional interfaces: ----------------------------------- -trace.h: (depends on TRC) [all=50] posix_trace_* -pthread.h: (depends on THR) pthread_cleanup_{push,pop}; - pthread_attr_{g,s}etstack (depend on TSA TSS); - [7] pthread_barrier* (depend on BAR); - pthread_condattr_{g,s}et_clock (depend on CS); - pthread_getcpuclockid (depends on TCT); - pthread_mutex{,attr}_{g,s}etprioceiling (depend on TPP); - pthread_mutexattr_{g,s}etprotocol (depend on TPP|TPI); - pthread_rwlock_timed{rd,rw}lock (depend on TMO); - pthread_setschedprio (depends on TPS); - [5] pthread_spin_* (depend on SPI) -spawn.h: (depends on SPN) [all=21] posix_spawn* -aio.h: (depends on AIO) [all=8] aio_*, lio_* -stropts.h: (depends on XSR) isastream, {g,s}et{,p}msg, fattach, fdetach -sys/mman.h: posix_madvice (depends on ADV); posix_mem_offset, - posix_typed_mem_getinfo, posix_typed_mem_open (depend on TYM); - shm_open, shm_unlink (depend on SHM) -fcntl.h: posix_fallocate (depend on ADV) -signal.h: sigqueue (depends on RTS) - - -Unimplemented mathematical interfaces: --------------------------------------- -math.h: [126] many -complex.h: [46] all, except cabs -fenv.h: [11] all -_______________________________________________ +*) Missing obligatory interfaces + stdlib.h: _Exit, lcong48, lldiv, posix_openpt; + ecvt, fcvt + ndbm.h: [all=9] dbm_* + utmpx.h: [all=6] *utx* (but functions without "x" do exist!) + nl_types.h: [all] catclose, catgets, catopen + unistd.h: getwd, ualarm + inttypes.h: imaxdiv + fmtmsg.h: fmtmsg + string.h: strerror_r + setjmp.h: setsigjmp + monetary.h: strfmon + sys/select.h: pselect + sys/socket.h: sockatmark + sys/wait.h: waitid + +*) Missing optional interfaces + trace.h: (depends on TRC) [all=50] posix_trace_* + pthread.h: (depends on THR) pthread_cleanup_{push,pop}; + pthread_attr_{g,s}etstack (depend on TSA TSS); + [7] pthread_barrier* (depend on BAR); + pthread_condattr_{g,s}et_clock (depend on CS); + pthread_getcpuclockid (depends on TCT); + pthread_mutex{,attr}_{g,s}etprioceiling (depend on TPP); + pthread_mutexattr_{g,s}etprotocol (depend on TPP|TPI); + pthread_rwlock_timed{rd,rw}lock (depend on TMO); + pthread_setschedprio (depends on TPS); + [5] pthread_spin_* (depend on SPI) + spawn.h: (depends on SPN) [all=21] posix_spawn* + aio.h: (depends on AIO) [all=8] aio_*, lio_* + stropts.h: (depends on XSR) isastream, {g,s}et{,p}msg, fattach, fdetach + sys/mman.h: posix_madvice (depends on ADV); posix_mem_offset, + posix_typed_mem_getinfo, posix_typed_mem_open (depend on TYM); + shm_open, shm_unlink (depend on SHM) + fcntl.h: posix_fallocate (depend on ADV) + signal.h: sigqueue (depends on RTS) + +*) Missing math interfaces + math.h: [126] many + complex.h: [46] all, except cabs + fenv.h: [11] all -- 1.7.3.4
From d242538fa61aeed935b824bb42ea7790450c26be Mon Sep 17 00:00:00 2001 From: Will Newton <[email protected]> Date: Mon, 14 Mar 2011 14:39:41 +0000 Subject: [PATCH 1/2] docs/uClibc_vs_SuSv3.txt: Reformat document. Tidy up the document a bit to be more consistent in style. Add a link to the mailing list discussion rather than keeping the text inline, some of which is now no longer correct. Signed-off-by: Will Newton <[email protected]> --- docs/uClibc_vs_SuSv3.txt | 125 +++++++++++++++++----------------------------- 1 files changed, 46 insertions(+), 79 deletions(-) diff --git a/docs/uClibc_vs_SuSv3.txt b/docs/uClibc_vs_SuSv3.txt index a5a9dcd..888983b 100644 --- a/docs/uClibc_vs_SuSv3.txt +++ b/docs/uClibc_vs_SuSv3.txt @@ -7,6 +7,11 @@ specification. This document attempts to list these differences and, when completed, will contain a full list of all relevant differences between uClibc and the requirements of the SuSv3. +The list of missing interfaces was generated from scripts written by +Alexander van Heukelum. The following discussion on the mailing list can +be found here: + +http://lists.uclibc.org/pipermail/uclibc/2004-March/029390.html *) The uClibc setlocale() function is not threadsafe. @@ -24,82 +29,44 @@ and the requirements of the SuSv3. using any locale or ctype functions until the setlocale() call has finished. - - - ----------------------------------------------------------------- -heukelum -- heukelum at freemail dot nl writes: - -Hi everyone, - -I think uClibc is a great project! And, since I found the file -docs/uClibc_vs_SuSv3.txt in the source tarball which mentioned only -fmtmsg as a missing function compared to the SUSv3, I got curious about -the length of the list denoted by "<others?>". So I built the -20040305-snapshot using allyesconfig, extracted the symbols from the -(dynamic) libraries, and compared that list to the SUSv3 header files... - -The largest source of omissions was the mathematical interface -(183/355), followed by optional interfaces (134/355). The result: only -38 non-mathematical interfaces are missing compared to the minimal -SUSv3! Naming only one function as missing was over-enthousiastic, but -the result was better than I anticipated. - -A compact list of omissions is appended. -I hope this was a helpful exercise ;) - -Greetings, - Alexander - -P.S. uClibc was compiled with thread support, but did not provide the -interfaces pthread_cleanup_push and pthread_cleanup_pop. - - - -Omissions from obligatory interfaces: -------------------------------------- -stdlib.h: _Exit, lcong48, lldiv, posix_openpt; - ecvt, fcvt -ndbm.h: [all=9] dbm_* -utmpx.h: [all=6] *utx* (but functions without "x" do exist!) -nl_types.h: [all] catclose, catgets, catopen -unistd.h: getwd, ualarm -inttypes.h: imaxdiv -fmtmsg.h: fmtmsg -string.h: strerror_r -setjmp.h: setsigjmp -monetary.h: strfmon -sys/select.h: pselect -sys/socket.h: sockatmark -sys/wait.h: waitid - - -Unimplemented optional interfaces: ----------------------------------- -trace.h: (depends on TRC) [all=50] posix_trace_* -pthread.h: (depends on THR) pthread_cleanup_{push,pop}; - pthread_attr_{g,s}etstack (depend on TSA TSS); - [7] pthread_barrier* (depend on BAR); - pthread_condattr_{g,s}et_clock (depend on CS); - pthread_getcpuclockid (depends on TCT); - pthread_mutex{,attr}_{g,s}etprioceiling (depend on TPP); - pthread_mutexattr_{g,s}etprotocol (depend on TPP|TPI); - pthread_rwlock_timed{rd,rw}lock (depend on TMO); - pthread_setschedprio (depends on TPS); - [5] pthread_spin_* (depend on SPI) -spawn.h: (depends on SPN) [all=21] posix_spawn* -aio.h: (depends on AIO) [all=8] aio_*, lio_* -stropts.h: (depends on XSR) isastream, {g,s}et{,p}msg, fattach, fdetach -sys/mman.h: posix_madvice (depends on ADV); posix_mem_offset, - posix_typed_mem_getinfo, posix_typed_mem_open (depend on TYM); - shm_open, shm_unlink (depend on SHM) -fcntl.h: posix_fallocate (depend on ADV) -signal.h: sigqueue (depends on RTS) - - -Unimplemented mathematical interfaces: --------------------------------------- -math.h: [126] many -complex.h: [46] all, except cabs -fenv.h: [11] all -_______________________________________________ +*) Missing obligatory interfaces + stdlib.h: _Exit, lcong48, lldiv, posix_openpt; + ecvt, fcvt + ndbm.h: [all=9] dbm_* + utmpx.h: [all=6] *utx* (but functions without "x" do exist!) + nl_types.h: [all] catclose, catgets, catopen + unistd.h: getwd, ualarm + inttypes.h: imaxdiv + fmtmsg.h: fmtmsg + string.h: strerror_r + setjmp.h: setsigjmp + monetary.h: strfmon + sys/select.h: pselect + sys/socket.h: sockatmark + sys/wait.h: waitid + +*) Missing optional interfaces + trace.h: (depends on TRC) [all=50] posix_trace_* + pthread.h: (depends on THR) pthread_cleanup_{push,pop}; + pthread_attr_{g,s}etstack (depend on TSA TSS); + [7] pthread_barrier* (depend on BAR); + pthread_condattr_{g,s}et_clock (depend on CS); + pthread_getcpuclockid (depends on TCT); + pthread_mutex{,attr}_{g,s}etprioceiling (depend on TPP); + pthread_mutexattr_{g,s}etprotocol (depend on TPP|TPI); + pthread_rwlock_timed{rd,rw}lock (depend on TMO); + pthread_setschedprio (depends on TPS); + [5] pthread_spin_* (depend on SPI) + spawn.h: (depends on SPN) [all=21] posix_spawn* + aio.h: (depends on AIO) [all=8] aio_*, lio_* + stropts.h: (depends on XSR) isastream, {g,s}et{,p}msg, fattach, fdetach + sys/mman.h: posix_madvice (depends on ADV); posix_mem_offset, + posix_typed_mem_getinfo, posix_typed_mem_open (depend on TYM); + shm_open, shm_unlink (depend on SHM) + fcntl.h: posix_fallocate (depend on ADV) + signal.h: sigqueue (depends on RTS) + +*) Missing math interfaces + math.h: [126] many + complex.h: [46] all, except cabs + fenv.h: [11] all -- 1.7.3.4
_______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
