summaryrefslogtreecommitdiffstats
path: root/newlib/libc/include
Commit message (Collapse)AuthorAgeFilesLines
* 2009-04-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>Jeff Johnston2009-04-031-0/+2
| | | | | * libc/include/stdio.h [__SCLE] (__sgetc_r): Prototype before define to avoid a warning with -Wmissing-prototypes.
* 2009-04-03 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-031-3/+3
| | | | | * libc/include/math.h: Remove duplicate copysign prototype. Fix __math_68881 define typo. Guard functions of the rint family.
* * libc/ctype/ctype_c.c: Move inclusion of ctype_iso.h andCorinna Vinschen2009-04-021-0/+3
| | | | | | | | | ctype_cp.h out of ALLOW_NEGATIVE_CTYPE_INDEX case. (__ctype_ptr__): Constify in !_MB_CAPABLE case. Otherwise, de-constify in !ALLOW_NEGATIVE_CTYPE_INDEX case, too. Add comment. (__set_ctype): Set __ctype_ptr__ pointer according to definition of ALLOW_NEGATIVE_CTYPE_INDEX. * libc/include/ctype.h (__ctype_ptr__): Constify in !_MB_CAPABLE case.
* * libc/ctype/Makefile.am: Remove _tolower.c and _toupper.cCorinna Vinschen2009-03-312-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | source files. Add a dependency rule for ctype_o to note changes in ctype_iso.h and ctype_cp.h. * libc/ctype/Makefile.in: Regenerate. * libc/ctype/_tolower.c: Remove file. * libc/ctype/_toupper.c: Remove file. * libc/ctype/ctype_.c: Make sure ALLOW_NEGATIVE_CTYPE_INDEX is always defined on Cygwin. (_ctype_b): Don't make `static const' on Cygwin. (ctype_iso.h): Include if _MB_EXTENDED_CHARSETS_ISO is set. (ctype_cp.h): Include if _MB_EXTENDED_CHARSETS_WINDOWS is set. (__ctype_ptr): Drop definition. (__ctype_ptr__): De-constify. Mark as __EXPORT symbol. (_ctype_): Add Cygwin-specifc asm define. (__set_ctype): New function to set __ctype_ptr__ according to current charset. * libc/ctype/ctype_cp.h: New file containing Windows codepage specific character class tables. * libc/ctype/ctype_iso.h: New file containing ISO-8859-x specific character class tables. * libc/ctype/tolower.c (tolower): Reimplement to support any singlebyte charset if one of the extended charsets is enabled. * libc/ctype/toupper.c (toupper): Ditto. * libc/include/ctype.h (_tolower): Define as macro per POSIX. (_toupper): Ditto. (__ctype_ptr__): De-constify. (toupper): Disable macro on systems supporting extended charsets. (tolower): Ditto. * libc/include/sys/config.h (__EXPORT): Define empty if not defined. * libc/locale/locale.c (__mb_cur_max): Mark as __EXPORT symbol. (__set_ctype): Declare unconditionally. (loadlocale): Remove __CYGWIN__ guard around __set_ctype call.
* * libc/ctype/ctype_.c (_CTYPE_DATA_0_127): Mark TAB as blank character.Corinna Vinschen2009-03-261-0/+4
| | | | | | * libc/ctype/isblank.c: Replace hardcoded test with test for having _B marker in ctype array. * libc/include/ctype.h (isblank): Add macro.
* 2009-03-25 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2009-03-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/math.h: (llround, llroundf): Declare. * libm/common/s_llround.c: New file, implementing llround(). * libm/common/sf_llround.c: New file, implementing llroundf(). * libm/common/sf_lround.c: Remove spurious cast in _DOUBLE_IS_32BITS version of function. * libm/common/sf_lrint.c: Ditto. * libm/common/sf_logb.c: Corrected return for subnormal argument by replacing existing function with a version created from sf_ilogb.c. * libm/common/s_logb.c: Ditto, except starting point s_ilogb.c. Also added documentation for logb() and logbf(). * libm/common/s_signbit.c: Add signbit() documentation. * libm/common/s_log2.c: Update return values to match what w_log2.c has, since log2 uses log(); add note about being derived instead of direct. * libm/common/sf_fma.c: Add casts to attempt to get correct results, as well as comments pointing out problems with the implementation. * libm/common/s_fma.c: Add fma() and fmaf() documentation. * libm/common/sf_remquo.c: Incorrect quotient returns for large values corrected by discarding existing function and replacing with Sun verion, with some enhancements. * libm/common/s_remquo.c: Ditto. Add remquo() and remquof() documentation. * libm/common/s_fmax.c: Add fmax() and fmaxf() documentation. * libm/common/s_fmin.c: Add fmin() and fminf() documentation. * libm/common/s_fdim.c: Return NAN for NAN arg, add fdim() and fdimf() documentation. * libm/common/sf_fdim.c: Return NAN for NAN arg, HUGE_VALF for inf arg. * libm/common/s_trunc.c: Add trunc() and truncf() documentation. * libm/common/s_rint.c: Add rint() and rintf() documentation. * libm/common/s_round.c: Add round() and roundf() documentation. * libm/common/s_scalbn.c: Add scalbln() and scalblnf() documentation. * libm/common/s_infinity.c: Add infinity() and infinityf() documentation. * libm/common/s_lround.c: Add lround(), lroundf(), llround(), and llroundf() documentation. * libm/common/s_lrint.c: Add lrint(), lrintf(), llrint(), and llrintf() documentation. * libm/common/isgreater.c: New file for documenting math.h function-like macros isgreater(), isgreaterequal(), isless(), islessequal(), islessgreater(), and isunordered(). * libm/common/s_isnan.c: Add documentation for function-like macros fpclassify(), isfinite(), isinf(), isnan(), and isnormal(). * libm/common/s_nearbyint.c: Add nearbyint() and nearbyintf() documentation. * libm/common/Makefile.am: Add s_llround.c (src); sf_llround.c (fsrc); s_fdim.def, s_fma.def, s_fmax.def, s_fmin.def, s_logb.def, s_lrint.def, s_lround.def, s_nearbyint.def, s_remquo.def, s_rint.def, s_round.def, s_signbit.def, s_trunc.def, and isgreater.def (chobj); re-name all existing chew files (chobj) to match source file base names (put in underscores), delete all special targets for chew files (leaving all to be generated by rule). * libm/common/Makefile.in: regenerate. * libm/math/w_exp2.c: Add "base 2" to documentation description (and delete TRAD_SYNOPSIS). * libm/math/w_gamma.c: Add tgamma() and tgammaf() documentation, along with some history behind the function names. * libm/math/math.tex: Add includes for newly-added documentation (see .def additions to common/Makefile.am and math/Makefile.am in this ChangeLog list), adjusted existing .def file names to match source file base names (added underscores); add mention of HUGE_VALF; rename "Version of library" section to "Error Handling" and add some text about floating-point exception; added section "Standards Compliance And Portability". * libm/math/Makefile.am: Add w_exp2.def (chobj); re-name all existing chew files (chobj) to match source file base names, delete all special targets for chew files (leaving all to be generated by rule). * libm/math/Makefile.in: regenerated * doc/makedoc.c: Change silent ignoring of commands < 5 characters to a failure when reading macro file for commands < 4 characters; add -v (verbose) option for printing some debugging information; get rid of spurious translation of "@*" to "*" (no source files used @*, so no existing doc pages were affected); clean up some compiler warnings. * doc/doc.str: add BUGS and SEEALSO sections (to match texi2pod.pl which has them); Remove ITEM command (redundant with makedoc built-in "o", not used in any present source file so nothing is lost, anyway). * HOWTO: New file to hold information for maintainers regarding how to do things. Initial sections on documentation and ELIX levels.
* 2009-03-24 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2009-03-241-1/+1
| | | | | * libc/include/sys/errno.h: Move EFTYPE to general usage because it is used in libc/search.
* * libc/ctype/iswalpha.c: Handle all wchar_t as unicode onCorinna Vinschen2009-03-242-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _MB_CAPABLE systems. * libc/ctype/iswblank.c: Ditto. * libc/ctype/iswcntrl.c: Ditto. * libc/ctype/iswprint.c: Ditto. * libc/ctype/iswpunct.c: Ditto. * libc/ctype/iswspace.c: Ditto. * libc/ctype/jp2uc.c (__jp2uc): On Cygwin, just return c. Explain why. * libc/ctype/towlower.c: Ditto. * libc/ctype/towupper.c: Ditto. * libc/include/sys/config.h: Define _MB_EXTENDED_CHARSETS_ISO and _MB_EXTENDED_CHARSETS_WINDOWS if _MB_EXTENDED_CHARSETS_ALL is defined. Define _MB_EXTENDED_CHARSETS_ALL on Cygwin only for now. * libc/include/sys/reent.h (struct _reent): Mark _current_category and _current_locale as unused. * libc/locale/locale.c: Add new charset support to documentation. Include ../stdio/local.h from here. (lc_ctype_charset): Set to "ASCII" by default. (lc_message_charset): Ditto. (_setlocale_r): Don't set _current_category and _current_locale. (loadlocale): Add Cygwin codepage support. On _MB_CAPABLE systems, set __mbtowc and __wctomb function pointers to function corresponding with current charset. Don't allow non-existant ISO-8859-12 charset. Add support for Windows singlebyte codepages. On Cygwin, add support for GBK, CP949, and BIG5. On Cygwin, call __set_ctype() in case the catorgy is LC_CTYPE. Don't set _current_category and _current_locale. * libc/stdlib/Makefile.am (GENERAL_SOURCES): Add sb_charsets.c. * libc/stdlib/Makefile.in: Regenerate. * libc/stdlib/local.h: Add prototype for __locale_charset. Add prototypes for __mbtowc and __wctomb pointers. Add prototypes for charset-specific _wctomb_r and _mbtowc_r functions. Declare tables and functions from sb_charsets.c. * libc/stdlib/mbtowc_r.c (__mbtowc): Define. Set to __ascii_mbtowc by default. (_mbtowc_r): Just call __mbtowc from here. (__ascii_mbtowc): New function. (__iso_mbtowc): New function. (__cp_mbtowc): New function. (__utf8_mbtowc): New function. (__sjis_mbtowc): New function. Disable on Cygwin. (__eucjp_mbtowc): New function. Disable on Cygwin. (__jis_mbtowc): New function. Disable on Cygwin. * libc/stdlib/sb_charsets.c: New file, adding singlebyte to UTF conversion tables for all ISO and CP charsets. (__iso_8859_index): New function. (__cp_index): New function. * libc/stdlib/wctomb_r.c (__wctomb): Define. Set to __ascii_wctomb by default. (_wctomb_r): Just call __wctomb from here. (__ascii_wctomb): New function. (__utf8_wctomb): New function. (__sjis_wctomb): New function. Disable on Cygwin. (__eucjp_wctomb): New function. Disable on Cygwin. (__jis_wctomb): New function. Disable on Cygwin. (__iso_wctomb): New function. (__cp_wctomb): New function.
* 2009-03-20 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2009-03-202-3/+33
| | | | | | | * libc/include/sys/errno.h: Protect various non-standard errnos with either __LINUX_ERRNO_EXTENSIONS__ or __CYGWIN__. * libc/include/sys/config.h[__CYGWIN__]: Define __LINUX_ERRNO_EXTENSIONS__.
* 2009-03-18 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>Jeff Johnston2009-03-181-0/+2
| | | | | | | | * libm/common/s_log2.c: New file. * libm/common/sf_log2.c: Ditto. * libm/common/Makefile.am: Add s_log2.c and sf_log2.c. * libm/common/Makefile.in: Regenerated. * libc/include/math.h: Add log2 and log2f function prototypes.
* * libc/include/sys/errno.h (ESTRPIPE): Define.Corinna Vinschen2009-03-151-0/+1
| | | | * libc/string/strerror.c (strerror): Decode it.
* * libc/include/wchar.h (wcsdup, _wcsdup_r): Declare.Corinna Vinschen2009-03-151-0/+2
| | | | | | | * libc/string/Makefile.am: Add wcsdup.c. * libc/string/Makefile.in: Regenerate. * libc/string/strings.tex: Add wcsdup documentation reference. * libc/string/wcsdup.c: New file.
* * libc/include/stdlib.h (_mkstemp_r, _mktemp_r): Move out ofCorinna Vinschen2009-03-141-2/+2
| | | | !_REENT_ONLY section.
* * libc/include/stdio.h (_mkstemp_r, _mktemp_r): Move declarationsCorinna Vinschen2009-03-142-3/+3
| | | | | | | to stdlib.h. * libc/include/stdlib.h (mktemp, _mktemp_r): Warn when using. * libc/stdio/mktemp.c: Explain the security risk when using mktemp.
* * libc/include/wchar.h (wcscasecmp, wcsncasecmp): Declare.Corinna Vinschen2009-03-111-0/+2
| | | | | | | | * libc/string/Makefile.am: Add wcscasecmp.c, wcsncasecmp.c * libc/stdio/Makefile.in: Regenerate. * libc/string/strings.tex: Add new documentation references. * libc/string/wcscasecmp.c: New file. * libc/string/wcsncasecmp.c: New file.
* * libc/include/wchar.h (fwscanf, swscanf, vfwscanf, vswscanf, vwscanf,Corinna Vinschen2009-03-111-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wscanf): Declare. (_fwscanf_r, _swscanf_r, _vfwscanf_r, _vswscanf_r, _vwscanf_r, _wscanf_r): Declare. * libc/stdio/Makefile.am: Add new wscanf files. * libc/stdio/Makefile.in: Regenerate. * libc/stdio/fwscanf.c: New file. * libc/stdio/local.h (__svfwscanf_r, __ssvfwscanf_r, __svfiwscanf_r, __ssvfiwscanf_r): Declare. * libc/stdio/stdio.tex: Add new documentation references. * libc/stdio/swscanf.c: New file. * libc/stdio/vfwscanf.c: New file. * libc/stdio/vswscanf.c: New file. * libc/stdio/vwscanf.c: New file. * libc/stdio/wscanf.c: New file. * libc/stdio/vfscanf.c (_sungetc_r): Make externaly available. Only define if INTEGER_ONLY is defined. Declare otherwise. (__ssrefill_r): Ditto. (_sfread_r): Ditto. Remove static eofread/eofread1 functions and use __seofread function instead, throughout. * libc/stdio/local.h (__seofread): Declare. * libc/stdio/stdio.c (__seofread): Define. * libc/stdio/fgetwc.c (__fgetwc): Fix compiler warning. * libc/stdio/fgetws.c (_fgetws_r): Ditto. * libc/stdio/fread.c (_fread_r): Ditto. * libc/stdio/vfprintf.c: Ditto. * libc/stdio/vswprintf.c: Ditto.
* * libc/time/strftime.c: Adapt for dual-purpose use so not onlyCorinna Vinschen2009-03-091-0/+1
| | | | | | | | | | | | | defines strftime(), but can also define wcsftime(); add optional test package; speed up %Y handling. * libc/time/wcsftime.c: New file, defining wcsftime() (albeit indirectly by including strftime.c) and its documentation. * libc/time/time.tex: Enhance tm_isdst explanation, change strftime description to match modified description in strftime.c * libc/time/Makefile.am: Add wcsftime.c and wcsftime.def. Add a rule so that wcsftime.o gets rebuilt when strftime changes. * libc/time/Makefile.in: Regenerate. * libc/include/wchar.h (wcsftime): Declare.
* * libc/include/stdio.h (__VALIST): Guard against multiple definition.Corinna Vinschen2009-03-062-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/wchar.h: Include stdarg.h. (__VALIST): Define conditionally. (fwprintf, swprintf, vfwprintf, vswprintf, vwprintf, wprintf: Declare. (_fwprintf_r, _swprintf_r, _vfwprintf_r, _vswprintf_r, _vwprintf_r, _wprintf_r): Declare. * libc/stdio/Makefile.am: Add new files. * libc/stdio/Makefile.in: Regenerate. * libc/stdio/fwprintf.c: New file. * libc/stdio/local.h (_svfwprintf_r, _svfiwprintf_r): Declare. (__CH_CLASS, __STATE, __ACTION): Move definition from vfprintf.c here and move to the __ namespace. (__chclass, __state_table, __action_table): Declare. * libc/stdio/stdio.tex: Add new documentation references. * libc/stdio/swprintf.c: New file. * libc/stdio/vfprintf.c (__SPRINT): New macro to call the right __sprint_r function according to compilation unit. Use throughout. (__ssprint_r): Rename STRING_ONLY variant from __sprint_r. Make externaly available. Only define if INTEGER_ONLY is defined. (__sprint_r): Make externaly available. Only define if INTEGER_ONLY is defined. Handle stream orientation. (__sbprintf): Copy FILE's _flags2 member as well. (__chclass, __state_table, __action_table): Prepend __ to name and make externally available. * libc/stdio/vfwprintf.c: New file. * libc/stdio/vswprintf.c: New file. * libc/stdio/vwprintf.c: New file. * libc/stdio/wprintf.c: New file.
* * libc/include/wchar.h (mbsnrtowcs): Declare.Corinna Vinschen2009-02-191-0/+8
| | | | | | | | | | | | | | | | | | (_mbsnrtowcs_r): Declare. (wcsnrtombs): Declare. (_wcsnrtombs_r): Declare. * libc/stdlib/Makefile.am (ELIX_2_SOURCES): Add mbsnrtowcs.c and wcsnrtombs.c. * libc/stdlib/Makefile.in: Regenerate. * libc/stdlib/mbsnrtowcs.c: New file, implementing _mbsnrtowcs_r and mbsnrtowcs. Document mbsnrtowcs and mbsrtowcs. * libc/stdlib/mbsrtowcs.c (_mbsrtowcs_r): Just call _mbsnrtowcs_r. (mbsrtowcs): Ditto. * libc/stdlib/wcsnrtombs.c: New file, implementing _wcsnrtombs_r and wcsnrtombs. Document wcsrtombs and wcsnrtombs. * libc/stdlib/wcsrtombs.c (_wcsrtombs_r): Just call _wcsnrtombs_r. (wcsrtombs): Ditto. * libc/stdlib/stdlib.tex: Accommodate new documentation.
* * libc/stdio/open_memstream.c: Add open_wmemstream to doumentation.Corinna Vinschen2009-02-181-0/+3
| | | | | | | | | | | | | | | | | (struct memstream): Add wide element. Change saved to a union to take char and wchar_t values. (memwriter): Accommodate wide-oriented oeprations. (memseeker): Ditto. (memseeker64): Ditto. (memcloser): Ditto. (internal_open_memstream_r): New static function. Take functionality from former _open_memstream_r and handle additional "wide" parameter. (_open_memstream_r): Just call internal_open_memstream_r with wide==-1 from here. (_open_wmemstream_r): New function. (open_wmemstream): Ditto. * libc/include/wchar.h (open_wmemstream): Declare. (_open_wmemstream_r): Declare.
* 2009-02-12 Corinna Vinschen <corinna@vinschen.de>Jeff Johnston2009-02-121-0/+4
| | | | | | | | | | | | * libc/include/wchar.h (_wcstod_r): Declare. (_wcstof_r): Declare. (wcstod): Declare. (wcstof): Declare. * libc/stdlib/Makefile.am (GENERAL_SOURCES): Add wcstod.c. (CHEWOUT_FILES): Add wcstod.def. * libc/stdlib/Makefile.in: Regenerate. * libc/stdlib/stdlib.tex: Add wcstod. * libc/stdlib/wcstod.c: New file.
* 2009-01-19 Neal H. Walfield <neal@gnu.org>Jeff Johnston2009-01-192-20/+20
| | | | | | | | * libc/include/stdint.h (INT64_C, UINT64_C, INTMAX_C, UINTMAX_C) [__have_long64 && __have_longlong64]: Use L and UL, not LL and ULL. * libc/include/inttypes.h (__PRI64, __SCN64, __PRIMAX, __SCNMAX, __PRIPTR, __SCNPTR) [__have_long64 && __have_longlong64]: Use l, not ll.
* * libc/include/sys/stdio.h (_flockfile, _funlockfile): Fix typos.Kazu Hirata2009-01-081-2/+2
|
* 2008-12-12 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2008-12-121-0/+1
| | | | | | | | * libc/include/wchar.h: Added wcstok() declaration. * libc/string/wcstok.c: New file, implementing wcstok. * libc/string/Makefile.am: Add wcstok support. * libc/string/wcstrings.tex: Ditto. * libc/string/Makefile.in: Regenerated.
* 2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org>Jeff Johnston2008-12-121-2/+2
| | | | | | * libc/include/sys/features.h: Set RTEMS's _POSIX_MONOTONIC_CLOCK to 200112L (SUSv3 compliance). Comment out RTEMS's _POSIX_SHARED_MEMORY_OBJECTS (Unsupported).
* 2008-12-11 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-12-111-1/+1
| | | | | | * libc/include/sys/time.h(gettimeofday): Change prototype so 2nd parameter is void *, matching SUSV2. * libc/syscalls/sysgettod.c(gettimeofday): Ditto.
* 2008-12-11 Jukka Pietarinen <jukka.pietarinen@mrf.fi>Jeff Johnston2008-12-112-0/+8
| | | | | | | | | | | | | | * configure.host: Add lm32 * libc/include/machine/ieeefp.h: Add __lm32__ * libc/include/machine/setjmp.h: Add __lm32__ * libc/machine/configure.in: Add lm32 * libc/machine/configure: Regenerated. * libc/machine/lm32/aclocal.m4: New file. * libc/machine/lm32/configure.in: Ditto. * libc/machine/lm32/configure: Ditto. * libc/machine/lm32/Makefile.am: Ditto. * libc/machine/lm32/Makefile.in: Ditto. * libc/machine/lm32/setjmp.s: Ditto.
* 2008-12-11 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2008-12-115-16/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/sys/lock.h: Add void cast to avoid "statement has no effect" warnings from gcc. * libc/include/sys/stdio.h: Ditto. * libc/include/sys/time.h: Correct gettimeofday() prototype. * libc/stdlib/__exp10.c: Add #include "std.h" for function prototype. * libc/stdlib/__ten_mu.c: Ditto. * libc/stdlib/std.h: Correct __exp10's ANSI prototype. * libc/stdlib/ldtoa.c: Change eiisinf definition to ANSI form. (Are already others in file without _ansi method, so did not bother.) * libc/stdlib/system.c: Use _ansi forms for function prototypes and definitions. * libc/time/mktime.c: Ditto. * libc/misc/__dprintf.c: Ditto. * libc/include/stdio.h: Add function prototypes for _fgetc_r, _fgetpos_r, _fsetpos_r, _freopen_r, _rewind_r, freopen64, _freopen64_r, _funopen_r, and _fopencookie_r. * libc/include/reent.h: Add function prototype for _stat64_r, align _execve_r prototype with POSIX definition for execve. * libc/reent/execr.c: Align function prototype with POSIX definition. * libc/stdio/asniprintf.c: Add #include "local.h". * libc/stdio/vasniprintf.c: Ditto. * libc/stdio/fread.c: Remove unused variable newcount. * libc/stdio/local.h: Add function prototype for __sccl. * libc/stdio/open_memstream.c: Remove unused variable flags. * libc/stdio/vfscanf.c: Proper prototyping for ccfn, remove prototype for __sccl since now in local.h. * libc/string/memcpy.c: Add #include <string.h> (for real and for traditional synopsis), remove extraneous stddef.h and limits.h. * libc/syscalls/sysclose.c: Add #include <unistd.h>. * libc/syscalls/sysfork.c: Ditto. * libc/syscalls/sysgetpid.c: Ditto. * libc/syscalls/sysexecve.c: Add #include <unistd.h>, align function prototype with POSIX definition. * libc/syscalls/sysfstat.c: Add #include <sys/stat.h>. * libc/syscalls/sysgettod.c: Correct sys/times.h to sys/time.h. * libc/syscalls/syskill.c: Add #include <signal.h>. * libc/syscalls/syslink.c: Add #include <unistd.h>, fix prototype. * libc/syscalls/sysunlink.c: Ditto. * libc/syscalls/sysstat.c: Add #include <sys/stat.h>, fix prototype. * libc/syscalls/syswait.c: Add #include <sys/wait.h>, fix prototype.
* 2008-12-10 Corinna Vinschen <corinna@vinschen.de>Jeff Johnston2008-12-103-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement basic wide char stdio functionality, based on FreeBSD. * libc/include/stdio.h (__SORD): Define. (__SWID): Define. * libc/include/wchar.h: Add declarations for new wide char functions. (getwc): Define as macro. (getwchar): Ditto. (putwc): Ditto. (putwchar): Ditto. * libc/include/sys/reent.h (struct __sFILE): Add _mbstate member. (struct __sFILE64): Ditto. * libc/stdio/Makefile.am (ELIX_4_SOURCES): Add fgetwc.c, fgetws.c, fputwc.c, fputws.c, fwide.c, getwc.c, getwchar.c, putwc.c, putwchar.c and ungetwc.c. (CHEWOUT_FILES): Add fgetwc.def, fgetws.def, fputwc.def, fputws.def, fwide.def, getwc.def, getwchar.def, putwc.def, putwchar.def and ungetwc.def. Add header dependency rules for the new files. * libc/stdio/Makefile.in: Regenerate. * libc/stdio/fgetwc.c: New file, implementing fgetwc and _fgetwc_r. * libc/stdio/fgetws.c: New file, implementing fgetws and _fgetws_r. * libc/stdio/findfp.c (std): Initialize FILE's _mbstate member. (__sfmoreglue): Ditto. * libc/stdio/fputs.c (_fputs_r): Set stream orientation. * libc/stdio/fputwc.c: New file, implementing fputwc and _fputwc_r. * libc/stdio/fputws.c: New file, implementing fputws and _fputws_r. * libc/stdio/fread.c (_fread_r): Set stream orientation. * libc/stdio/freopen.c (_freopen_r): Reset stream orientation. Reset _mbstate. * libc/stdio/fseek.c (_fseek_r): Reset _mbstate. * libc/stdio/fwide.c: New file, implementing fwide and _fwide_r. * libc/stdio/fwrite.c (_fwrite_r): Set stream orientation. * libc/stdio/getwc.c: New file, implementing getwc and _getwc_r. * libc/stdio/getwchar.c: New file, implementing getwchar and _getwchar_r. * libc/stdio/local.h (ORIENT): New macro. * libc/stdio/puts.c (_puts_r): Set stream orientation. * libc/stdio/putwc.c: New file, implementing putwc and _putwc_r. * libc/stdio/putwchar.c: New file, implementing putwchar and _putwchar_r. * libc/stdio/refill.c (__srefill_r): Set stream orientation. * libc/stdio/stdio.tex: Add documentation for new functions. * libc/stdio/ungetc.c (_ungetc_r): Set stream orientation. * libc/stdio/ungetwc.c: New file, implementing ungetwc and _ungetwc_r. * libc/stdio/vfscanf.c (__SVFSCANF_R): Set stream orientation. * libc/stdio/wbuf.c (__swbuf_r): Ditto.
* 2008-12-10 Joseph Myers <joseph@codesourcery.com>Jeff Johnston2008-12-101-17/+100
| | | | | | | | | | | | | | | | | * libc/include/stdint.h (INT32_MIN, INT32_MAX, UINT32_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX): Define to constants with "long" types where appropriate. (INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX): Correct to match logic for defining corresponding types. (INTMAX_MAX, INTMAX_MIN, UINTMAX_MAX): Define. (SIZE_MAX): Define using __SIZE_MAX__ if available. (PTRDIFF_MAX): Define using __PTRDIFF_MAX__ if available. (PTRDIFF_MIN): Define in terms of PTRDIFF_MAX. (WCHAR_MAX, WCHAR_MIN, WINT_MAX, WINT_MIN): Define. (UINT8_C, UINT16_C): Define to give signed values if corresponding types would promote to int.
* * libc/include/sys/features.h (_POSIX_V6_ILP32_OFF32): Always define.Corinna Vinschen2008-12-041-3/+3
| | | | | (_POSIX_V6_LP64_OFF64): Ditto. (_POSIX_V6_LPBIG_OFFBIG): Ditto.
* 2008-11-27 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2008-11-271-0/+1
| | | | | | | | | | | | | | | | | * libc/argz/argz_add.c: Added #include <argz.h> to get function prototypes. * libc/argz/argz_append.c: Ditto. * libc/argz/argz_count.c: Ditto. * libc/argz/argz_create.c: Ditto. * libc/argz/argz_create_sep.c: Ditto. * libc/argz/argz_delete.c: Ditto. * libc/argz/argz_next.c: Ditto. * libc/argz/argz_stringify.c: Ditto * libc/stdlib/strtod.c: Added #include <stdlib.h> to get function prototypes. * libc/stdlib/wcstoul.c: Added #include <wchar.h> to get function prototypes, corrected traditional usage comment. * libc/include/wchar.h: Added _mbsrtowcs_r() prototype.
* 2008-11-24 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2008-11-242-0/+4
| | | | | | | | | | | | | | | | | | | | * libc/stdlib/wcstoull_r.c: Add EINVAL return for bad base value, include wchar.h for prototype, remove extraneous includes, use C99/POSIX ULLONG_MAX (but allow for poor limits.h). * libc/stdlib/wcstoull.c: Fix usage comments (mistakes and to add base value check noted above), remove extraneous includes. * libc/stdio/asnprintf.c: Add #include "local.h" to get function prototype for _svfprintf_r(). * libc/stdio/vasnprintf.c: Ditto. * libc/stdio/local.h: Add function prototype for __submore(). * libc/include/stdio.h: Add function prototypes for _fseeko_r and _ftello_r. * libc/posix/namespace.h: Commented out define for write to eliminate write() prototype being missing for collate.c (which is the only file that presently includes namespace.h). * libc/include/reent.h: Added _rename_r. * libc/reent/renamer.c: Corrected function prototypes in synopses. * libc/locale/ldpart.c: Use struct stat64 when calling fstat64.
* * libc/include/stdio.h (__SMOD): Remove definition of unused flag.Corinna Vinschen2008-11-242-1/+1
| | | | | | | | | | * libc/include/sys/reent.h (struct __sFILE): Add _flags2 member. * libc/stdio/findfp.c (std): Initialize _flags2. (__sfp): Ditto. * libc/stdio/refill.c (__srefill_r): Drop resetting __SMOD flag. * libc/stdio/vfscanf.c (__ssrefill_r): Ditto. * libc/stdio/fseek.c (_fseek_r): Drop checking __SMOD flag. * libc/stdio64/fseeko64.c (_fseeko64_r): Ditto.
* 2008-11-19 Joel Sherrill <joel.sherrill@oarcorp.com>Jeff Johnston2008-11-191-5/+1
| | | | | | | * libc/include/sys/config.h[__mips__]: Don't bother setting __ATTRIBUTE_IMPURE_PTR__ here. [__rtems__][__mips__]: No need to undef the __ATTRIBUTE_IMPURE_PTR__ macro anymore.
* 2008-11-19 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-11-191-0/+4
| | | | | | | | | | | | | | | * libc/sys/linux/bits/dirent.h: New header file. * libc/sys/linux/sys/dirent.h: Include <bits/dirent.h> instead of <linux/dirent.h>. * libc/posix/Makefile.am: Remove reallocf. * libc/posix/Makefile.in: Regenerated. * libc/posix/reallocf.c: Moved to... * libc/stdlib/reallocf.c: Here * libc/stdlib/malloc.c: Add reallocf documentation. * libc/include/stdlib.h: Add reallocf and _reallocf_r prototypes. * libc/stdlib/Makefile.am: Add reallocf. * libc/stdlib/Makefile.in: Regenerated. * libc/posix/_isatty.c: Set errno.
* 2008-11-19 Ralf Corsepius <ralf.corsepius@rtems.org>Jeff Johnston2008-11-191-0/+4
| | | | | * libc/include/sys/config.h: Don't put __ATTRIBUTE_IMPURE_PTR__ into .sdata section for mips-rtems.
* 2008-11-19 Ralf Corsepius <ralf.corsepius@rtems.org>Jeff Johnston2008-11-191-8/+0
| | | | | | * libc/include/pthread.h: Remove prototypes for pthread_attr_getcputime and pthread_attr_setcputime which were proposed but never approved by the POSIX standard.
* 2008-10-31 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-10-316-0/+321
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/limits.h: Add ARG_MAX, PATH_MAX, and _POSIX2_RE_DUP_MAX. * libc/include/envlock.h: New file. * libc/include/fnmatch.h: Ditto. * libc/include/glob.h: Ditto. * libc/include/regex.h: Ditto. * libc/include/wordexp.h: Ditto. * libc/posix/Makefile.am: Add new files moved from libc/sys/linux/stdlib. * libc/posix/Makefile.in: Regenerated. * libc/posix/COPYRIGHT: New file moved from libc/sys/linux/stdlib. * libc/posix/cclass.h: Ditto. * libc/posix/cname.h: Ditto. * libc/posix/collate.c: Ditto. * libc/posix/collate.h: Ditto. * libc/posix/collcmp.c: Ditto. * libc/posix/engine.c: Ditto. * libc/posix/fnmatch.3: Ditto. * libc/posix/glob.3: Ditto. * libc/posix/fnmatch.c: Ditto. * libc/posix/glob.c: Ditto. * libc/posix/namespace.h: Ditto. * libc/posix/reallocf.c: Ditto. * libc/posix/regcomp.c: Ditto. * libc/posix/regerror.c: Ditto. * libc/posix/regex.3: Ditto. * libc/posix/regex2.h: Ditto. * libc/posix/regexec.c: Ditto. * libc/posix/regfree.c: Ditto. * libc/posix/rune.h: Ditto. * libc/posix/runetype.h: Ditto. * libc/posix/scandir.c: Remove advertising clause which is not in effect. * libc/posix/sysexits.h: Ditto. * libc/posix/un-namespace.h: Ditto. * libc/posix/utils.h: Ditto. * libc/posix/wordexp.c: Ditto. * libc/posix/wordfree.c: Ditto. * libc/posix/execl.c: Add !_NO_EXECVE flag check. * libc/posix/execle.c: Ditto. * libc/posix/execlp.c: Ditto. * libc/posix/execv.c: Ditto. * libc/posix/execve.c: Ditto. * libc/posix/execvp.c: Ditto. * libc/posix/popen.c: Add !_NO_POPEN flag check. * libc/sys/linux/configure: Regenerated. * libc/sys/linux/configure.in: Remove stdlib. * libc/sys/linux/include/limits.h: Add include of linux/limits.h. * libc/sys/linux/stdlib/Makefile.am: Removed. * libc/sys/linux/stdlib/Makefile.in: Ditto. * libc/sys/linux/stdlib/COPYRIGHT: Moved to libc/posix. * libc/sys/linux/stdlib/cclass.h: Ditto. * libc/sys/linux/stdlib/cname.h: Ditto. * libc/sys/linux/stdlib/collate.c: Ditto. * libc/sys/linux/stdlib/collate.h: Ditto. * libc/sys/linux/stdlib/collcmp.c: Ditto. * libc/sys/linux/stdlib/engine.c: Ditto. * libc/sys/linux/stdlib/fnmatch.3: Ditto. * libc/sys/linux/stdlib/fnmatch.c: Ditto. * libc/sys/linux/stdlib/glob.3: Ditto. * libc/sys/linux/stdlib/glob.c: Ditto. * libc/sys/linux/stdlib/reallocf.c: Ditto. * libc/sys/linux/stdlib/regcomp.c: Ditto. * libc/sys/linux/stdlib/regerror.c: Ditto. * libc/sys/linux/stdlib/regex.3: Ditto. * libc/sys/linux/stdlib/regex2.h: Ditto. * libc/sys/linux/stdlib/regexec.c: Ditto. * libc/sys/linux/stdlib/regfree.c: Ditto. * libc/sys/linux/stdlib/utils.h: Ditto. * libc/sys/linux/stdlib/wordexp.c: Ditto. * libc/sys/linux/stdlib/wordfree.c: Ditto.
* 2008-10-16 Joel Sherrill <joel.sherrill@oarcorp.com>Jeff Johnston2008-10-161-3/+1
| | | | * libc/include/sys/unistd.h: RTEMS follows standard for sync().
* 2008-10-16 Joel Sherrill <joel.sherrill@oarcorp.com>Jeff Johnston2008-10-162-0/+11
| | | | | | * libc/include/time.h: Add CLOCK_MONOTONIC. * libc/include/sys/features.h: Define _POSIX_MONOTONIC_CLOCK for RTEMS.
* 2008-10-15 Joel Sherrill <joel.sherrill@oarcorp.com>Jeff Johnston2008-10-151-1/+1
| | | | * libc/include/sys/unistd.h: Enable ttyname_r() for RTEMS.
* Fix typo and make C99 check the same as is used in math.hJeff Johnston2008-10-151-2/+1
|
* 2008-10-15 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2008-10-151-1/+5
| | | | | | * libc/include/ctype.h (isblank): isblank is C99. * libc/ctype/isblank.c (isblank comments): ditto. isblank does not have a macro version (as was claimed in the description).
* 2008-10-02 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-10-021-7/+8
| | | | | * libc/include/sys/reent.h[_REENT_SMALL](_REENT_INIT_RAND48): Add initialization of _rand_next to 1.
* 2008-09-25 Raphael Derossa Pereira <raphaelpereira@gmail.com>Jeff Johnston2008-09-262-0/+25
| | | | | | | | | | * libc/include/pthread.h[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add new pthread_mutexattr_gettype and pthread_mutexattr_settype prototypes. * libc/include/sys/types.h[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add new mutex type values. (pthread_mutexattr_t)[_UNIX98_THREAD_MUTEX_ATTRIBUTES]: Add type field.
* 2008-09-24 Pawel Veselov <pawel.veselov@gmail.com>Jeff Johnston2008-09-251-2/+2
| | | | | | | | | | | | | | | Fix setenv/getenv/unsetenv to be OpenGroup compliant: * libc/include/stdlib.h (unsetenv, _unsetenv_r): Redefine with integer return types. * libc/stdlib/getenv_r.c (_findenv_r): Do no special processing with names that contain equal chars. * libc/stdlib/setenv.c: Redefine _unsetenv_r as returning int. * libc/stdlib/setenv_r.c (_setenv_r): Return -1 and set errno to EINVAL if name contains an equal sign. Do not remove any equal signs from the value. (_unsetenv_r): Modified to return int. Return -1 and set EINVAL if name contains equal sign. Return -1 if no variable(s) were found and return 0 otherwise.
* 2008-09-19 Eric Blake <ebb9@byu.net>Jeff Johnston2008-09-191-1/+4
| | | | | | Supply missing POSIX errno values. * libc/include/sys/errno.h (ENOTRECOVERABLE, EOWNERDEAD): Define. * libc/string/strerror.c (strerror): Decode them, and ECANCELED.
* 2008-07-24 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-07-241-0/+3
| | | | | * libc/include/ctype.h (_ctype_): Restore for C++ backward compatability only.
* 2008-07-21 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2008-07-211-13/+12
| | | | | | | | | | | | | | | | | | * libc/ctype/ctype_.c: Add new pointer __ctype_ptr__ which is one less than the old __ctype_ptr. * libc/ctype/isalnum.c: Use __ctype_ptr__. * libc/ctype/isalpha.c: Ditto. * libc/ctype/iscntrl.c: Ditto. * libc/ctype/isdigit.c: Ditto. * libc/ctype/islower.c: Ditto. * libc/ctype/isprint.c: Ditto. * libc/ctype/ispunct.c: Ditto. * libc/ctype/isspace.c: Ditto. * libc/ctype/isupper.c: Ditto. * libc/ctype/isxdigit.c: Ditto. * libc/include/ctype.h: Change ctype macros to use new __ctype_ptr__ and add declaration of __ctype_ptr__. Remove older ctype table pointers from here even though they can still work.