Commit Graph

2137 Commits

Author SHA1 Message Date
Corinna Vinschen 53bbfeed98 * libc/stdio/fgetws.c (_fgetws_r): Call _mbsnrtowcs_r rather than
_mbsrtowcs_r and restrict number of wide chars to n - 1.
2012-05-30 14:42:52 +00:00
Corinna Vinschen 4aa28d8ae2 * libc/stdio/local.h (_newlib_flockfile_start): New macro to
secure stream related critical section against thread cancellation.
	(_newlib_flockfile_exit): Ditto.
	(_newlib_sfp_lock_end): Ditto.
	(_newlib_sfp_lock_start): Ditto for the list of streams.
	(_newlib_sfp_lock_exit): Ditto.
	(_newlib_sfp_lock_end): Ditto.
	Use aforementioned macros in place of _flockfile/_funlockfile
	and __sfp_lock_acquire/__sfp_lock_release throughout the code.
	* libc/stdio/fclose.c: Explicitely disable and re-enable thread
	cancellation.  Explain why.
	* libc/stdio/freopen.c: Ditto.
	* libc/stdio64/freopen64.c: Ditto.
2012-05-30 08:58:42 +00:00
Corinna Vinschen bb39d14401 * libc/machine/cr16/asm.h: Added some missing instructions
and removed few unsupported instructions of cr16 target.
2012-05-21 11:55:15 +00:00
Corinna Vinschen 507b172d8d * libc/include/string.h (memrchr): Declare.
* libc/string/Makefile.am (ELIX_4_SOURCES): Add memrchr.c.
	(CHEWOUT_FILES): Add memrchr.def.
	* libc/string/Makefile.in: Regenerate.
	* libc/string/memrchr.c: New file.
2012-05-10 08:34:08 +00:00
Corinna Vinschen cc580eddd3 * libc/sys/rtems/machine/_types.h: Add Microblaze. 2012-05-10 06:59:58 +00:00
Corinna Vinschen a9f0367e1a * libc/sys/rtems/crt0.c: Add stubs for access(), ftruncate(),
_getpid_r(), geteuid(), getgid, _getgid_r, getpid(), getppid(),
	and _getpid_r().
2012-05-09 09:03:06 +00:00
Corinna Vinschen e32a14ca19 * testsuite/newlib.string/strcmp-1.c (LONG_TEST): New macro.
(MAX_BLOCK_SIZE): Use small value when LONG_TEST is not set.
	(MAX_DIFF, MAX_LEN, MAX_ZEROS) Likewise.
2012-05-03 08:13:17 +00:00
Corinna Vinschen 9ae37ea0c6 * libc/locale/locale.c (__mb_cur_max): On Cygwin, align default value
with default UTF-8 charset.
2012-03-29 20:27:15 +00:00
Corinna Vinschen 33c789303f * libc/stdio/findfp.c (__sinit): Set __sdidinit last. 2012-03-26 10:43:06 +00:00
Jeff Johnston eab1d3e125 2012-03-09 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/machine/setjmp-dj.h: Modify license to include
        modification in clause as permitted by DJ Delorie.
        * libc/machine/arm/access.c: Ditto.
        * libc/machine/i386/setjmp.S: Ditto.
        * libc/sys/h8300hms/sys/file.h: Ditto.
        * libc/sys/linux/machine/i386/setjmp.S: Ditto.
        * libc/sys/sysmec/access.c: Ditto.
        * libc/sys/sysnecv850/access.c: Ditto.
2012-03-09 20:26:39 +00:00
Jeff Johnston 52cbb05cfb 2012-03-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/posix/readdir_r.c: Fix return code when end of
        directory is reached.
2012-03-02 16:02:04 +00:00
Corinna Vinschen b680a27c6d * configure.host: Accept "arm*" host spec instead of just "arm". 2012-02-23 09:30:19 +00:00
Jeff Johnston 9edde1d2c4 2012-02-21 Jeremy Bennett <jeremy.bennett@embecosm.com>
Alan Lehotsky  <apl@alum.mit.edu>
            Joern Rennecke  <joern.rennecke@embecosm.com>

        * configure.host: Add Epiphany support.
        * libc/include/machine/ieeefp.h: Likewise.
        * libc/include/machine/setjmp.h: Likewise.
        * libc/machine/configure.in, libc/sys/configure.in: Likewise.
        * libc/machine/configure, libc/sys/configure: Regenerate.
        * libc/machine/epiphany, libc/sys/epiphany: New directories.
        * NEWS: Mention addition of Epiphany.
2012-02-21 22:34:31 +00:00
Christopher Faylor 2d192e1ebb * configure.host: Fix typo: xdir_dir -> xdr_dir. 2012-02-15 18:32:05 +00:00
Eric Blake 833630b859 * libc/include/_ansi.h (_ELIDABLE_INLINE): Fix C99 mode. 2012-02-09 19:58:33 +00:00
Corinna Vinschen e59d6a1469 * libc/sys/rtems/sys/utime.h: Include <sys/types.h> to provide a
definition of time_h.
2012-02-09 13:05:15 +00:00
Corinna Vinschen 21e4f66a72 Add missing file from previous checkin 2012-02-09 12:57:34 +00:00
Corinna Vinschen 3543a40d5c * libc/machine/arm/strcmp.S: New File.
* libc/machine/arm/strcmp.c: Deleted.
	* libc/machine/arm/Makefile.am: Replaces strcmp.c with strcmp.S
	* libc/machine/arm/Makefile.in: Regenerated.
	* testsuite/newlib.string/strcmp-1.c: New file.
2012-02-09 10:42:14 +00:00
Corinna Vinschen dd9ee39045 * libc/include/inttypes.h: Redefine pointer type macros. 2012-02-07 16:42:20 +00:00
Yaakov Selkowitz 29d84e5a46 * libc/stdio/sprintf.c: Document 'm' conversion specifier.
* libc/stdio/swprintf.c: Ditto.
	* libc/stdio/vfprintf.c (_VFPRINTF_R) [_GLIBC_EXTENSION]: Handle 'm'
	conversion specifier.
	* libc/stdio/vfwprintf.c (_VFWPRINTF_R) [_GLIBC_EXTENSION]: Ditto.
2012-01-13 09:13:57 +00:00
Yaakov Selkowitz 2af8babd93 * libc/include/tgmath.h: New header. 2012-01-12 11:19:31 +00:00
Yaakov Selkowitz 5ecc040cff * libc/include/sys/unistd.h [__CYGWIN__] (get_current_dir_name):
Declare.
2012-01-09 22:49:20 +00:00
Yaakov Selkowitz 3182cdfaf0 * libc/include/complex.h: Fix "/*" within comment warning. 2012-01-09 22:46:34 +00:00
Corinna Vinschen 4b4391b74d * libc/include/process.h: Remove Cygwin-only header. 2012-01-09 17:06:20 +00:00
Jeff Johnston 286625cf91 2012-01-03 Viachaslau Kulakouski <Viachaslau.Kulakouski@oracle.com>
* libc/stdlib/__atexit.c: Refer to __atexit_lock instead of lock.
2012-01-03 19:13:57 +00:00
Corinna Vinschen 87865f4c9a * fvwrite.c (__sfvwrite_r): Set __SMBF flag to avoid double free in
fclose.  Enhance comment.
2011-12-20 09:06:58 +00:00
Jeff Johnston e7c65aae83 2011-12-19 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.20.0 info.
        * README: Ditto.
        * acinclude.m4: Change version number to 1.20.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * Makefile.in: Regenerated.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.20
2011-12-19 22:03:51 +00:00
Jeff Johnston e480bc80c3 2011-12-13 Richard Earnshaw <rearnsha@arm.com>
Thomas Klein  <th.r.klein@web.de>

        * libc/sys/arm/crt0.S: Manually set the target architecture
        when compiling for Thumb1 on EABI targets.
        Don't use SWI on M-profile cores.
        Avoid v6-only Thumb-1 MOV instruction.
2011-12-13 22:40:45 +00:00
Corinna Vinschen 74e0bcfc0f * libc/time/strftime.c (get_era_info): Fix off-by-one error in month
calculation.
2011-12-12 10:48:29 +00:00
Corinna Vinschen a88d73b52b * libc/iconv/Makefile.am (stmp-def): Use $(MAKE) rather than make.
* libc/iconv/Makefile.in: Regenerate.
2011-12-06 10:45:05 +00:00
DJ Delorie d1fc77322f [libgloss]
* configure.in: Add rl78.
* configure: Regenerate.
* rl78: New directory

[newlib]
* configure.host: Add rl78.
* libc/include/machine/ieeefp.h: Add rl78 support.
* libc/include/machine/setjmp.h: Add rl78 support.
* libc/machine/configure.in: Add rl78.
* libc/machine/rl78: New directory.
2011-11-29 06:33:49 +00:00
Corinna Vinschen d84f3e29fb * libc/iconv/ccs/Makefile.am: Add missing backslash.
* libc/iconv/ccs/Makefile.in: Regenerate.
2011-11-08 15:46:42 +00:00
Nick Clifton d6f6573a5f * libc/machine/arm/Makefile.am (lib_a_SOURCES): Add memchr-stub.c,
memchr.S.
	* libc/machine/arm/arm_asm.h: Add ifdef to allow it to be included
	in .S files.
	* libc/machine/arm/memchr-stub.c: New file - just selects what to
	compile.
	* libc/machine/arm/memchr.S: New file - ARMv6t2/v7 version.

	* libc/machine/arm/Makefile.am (lib_a_SOURCES): Add strlen-armv7.S.
	* libc/machine/arm/strlen-armv7.S: New file.
	* libc/machine/arm/strlen.c: Add ifdef optimised code so it isn't
	for v7 or 6t2.

	* libc/machine/arm/Makefile.in: Regenerate.
2011-10-18 11:35:17 +00:00
Corinna Vinschen f13f2da4ee * libc/time/mktm_r.c: (__tzcalc_limits) Fix Julian day calculation.
* libc/time/mktime.c: (mktime) Fix tm_yday, tm_mday updating when
	timezone causes roll over.
2011-10-11 11:28:05 +00:00
Nick Clifton eefc33184a oops - fix typo in previous delta. 2011-10-11 09:29:56 +00:00
Nick Clifton fa5c739c6e oops - omitted from previous delta. 2011-10-11 07:38:33 +00:00
Nick Clifton f9a3814899 * libc/sys/arm/crt0.S: Synchronise with libgloss version.
* libc/sys/arm/arm.h: Imported from libgloss.
2011-10-10 13:00:25 +00:00
Jeff Johnston 5be9bb15b2 2011-10-04 Greta Yorsh <Greta.Yorsh@arm.com>
* testsuite/newlib.string/memcpy-1.c: New test.
2011-10-04 18:43:14 +00:00
Nick Clifton de0ae33544 * libc/machine/arm/memcpy.S: Fix unaligned access copying. 2011-10-04 16:02:25 +00:00
Nick Clifton 341bf73d6d * libc/machine/arm/memcpy.S: New file. Contains a hand coded
memcpy function optimized for the cortex-a15.
	* libc/machine/arm/memcpy-stub.c: New file.
	* libc/machine/arm/Makefile.am (lib_a_SOURCES): Add memcpy-stub.c,
	memcpy.S.
	* libc/machine/arm/Makefile.in: Regenerate.
2011-09-29 13:28:50 +00:00
Jeff Johnston c9925bf497 2011-09-08 Jeff Johnston <jjohnstn@redhat.com>
* testsuite/lib/flags.exp: Add logic to add the
        srcdir include directory to compile flags.
2011-09-08 16:18:23 +00:00
Corinna Vinschen 477215fe7d * libc/time/mktm_r.c (_mktm_r): Fix previous fix. 2011-08-26 07:23:42 +00:00
Corinna Vinschen c9e60624d3 * libc/time/mktm_r.c (_mktm_r): Fix computing tm_year. 2011-08-24 13:38:32 +00:00
Ralf Corsepius 1c5c40f638 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/stdlib/putenv_r.c: Use "strchr" instead of obsolete "index".
	* libc/stdlib/setenv_r.c: Use "memcpy" instead of obsolete "bcopy".
2011-08-23 12:03:55 +00:00
Ralf Corsepius da344d0ea9 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/misc/ffs.c, libc/string/bcmp.c, libc/string/bcopy.c,
	libc/string/bzero.c, libc/string/index.c, libc/string/rindex.c,
	libc/string/strcasecmp.c, libc/string/strncasecmp.c:
	Let synopsis reference "#include <strings.h>".
2011-08-23 12:01:51 +00:00
Ralf Corsepius 0792b19670 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/posix/regexec.c: Define "nope" only #ifndef NDEBUG.
	* libc/stdio/vfscanf.c: Define "state" only #ifdef _MB_CAPABLE.
	* libc/string/wcwidth.c: Include <wctypes.h> for "iswprint" and
	"iswcntrl".
2011-08-23 11:59:56 +00:00
Ralf Corsepius 74c92a62fe 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/sys/rtems/include/limits.h: Compute SSIZE_MAX based on
	__SIZE_MAX__, __SIZEOF_SIZE_T__ and __CHAR_BIT__.
2011-08-23 05:51:04 +00:00
Ralf Corsepius f3e873f250 2011-08-22 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/string/index.c: Include <strings.h> for "index".
	* libc/string/rindex.c: Include <strings.h> for "rindex".
	* libc/string/strcasecmp.c: Include <strings.h> for "strcasecmp".
	Don't include <string.h>.
	* libc/string/strncasecmp.c: Include <strings.h> for "strncasecmp".
	Don't include <string.h>.
	* libc/string/bzero.c: Include <strings.h> for "bzero".
	Don't include <string.h>
	* libc/misc/ffs.c: Include <strings.h> for "ffs".
	Don't include <_ansi.h>.
2011-08-22 16:49:37 +00:00
Ralf Corsepius fe9bdaedff 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/sys/rtems/crt0.c: Rework RTEMS_STUB macro.
	Include <unistd.h>.
	Remove C++-style comments.
	Remove hppa, a29k.
	Add clock_gettime, gettimeofday, sched_yield.
2011-08-20 05:34:22 +00:00
Ralf Corsepius 34dc27f95d 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/stdio/vasiprintf.c: Include "local.h" for "_svfiprintf_r".
	* libc/stdio/vasprintf.c Include "local.h" for "_svfprintf_r".
	* libc/stdio/vsiprintf.c: Include "local.h" for "_svfiprintf_r".
	* libc/stdio/vsniprintf.c: Include "local.h" for "_svfiprintf_r".
	* libc/stdio/vsnprintf.c: Include "local.h" for "_svfprintf_r"
	* libc/stdio/vsprintf.c: Include "local.h" for "_svfprintf_r"
2011-08-19 17:00:32 +00:00
Ralf Corsepius af8a9163c3 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/string/bcmp.c: Include <strings.h> for "bcmp".
	* libc/string/bcopy.c: Include <strings.h> for "bcopy".
	* libc/string/strcasestr.c: Include <strings.h> for "strncasecmp".
	* libc/time/strptime.c: Include <strings.h> for "strncasecmp".
2011-08-19 16:58:20 +00:00
Corinna Vinschen e8fdf15a75 * libc/include/process.h: Remove exec family function declarations.
Add comment.
	* libc/include/sys/unistd.h (execlpe): Declare for Cygwin.
2011-08-19 14:29:34 +00:00
Corinna Vinschen 6648762916 * libc/time/mktime.c (validate_structure): Account for tm_mon possibly
being given as negative.
	(mktime): Set tm_isdst=0 when !daylight.
2011-08-19 14:14:18 +00:00
Joel Sherrill 529aa781b6 2011-08-01 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/include/sys/types.h: XML and RTEMS define
	_UNIX98_THREAD_MUTEX_ATTRIBUTES and can use the standard
	definitions. This avoids redefinition warnings.
2011-08-01 17:22:18 +00:00
Ralf Corsepius bce7e6e2a7 * ChangeLog: Fix my name's spelling. 2011-07-26 04:42:06 +00:00
Ralf Corsepius ce108cc83c 2011-07-26 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/sys/rtems/sys/dirent.h (scandir):
	Add const to "select" parameter.
2011-07-26 04:04:45 +00:00
Ralf Corsepius 7d4b10de81 2011-07-25 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/iconv/iconv.tex: Rename node "Introduction" into
	"Introduction to iconv".
2011-07-25 12:41:38 +00:00
Yaakov Selkowitz 792c8bcff2 * libc/include/time.h [_POSIX_CLOCK_SELECTION] (clock_nanosleep):
Declare.
* libc/include/sys/features.h [__CYGWIN__] (_POSIX_CLOCK_SELECTION):
Define.
2011-07-20 19:41:15 +00:00
Yaakov Selkowitz 00900ab098 * libc/include/sys/unistd.h (_CS_XBS5_WIDTH_RESTRICTED_ENVS): Define.
(_CS_V6_ENV): Fix definition.
2011-07-20 01:14:50 +00:00
Corinna Vinschen dfbfc68a5b * libc/locale/lmessages.c (_C_messages_locale):
Move __HAVE_LOCALE_INFO_EXTENDED__ before codeset.
2011-07-19 19:24:45 +00:00
Corinna Vinschen c9c2b42229 * libc/reent/sbrkr.c: Define _sbrk_r independently of the definition
of MALLOC_PROVIDED.
2011-07-19 07:23:09 +00:00
Jeff Johnston 7890be6e7d 2011-07-15 Yufeng Zhang <yufeng.zhang@arm.com>
* libc/stdio/vfwprintf.c (wcvt): Add a new parameter len of type
        int.  *length is set to the value of (rev - digits) regardless
        of whether _MB_CAPABLE is defined or not.  Replace BUF with len
        in calling _mbsnrtowcs_r and also in the loop where _MB_CAPABLE
        is not defined.
        (_VFWPRINTF_R): Call wcvt with an extra argument.  Call wcvt
        again with allocated new buffer if buf is not large enough for
        the conversion.
        * testsuite/newlib.stdio/stdio.exp: New.
        * testsuite/newlib.stdio/swprintf.c: Likewise.
2011-07-15 17:20:16 +00:00
Corinna Vinschen c842ff73e7 * libc/stdio/fscanf.c (fscanf): Call _vfscanf_r instead of __svfscanf_r
to make sure CHECK_INIT is called.
	(_fscanf_r): Ditto.
	* /libc/stdio/scanf.c (scanf): Ditto.
	(_scanf_r): Ditto.
	* libc/stdio/fwscanf.c (fwscanf): Call _vfwscanf_r instead of
	__svfwscanf_r to make sure CHECK_INIT is called.
	(_fwscanf_r): Ditto.
	* libc/stdio/wscanf.c (wscanf): Ditto.
	(_wscanf_r): Ditto.
2011-07-15 08:04:17 +00:00
Corinna Vinschen 1d15e018c7 * libm/complex/cacos.c: Use temporaries and correct sequencing
error in previous reordering change.
2011-07-13 07:18:54 +00:00
Corinna Vinschen 7e055fdf39 * libc/time/mktime.c (mktime): Lock global timezone info while
accessing it.
2011-06-27 10:13:11 +00:00
Corinna Vinschen aee3f8fb6f * libc/time/asctime_r.c (asctime_r): Replace call to sprintf with call
to siprintf.
	* libc/time/strftime.c: Define snprintf to sniprintf in multibyte case.
	* libc/time/tzset_r.c: Define sscanf to siscanf.
2011-06-14 14:31:59 +00:00
Joseph Myers 25fa7e5ad6 libgloss:
* configure.in: Don't handle strongarm, ep9312 and xscale target
	names.
	* configure: Regenerate.
	* libnosys/configure.in: Don't handle strongarm and thumb target
	names.
	* libnosys/configure: Regenerate.

newlib:
	* configure.host: Don't handle ep9312, strongarm, xscale and thumb
	target names.
	* libc/machine/configure.in: Don't handle xscale target names.
	* libc/machine/configure: Regenerate.
2011-06-14 13:40:48 +00:00
Corinna Vinschen 9bc99decb7 * libc/time/tzset_r.c (tzset_r): Correct behavior for changing from
non-GMT to GMT, when un-setting TZ.  Set _timezone and _daylight even
	if no DST is given in TZ.
2011-06-14 07:50:40 +00:00
Eric Blake 4226571d7a printf: set errno for read-only stream
* libc/stdio/wsetup.c (__swsetup_r): Set errno on failure.
* libc/stdio/fvwrite.c (__sfvwrite_r): Simplify.
* libc/stdio/wbuf.c (__swbuf_r): Likewise.
* libc/stdio/local.h (cantwrite): Adjust comment.
2011-06-14 03:56:05 +00:00
Jeff Johnston 38e356f0e4 2011-06-09 Yaakov Selkowitz <yselkowitz@...>
* libc/include/string.h (strdupa): New macro function.
        (strndupa): New macro function.
2011-06-10 18:30:38 +00:00
Nick Clifton 747a0a5205 * v8500/sbrk.c (_sbrk): Tidy code.
Base start of heap on the "heap_start" symbol.

	* libc/sys/sysnecv850/sbrk.c (_sbrk): Tidy code.
	Base start of heap on the "heap_start" symbol.
2011-05-27 10:46:48 +00:00
Eric Blake d644e79f34 fix changelog typo 2011-05-25 21:32:26 +00:00
Eric Blake c65167c86e * libc/string/strerror.c (_strerror_r): Report "Success" for 0. 2011-05-25 21:05:11 +00:00
Eric Blake 4805b60ccf strerror: allow user hook to comply with POSIX rules
* libc/string/strerror.c (strerror): Split body into...
(_strerror_r): ...new reentrant function.
* libc/string/u_strerr.c (_user_strerror): Update signature.
* libc/include/stdio.h (_strerror_r): New prototype.
* libc/posix/collate.c (__collate_err): Adjust callers.
* libc/stdio/perror.c (_perror_r): Likewise.
* libc/string/strerror_r.c (strerror_r): Likewise.
* libc/string/xpg_strerror_r.c (__xpg_strerror_r): Likewise.
2011-05-25 18:41:10 +00:00
Yaakov Selkowitz 831826db94 * libc/include/stdio_ext.h: New header.
* libc/stdio/fpurge.c [!__rtems__] (__fpurge): New function.
2011-05-19 07:21:42 +00:00
Corinna Vinschen 503ff5adc1 * Makefile.am (install-data-local): Fix condition and rm call.
* Makefile.in: Regenerate.
2011-05-19 06:04:59 +00:00
Yaakov Selkowitz 64a5e8a9a3 * libc/include/time.h (CLOCK_PROCESS_CPUTIME_ID): Rename from
CLOCK_PROCESS_CPUTIME.
(CLOCK_THREAD_CPUTIME_ID): Rename from CLOCK_THREAD_CPUTIME.
* libc/include/sys/features.h [__CYGWIN__] (_POSIX_CPUTIME): Define.
(_POSIX_THREAD_CPUTIME): Define.
2011-05-16 22:35:10 +00:00
Corinna Vinschen f783f223cb * libc/stdlib/strtod.c (_strtod_r): Fix nf/nd counts to not exceed
DBL_DIG.
2011-05-16 13:34:06 +00:00
Corinna Vinschen aaded2f90e * libc/include/sys/features.h (_POSIX_THREAD_ATTR_STACKADDR): Define
to 200112L for Cygwin.
2011-05-15 18:50:52 +00:00
Corinna Vinschen 4d1bf2fbb8 * libc/time/strptime.c (strptime): Fill in tm_yday when all of tm_year,
tm_mon and tm_mday are updated. Fill in tm_mon, tm_mday and tm_wday
	when both of tm_year and tm_yday are updated.
2011-05-12 13:41:22 +00:00
Corinna Vinschen 7bb76e751b * libc/time/strptime.c (first_day): Actually return the wday
of the first day of the year.
2011-05-12 12:43:43 +00:00
Corinna Vinschen 94335e0842 * libc/locale/lmessages.c (_C_messages_locale): Add missing comma. 2011-05-10 16:37:14 +00:00
Yaakov Selkowitz 307b0a5d4b * libc/include/signal.h (psignal): Declare.
* libc/sys/linux/psignal.c: Move from here...
* libc/signal/psignal.c: ... to here. Document.
* libc/sys/linux/Makefile.am (GENERAL_SOURCES): Move psignal.c from here...
* libc/signal/Makefile.am (LIB_SOURCES): ... to here.
(CHEWOUT_FILES): Add psignal.def.
* libc/sys/linux/Makefile.in: Regenerate.
* libc/signal/Makefile.in: Ditto.
* libc/signal/signal.tex: Add references to psignal.
2011-05-04 11:26:22 +00:00
Corinna Vinschen f737a4edba * libc/locale/lmessages.h (__messages_load_locale): Declare. Remove
accidental declaration of __numeric_load_locale.
	* libc/locale/locale.c: Include timelocal.h to get declaration of
	__time_load_locale.
	(__set_locale_from_locale_alias): Fix return type.
	(__locale_msgcharset): Avoid compiler warnings.
	(_localeconv_r): Ditto.
2011-05-04 08:54:34 +00:00
Corinna Vinschen 6e16da9dec Cygwin-specific patch from Andy Koppe:
* libc/locale/locale.c (current_categories): On Cygwin, set LC_CTYPE
	to C.UTF-8 to match initial __wctomb and __mbtowc settings.
	(lc_ctype_charset): On Cygwin, initialize to "UTF-8".
	(loadlocale): Remove unused Cygwin-specifc code.
2011-05-04 08:45:17 +00:00
Yaakov Selkowitz 5f555b0bd3 * libc/include/sys/features.h [__CYGWIN__] (_POSIX_SPIN_LOCKS): Define.
* libc/include/sys/types.h: Cygwin provides its own pthread_spinlock_t
typedef.
2011-05-02 16:05:06 +00:00
Corinna Vinschen 060e5c9785 * libc/include/sys/signal.h (_sig_func_ptr): Define with int parameter
per POSIX.  Explain in comment.
2011-04-19 08:02:59 +00:00
Eric Blake 0fbf39cc9f strchrnul: avoid segv
* libc/string/strchrnul.c (strchrnul): Fix strchrnul.
2011-04-15 20:26:05 +00:00
Corinna Vinschen cb840afddf Check in strchrnul.c file missing in previous checkin 2011-03-28 14:52:17 +00:00
Corinna Vinschen 43ff4129ce * libc/include/string.h (strchrnul): Declare.
* libc/string/strchrnul.c: New file.
	* libc/string/Makefile.am (ELIX_2_SOURCES): Add strchrnul.c.
	* libc/string/Makefile.in: Regenerate.
2011-03-28 14:51:28 +00:00
Nick Clifton bf77fa00b7 * libc/machine/frv/setjmp.S: Fix typo in .size directive. 2011-03-23 11:01:05 +00:00
Kevin Buettner 3b60b701b1 * libc/sys/sysnecv850/trap.S (___trap0): Fix errno handling.
* libc/sys/sysnecv850/rename.c: New file.
	* libc/sys/sysnecv850/Makefile.am (lib_a_SOURCES): Add rename.c
	* libc/sys/sysnecv850/Makefile.in: Regenerate.
	* libc/sys/sysnecv850/fstat.c (_fstat): Invoke trap for SYS_fstat.
	* libc/sys/sysnecv850/unlink.c (_unlink): Invoke trap for SYS_unlink.
2011-03-21 22:11:14 +00:00
Corinna Vinschen 4b43b20be8 * libc/include/string.h: Include sys/cdefs.h. 2011-03-03 11:11:41 +00:00
Corinna Vinschen 977cd4175e * libc/include/sys/cdefs.h (__CONCAT1): Define.
(__CONCAT): Define.
	(__STRING): Define.
	(__XSTRING): Define.
	(__ASMNAME): Define.
	* libc/include/string.h (strerror_r): Use __ASMNAME to take target
	specific label prefixes into account.
2011-03-03 10:37:09 +00:00
Jeff Johnston 127c3221cd 2011-03-01 Aaron Landwehr <snaphat@gmail.com>
* libm/complex/cproj.c: Fix typo.
        * libm/complex/cprojf.c: Ditto.
2011-03-01 21:43:15 +00:00
Corinna Vinschen d9db1bc555 * libc/stdio/fmemopen.c (fmemopen): Fix EINVAL condition. Avoid SEGV
if incoming buffer is NULL.
2011-02-22 15:38:14 +00:00
Eric Blake 7c10a76dec strerror_r: provide POSIX implementation
* libc/include/string.h (strerror_r): Update declaration.
* libc/string/strerror.c (strerror): Update documentation.
* libc/string/strerror_r.c (strerror_r): Always return
NUL-terminated string; don't overwrite too-short buf.
* libc/string/xpg_strerror_r.c (__xpg_strerror_r): Implement POSIX
variant.
* libc/string/Makefile.am (GENERAL_SOURCES): Build new file.
* libc/string/Makefile.in: Regenerate.
2011-02-10 16:48:18 +00:00
Corinna Vinschen c3099d3d42 Fix path in ChangeLog entry 2011-02-07 11:36:04 +00:00
Jeff Johnston 42583e8a0b Fix spelling of Ralf Corsepius' name in ChangeLog. 2011-02-03 22:25:04 +00:00
Corinna Vinschen 656df313e0 * libc/stdio/fclose.c: Only use sfp lock to guard non-atomic
changes of flags and fp lock.
	* libc/stdio/freopen.c: Ditto.
	* libc/stdio/freopen64.c: Ditto.
	* libc/stdio/fgetc.c: Revert change from 2009-04-24, remove sfp locks
	which guard entire function to avoid potential deadlocks when using
	stdio functions in multiple thraeds.
	* libc/stdio/fgets.c: Ditto.
	* libc/stdio/fgetwc.c: Ditto.
	* libc/stdio/fgetws.c: Ditto.
	* libc/stdio/fread.c: Ditto.
	* libc/stdio/fseek.c: Ditto.
	* libc/stdio/getc.c: Ditto.
	* libc/stdio/getdelim.c: Ditto.
	* libc/stdio/gets.c: Ditto.
	* libc/stdio/vfscanf.c: Ditto.
	* libc/stdio/vfwscanf.c: Ditto.

	* libc/stdio/fflush.c (_fflush_r): Split out core functionality into
	new function __sflush_r.  Just lock file and call __sflush_r from here.
	* libc/stdio/fwalk.c (_fwalk): Remove static helper function and move
	functionality back into main function. Don't walk a file with flags
	value of 1.  Add comment.
	(_fwalk_reent): Ditto.
	* libc/stdio/local.h (__sflush_r): Declare.
	* libc/stdio/refill.c (__srefill): Before calling fwalk, set flags
	value to 1 so this file pointer isn't walked.  Revert flags afterwards
	and call __sflush_r for this fp if necessary.  Add comments.
2011-01-28 10:49:11 +00:00
Corinna Vinschen 7cc6d7cfc6 * libc/include/sys/features.h: Define __STDC_ISO_10646__ for Cygwin.
* libc/include/wchar.h: Include features.h.
2011-01-27 11:55:01 +00:00
Corinna Vinschen d6d9c269e4 * libc/include/sys/types.h (ulong): Add typedef. 2011-01-15 09:26:16 +00:00
Corinna Vinschen 5bc054170e Fix ChangeLog entry 2011-01-13 11:28:14 +00:00
Jeff Johnston 47235a60ab 2011-01-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* libm/math/w_tgamma.c: Only build ifndef _DOUBLE_IS_32BITS.
        * libm/math/wf_tgamma.c: Map tgamma to tgammaf, ifdef _DOUBLE_IS_32BITS.
2011-01-12 22:25:15 +00:00
Jeff Johnston 0597fe0adc 2011-01-12 Jeff Johnston <jjohnstn@redhat.com>
* configure.host: Add noinclude variable to allow specification
        of header files to remove from installation.
        * acinclude.m4: Provide NO_INCLUDE_LIST variable based on
        noinclude variable in configure.host.
        * configure: Regenerated.
        * Makefile.am: Remove all header files in NO_INCLUDE_LIST.
        * Makefile.in: Regenerated.
2011-01-12 22:24:06 +00:00
Corinna Vinschen 7971c2a29c * libc/include/linux/sys/signal.h (sig_t): Move from here...
* libc/include/signal.h (sig_t): ...to here.
2011-01-12 11:49:28 +00:00
Corinna Vinschen 1991358fe5 * libc/machine/mips/strlen.c (strlen): Add delay slot for R3000. 2011-01-10 12:11:55 +00:00
Corinna Vinschen 33cdc2a420 Fix date 2011-01-10 12:10:18 +00:00
Corinna Vinschen 84ca64afa6 * libc/include/string.h: Make strsignal() available unconditionally. 2011-01-10 10:59:42 +00:00
Jeff Johnston a81dfe76fe 2011-01-07 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/sys/rtems/crt0.c: Adjust free() and calloc() to match their
        public decls.
2011-01-07 19:27:33 +00:00
Jeff Johnston ebb0c523d7 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Move cleaning targ-include to clean-local.
        * Makefile.in: Regenerate.
2011-01-05 22:48:56 +00:00
Jeff Johnston c0e3c29150 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/stdio/open_memstream.c (internal_open_memstream_r):
        Don't limit c->max to 64*1024 on targets with SIZE_MAX < 64*1024.
2011-01-05 17:38:42 +00:00
Jeff Johnston f559c264a9 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/xdr/xdr.c: Fix typos in #errors.
2011-01-05 17:23:01 +00:00
Jeff Johnston 973929f99e 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/xdr/xdr_private.h: Include <stdint.h>
        * libc/xdr/xdr_rec.c: Include limits.h
2011-01-05 17:21:23 +00:00
Jeff Johnston a8b560b15d 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/Makefile.am (SUBDEFS): Remove redundant posix/stmp-def.
        * libc/Makefile.in: Regenerate.
2011-01-05 17:18:16 +00:00
Jeff Johnston c35ba525fc 2011-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/configure.in: Remove redundant posix_dir processing.
        * libc/configure: Regenerate.
2011-01-05 17:13:24 +00:00
Michael Frysinger af7c827ae9 fix typo in Corinna Vinschen's e-mail address 2010-12-31 05:29:36 +00:00
Christopher Faylor 589e430baa cygwin:
* cygwin.din: Export program_invocation_name and
	program_invocation_short_name.
	* dcrt0.cc: Set program_invocation*name to correct values, based on
	argv[0].
	* globals.cc (program_invocation_name): Define.
	(program_invocation_short_name): Ditto
newlib:
	* libc/include/sys/errno.h (program_invocation_name): Declare.
	(program_invocation_short_name): Ditto.
2010-12-26 21:11:38 +00:00
Jeff Johnston 321b046c80 2010-12-16 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.19.0 info.
        * README: Ditto.
        * MAINTAINERS: Update.
        * acinclude.m4: Change version number to 1.19.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * Makefile.am: Fix stmp-targ-include target.
        * Makefile.in: Regenerated.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.19
2010-12-16 21:59:17 +00:00
Jeff Johnston 8d73754622 2010-12-14 Jeff Johnston <jjohnstn@redhat.com>
* Makefile.am: Add support to copy all sub-directories of the
        sys/SYS_DIR/include directory, if they contain header files.
        * Makefile.in: Regenerated.
2010-12-14 22:35:27 +00:00
Jeff Johnston 23dbdc2aaa 2010-12-08 Jeff Johnston <jjohnstn@redhat.com>
* libm/mathfp/sf_logarithm.c: Change isfinitef reference to isfinite.
2010-12-08 23:22:20 +00:00
Corinna Vinschen f8afe40f49 * include/sys/types.h: Add #if defined(__rtems__) around
pthread_attr_t.guardsize.

	* include/pthread.h: Add pthread_attr_setstack, pthread_attr_getstack,
	pthread_attr_getguardsize, pthread_attr_setguardsize.
	* include/sys/types.h (pthread_attr_t): Add guardsize.
2010-12-08 14:44:06 +00:00
Corinna Vinschen a406e79b02 * libc/include/strings.h: Don't include locale.h. 2010-12-08 10:28:40 +00:00
Eric Blake 1dfc6c9535 strings.h: avoid namespace pollution
* libc/include/strings.h: Don't declare removed functions when
requesting POSIX 2008 compliance.
2010-12-08 02:47:14 +00:00
Jeff Johnston bbb052381b Fix formatting. 2010-12-07 21:27:45 +00:00
Jeff Johnston c317cb34b1 2010-12-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/strtod.c(_strtod_r): Fix code to handle case whereby
        _DOUBLE_IS_32BITS is set and DBL_DIGS is 6 instead of 15.
2010-12-07 21:26:45 +00:00
Jeff Johnston 1d1dde068c 2010-12-07 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/include/strings.h: New (split-out from string.h).
2010-12-07 17:31:26 +00:00
Corinna Vinschen fd4515030c * libc/include/math.h: Missing from previous checkin. 2010-12-03 16:08:48 +00:00
Jeff Johnston 8d3c10d72b 2010-12-02 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_log2.c:  Change from using M_LOG2_E to M_LN2 define
        (from math.h--the latter is POSIX, the former non-standard).
        * libm/common/sf_log2.c:  Ditto.  Change cast for M_LN2 from float to
        float_t (in case all math not done in float).
        * libc/include/math.h:  Ditto (same 2 things as sf_log2.c).
2010-12-02 19:57:43 +00:00
Jeff Johnston 874a87f8cd 2010-12-02 Jayant Sonar jayant.sonar@kpitcummins.com
Kaushik Phatak  kaushik.phatak@kpitcummins.com

        * configure.host: Add CR16 support.
        * libc/include/machine/ieeefp.h: Ditto.
        * libc/include/machine/setjmp.h: Ditto.
        * libc/include/sys/config.h: Ditto.
        * libc/machine/configure.in: Ditto
        * libc/machine/configure: Regenerated
        * libc/machine/cr16/aclocal.m4: New.
        * libc/machine/cr16/configure.in: New
        * libc/machine/cr16/configure: New
        * libc/machine/cr16/getenv.c: New
        * libc/machine/cr16/Makefile.am: New
        * libc/machine/cr16/Makefile.in: New
        * libc/machine/cr16/setjmp.S: New
        * libc/machine/cr16/sys/asm.h: New
        * libc/machine/cr16/sys/libh.h: New
        * libc/machine/cr16/sys/syscall.h: New
2010-12-02 19:30:47 +00:00
Corinna Vinschen 371a9496e8 * libm/complex/catan.c, libm/complex/catanf.c,
libm/complex/ctan.c, libm/complex/ctanf.c:
	Use HUGE_VAL instead of MAXNUM.
2010-11-29 12:15:02 +00:00
Corinna Vinschen abc9278b2d * libm/complex/cargf.c: Use crealf instead of creal. 2010-11-26 08:59:22 +00:00
Corinna Vinschen ce386bafb7 * libc/locale/locale.c (loadlocale): Recognise the "cjknarrow"
modifier on "C.<charset>" locales too.
2010-11-19 10:02:36 +00:00
Corinna Vinschen 617dc68bfe * libc/locale/locale.c (loadlocale): Fix width of CJK ambigous
characters to 1 for singlebyte charsets and 2 for non-Unicode
	multibyte charsets. Change documentation accordingly.
2010-11-18 11:02:53 +00:00
Jeff Johnston f8ff5e47b6 2010-11-17 Bernd Schmidt <bernds@codesourcery.com>
* configure.host (newlib_cflags): For tic6x, add -DCLOCK_PROVIDED.
2010-11-17 21:44:57 +00:00
Corinna Vinschen 2988dfa72b * libc/machine/i386/setjmp.S (longjmp): Per POSIX, return 1 if second
argument is 0.
2010-11-16 17:52:21 +00:00
Corinna Vinschen f43dea8084 * libc/include/sys/types.h: Add _mode_t for __rtems__.
* libc/sys/rtems/machine/_types.h: Provide _mode_t, _fpos_t, _off_t.
	Add _ssize_t for 64bit sparc.
	Let arm, i386, m68k, mips, PPC, sparc use 64bit _off_t, _fpos_t.
2010-11-16 17:29:39 +00:00
Corinna Vinschen 4a20b7de18 * configure.host: Add -D_COMPILING_NEWLIB to newlib_cflags. 2010-11-16 17:14:11 +00:00
Jeff Johnston d39e3a1edc 2010-11-04 Ralf Corsépius <ralf.corsepius@rtems.org>
* libm/complex/cacos.c: Reorder function calls to work around ICE
        in arm/thumb-gcc.
2010-11-04 18:27:13 +00:00
Jeff Johnston 9ef039777b 2010-10-27 Maurice Baijens <maurice.baijens@ellips.nl>
* libc/stdlib/strtol.c: Make sure signed characters are not
        sign-extended when converted to int and passed to ctype macros.
        * libc/stdlib/strtoul.c: Ditto.
        * libc/stdlib/strtoll_r.c: Ditto.
        * libc/stdlib/strtoull_r.c: Ditto.
2010-10-27 19:06:10 +00:00
Jeff Johnston bf5300eaee 2010-10-18 Marco Atzeri <marco_atzeri@yahoo.it>
* libm/Makefile.am: added complex functions documentation
        * libm/libm.texinfo: ditto
        * libm/complex/Makefile.am: Ditto
        * libm/complex/complex.tex: Ditto
        * libm/complex/(cabs.c, cacos.c, cacosh.c, carg.c,
        casin.c, casinh.c, catan.c, catanh.c, ccos.c, ccosh.c,
        cexp.c, cimag.c, clog.c, conj.c, cpow.c, cproj.c, creal.c,
        csin.c, csinh.c, csqrt.c, ctan.c, ctanh.c): Ditto
        * libm/Makefile.in: Regenerate
        * libm/complex/Makefile.in: Ditto
2010-10-18 22:40:24 +00:00
Jeff Johnston 9f2ecfff1c 2010-10-14 Craig Howland <howland@LGSInnovations.com>
* libc/include/math.h:  Delete cabs() and cabs() prototypes
        (c.f. 2010-10-08 change by Corinna).
2010-10-14 20:14:33 +00:00
Jeff Johnston 1571d0a51f 2010-10-08 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers  <joseph@codesourcery.com>

        * configure.host: Handle tic6x targets.
        * libc/include/machine/ieeefp.h: Define endianness for C6X.
        * libc/include/machine/setjmp.h: Add __TMS320C6X__ case.
        * libc/machine/configure.in: Handle tic6x targets.
        * libc/machine/configure: Regenerate.
        * libc/machine/tic6x/Makefile.am, libc/machine/tic6x/configure.in,
        libc/machine/tic6x/setjmp.S: New.
        * libc/machine/tic6x/Makefile.in, libc/machine/tic6x/aclocal.m4,
        libc/machine/tic6x/configure: New (generated).
2010-10-09 02:33:30 +00:00
Corinna Vinschen 339814ba6f * libc/include/sys/unistd.h: Declare getsid, setegid, seteuid for RTEMS. 2010-10-08 15:28:49 +00:00
Corinna Vinschen 98b2b9cf57 * libm/common/sf_llrint.c, libm/common/sf_round.c: Add explicit casts
to __uint32_t to avoid overflows on implicit casts.
2010-10-08 15:24:56 +00:00
Corinna Vinschen a26a5332da * libm/complex/complex.tex: Add empty stub. 2010-10-08 15:01:14 +00:00
Corinna Vinschen 421648d31c * libm/math/w_cabs.c: Delete.
* libm/math/wf_cabs.c: Delete.
	* libm/math/Makefile.am (src): Remove w_cabs.c.
	(fsrc): Remove wf_cabs.c.
	* libm/math/Makefile.in: Regenerate.
2010-10-08 10:49:28 +00:00
Corinna Vinschen 5af2a793bc * libc/include/complex.h: New complex header.
* libm/common/fdlibm.h: Added ifdef _COMPLEX_H.
	* libm/complex/*: New complex functions imported from NetBSD.
	* libm/Makefile.am: Added complex subdir.
	* libm/Makefile.in: Regenerate.
	* libm/configure.in: Added complex subdir.
	* libm/configure: Regenerate.
2010-10-08 10:35:14 +00:00
Corinna Vinschen c725984f70 * lib/str-two-way.h (two_way_long_needle): Avoid bug with long
periodic needle having false positive.  Affects memmem, strstr,
	strcasestr.
2010-10-06 09:29:35 +00:00
Jeff Johnston 60376287eb 2010-09-21 Craig Howland <howland@LGSInnovations.com>
* libc/string/memcpy.c: Do not assign size_t parameter to int.
        Use parameter directly, instead.
        * libc/string/memccpy.c:  Likewise.
        * libc/string/mempcpy.c:  Likewise.
        * libc/string/memmove.c:  Likewise.
2010-09-22 03:15:07 +00:00
Kevin Buettner f859880a5b Fix typo in my most recent ChangeLog entry. Regenerated file is
Makefile.in, not Makefile.
2010-09-14 17:09:41 +00:00
Kevin Buettner b88e4203a9 * libc/sys/sysnecv850/Makefile.am (lib_a_SOURCES): Provide an
empty definition.
	* libc/sys/sysnecv850/Makefile: Regenerate.
2010-09-09 14:54:24 +00:00
Corinna Vinschen 04c82a9ba0 * libc/posix/opendir.c (opendir): Fix potential memory leak. 2010-08-25 10:44:47 +00:00
Yaakov Selkowitz 7aba919b5e * libc/include/sys/dir.h: New BSD-compatibility header. 2010-08-11 18:14:54 +00:00
Corinna Vinschen f717289618 * libc/include/sys/features.h: Define _POSIX_MONOTONIC_CLOCK for Cygwin. 2010-08-09 08:29:22 +00:00
Corinna Vinschen f627504e6b * libc/include/sys/stat.h: Move all POSIX-defined symbolic constants
out of `#ifndef _POSIX_SOURCE' guard.
2010-08-06 18:26:21 +00:00
Jeff Johnston 0de7cf04f3 2010-08-03 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_lrint.c (lrint):  Annotate shift operations with
        possible shift amount ranges, and use SAFE_RIGHT_SHIFT to avoid
        undefined behaviour.
        * libm/common/s_llrint.c (llrint):  Likewise.
        * libm/common/s_lround.c (lround):  Correct some comments on ranges.
        * libm/common/s_llround.c (llround):  Likewise.
2010-08-03 18:21:20 +00:00
Anthony Green 5a7e00a866 Add moxie-rtems support. 2010-07-30 07:40:26 +00:00
Jeff Johnston d95769ebd6 2010-07-23 Naveen.H.S <naveenh1@kpitcummins.com>
Gina Verlekar <gina.verlekar@kpitcummins.com>

        * configure.host: Compact v850* support and add
        check for newlib_may_supply_syscalls.
        * libc/sys/sysnecv850/Makefile.am: Add support for
        '--disable-newlib-supplied-syscalls' option.
        * libc/sys/sysnecv850/Makefile.in: Regenerated.
2010-07-23 18:11:27 +00:00
Dave Korn e561d3e77e * libm/common/fdlibm.h (SAFE_LEFT_SHIFT): New macro definition.
(SAFE_RIGHT_SHIFT): Likewise.
	* libm/common/s_llround.c (llround): Annotate shift operations with
	possible shift amount ranges, and use SAFE_RIGHT_SHIFT to avoid
	undefined behaviour.
	* libm/common/s_lround.c (lround): Likewise.
2010-07-20 01:33:05 +00:00
Eric Blake 8092f46770 Add mkostemp and mkostemps.
* libc/stdio/mktemp.c (_gettemp): Add parameter, all callers
changed.
(mkostemp, _mkostemp_r, mkostemps, _mkostemps_r): New interfaces,
for ELIX level 4.
* libc/include/stdlib.h (mktemp): Avoid namespace issues.
(mkostemp, mkostemps): Declare.
2010-07-19 18:21:11 +00:00
Corinna Vinschen 3f45333072 * libc/include/signal.h (sighandler_t): Only define if _POSIX_SOURCE
is undefined.
2010-07-13 11:18:55 +00:00
Corinna Vinschen efc428827b * libc/posix/rewinddir.c (rewinddir): Remove incorrect cast to off_t.
* libc/sys/rtems/sys/dirent.h (_seekdir): Add prototype.
	* libc/sys/linux/sys/dirent.h (_seekdir): Fix prototype to use long
	rather than off_t.
2010-07-06 15:23:27 +00:00
Corinna Vinschen deb427382c Fix email address 2010-07-01 19:04:28 +00:00
Corinna Vinschen 723bf6ef39 * libc/include/signal.h (sighandler_t): Add typedef. 2010-07-01 08:50:17 +00:00
Corinna Vinschen ca56076ae2 2010-06-29 Antony King <antony.king@sr.com>
* libc/ctype/ctype_.c (__ctype_ptr): Reinstate definition (guarded by
	_NEED_OLD_CTYPE_PTR_DEFINITION) for backwards compatibility with newlib
	1.16.0 and earlier.

2010-06-28  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>

	* libc/include/sys/stat.h: Add ACCESSPERMS, ALLPERMS, and DEFFILEMODE.
2010-07-01 08:45:52 +00:00
Jeff Johnston ce3b386964 2010-06-18 Pavel Pisa <ppisa4lists@pikron.com>
* libc/include/machine/ieeefp.h[__arm__][!__VFP_FP__]: Set to
        __IEEE_BIG_ENDIAN and set __IEEE_BYTES_LITTLE_ENDIAN appropriately
        based on __ARMEL flag.
        * libc/include/machine/endian.h: To set byte order to LITTLE_ENDIAN,
        check for __IEEE_LITTLE_ENDIAN or __IEEE_BYTES_LITTLE_ENDIAN.
2010-06-18 16:26:25 +00:00
Kazu Hirata 492efa069b * libc/include/sys/reent.h (_reent): Adjust _REENT_SMALL to be
binary compatible with normal layout.
	(_REENT_INIT): Adjust to match struct layout.
2010-06-09 15:15:35 +00:00
Jeff Johnston b5efabb284 2010-06-08 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/wordexp.h: Add __cplusplus wrapper.
2010-06-08 21:47:57 +00:00
Jeff Johnston 58d6976a6e 2010-06-08 Jeff Johnston <jjohnstn@redhat.com>
* configure.in: Add test for enable-newlib-register-fini
        to set the _WANT_REGISTER_FINI flag.
        * configure: Regenerated.
        * Makefile.in: Ditto.
        * newlib.hin: Add _WANT_REGISTER_FINI flag.
        * libc/stdlib/__call_atexit.c: Add test for
        _WANT_REGISTER_FINI to enable the register_fini function.
2010-06-08 18:44:14 +00:00
Jeff Johnston ced5f59df9 2010-06-04 Mark Mitchell <mark@codesourcery.com>
* libc/stdlib/__call_atexit.c (__libc_fini): Declare.
        (register_fini): New function.
        * libc/misc/init.c (_fini): Remove.
        (__libc_fini_array): Likewise.
        * libc/misc/fini.c: New file.
        * libc/misc/Makefile.am (LIB_SOURCES): Add fini.c.
        * libc/misc/Makefile.in: Regenerate.
2010-06-04 15:30:40 +00:00
Jeff Johnston 4f5feab5ea 2010-05-31 Kazu Hirata <kazu@codesourcery.com>
* libc/stdlib/mallocr.c (malloc_extend_top): Backport the
        difference between versions 2.6.4 and 2.6.5.
2010-05-31 19:15:41 +00:00
Christopher Faylor 8f01c77516 * libc/string/strsignal.c (strsignal): Avoid duplicate case statement where
SIGPWR == SIGLOST.
2010-05-18 14:52:38 +00:00
Jeff Johnston ca52bf1705 2010-05-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/__call_atexit.c: Fix lock to be of type
        _LOCK_RECURSIVE_T as recursive usage is needed.
2010-05-11 20:41:37 +00:00
Jeff Johnston 60bdafbbda 2010-05-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/locale/locale.c (loadlocale): Fix dangling
        switch statement caused by __HAVE_LOCALE_INFO__ not being
        defined.
2010-05-11 20:40:14 +00:00
Jeff Johnston eb2c2b6e6e 2010-05-11 Joel Sherrill <joel.sherrill@oarcorp.com>
* libc/string/strsignal.c: New file.
        * libc/string/Makefile.am: Add support for strsignal.
        * libc/string/strings.tex: Ditto.
        * libc/string/Makefile.in: Regenerated.
2010-05-11 20:27:20 +00:00
DJ Delorie 93b103586f * libc/Makefile.am (stmp-sigset, stmp-iconvset, stmp-extra,
stmp-stdio64, stmp-posix,stmp-targetdep): Use unique temporary
file names to allow for parallel installs.
(CLEANFILES): Add new temporary file names.
* libc/Makefile.in: Regenerate.
2010-05-06 23:25:16 +00:00
Corinna Vinschen 7edacc4997 * libc/locale/lctype.c: Include <string.h> and "setlocale.h".
(_C_ctype_locale): Add braces to initializer.
	(__ctype_load_locale): Fix compiler warnings in non-Cygwin case.
	* libc/locale/nl_langinfo.c (nl_langinfo): Expose _NL_CTYPE_MB_CUR_MAX
	case only if __HAVE_LOCALE_INFO__ is defined.
2010-05-03 09:25:32 +00:00
Corinna Vinschen ffa42cf6a0 * libc/stdlib/wctob.c (wctob): Reorganize and fix WEOF check. Rename
pwc to pmb and convert to array to avoid buffer overflow.  Rename c to
	wc.  Check wc for WEOF instead of for EOF.  Return first byte of pmb if
	__wctomb conversion returned exactly one byte, EOF otherwise.
2010-05-02 11:55:01 +00:00
Corinna Vinschen be129c26e2 * libc/include/langinfo.h: Fix #endif positioning. 2010-04-30 14:58:28 +00:00
Corinna Vinschen d47d5b850b Extend locale support to maintain wide char values of native strings
if __HAVE_LOCALE_INFO_EXTENDED__ is defined.
	* libc/include/langinfo.h (enum __nl_item): New type.  Define all
	native values accessible through nl_langinfo.  Define previously
	existing POSIX-compatible values as macros as well.
	* libc/include/stdlib.h (__mb_cur_max): Drop declaration.
	(__locale_mb_cur_max): Declare.
	(MB_CUR_MAX): Re-define calling __locale_mb_cur_max.
	* libc/locale/Makefile.am (ELIX_SOURCES): Add lctype.c.
	* libc/locale/Makefile.in: Regenerate.
	* libc/locale/lctype.c: New file to define and load LC_CTYPE category.
	* libc/locale/lctype.h: New file, matching header.
	* libc/locale/lmessages.c (_C_messages_locale): Add default values for
	wide char members.
	(__messages_load_locale): Add _C_messages_locale in call to
	__set_lc_messages_from_win.
	* libc/locale/lmessages.h (struct lc_messages_T): Add wide char members.
	* libc/locale/lmonetary.c (_C_monetary_locale):  Add default values for
	wide char members.
	(__monetary_load_locale): Add _C_monetary_locale in call to
	__set_lc_monetary_from_win.
	* libc/locale/lmonetary.h (struct lc_monetary_T): Add wide char members.
	Add numerical values for international currency formatting per
	POSIX-1.2008, if __HAVE_LOCALE_INFO_EXTENDED__ is defined.
	* libc/locale/lnumeric.c (_C_numeric_locale): Add default values for
	wide char members.
	(__numeric_load_locale): Add _C_numeric_locale in call to
	__set_lc_numeric_from_win.
	* libc/locale/lnumeric.h (struct lc_numeric_T): Add wide char members.
	* libc/locale/locale.c (loadlocale): Return doing nothing if category
	locale didn't change.  Convert category if chain to switch statement.
	Call __ctype_load_locale in LC_CTYPE case.
	(__locale_charset): Add (but disable for now) returning codeset from
	__get_current_ctype_locale.
	(__locale_mb_cur_max): Add (but disable for now) returning mb_cur_max
	from __get_current_ctype_locale.
	(__locale_msgcharset): Add returning codeset from
	__get_current_messages_locale.
	(_localeconv_r): Accommodate int_XXX values.
	* libc/locale/nl_langinfo.c (nl_ext): New array to define what is to
	be returned for non-POSIX values.
	(nl_Langinfo): Return correct codeset for each locale category.  Return
	extended values if __HAVE_LOCALE_INFO_EXTENDED__ is defined.
	* libc/locale/timelocal.c (_C_time_locale): Add default values for
	wide char members.
	(__time_load_locale): Add _C_time_locale in call to
	__set_lc_time_from_win.
	* libc/locale/timelocal.h (struct lc_time_T): Add wide char members.
	* libc/stdio/vfwprintf.c (_VFWPRINTF_R): Use wide char decimal point
	and thousands_sep if __HAVE_LOCALE_INFO_EXTENDED__ is defined.
	* libc/time/strftime.c: Rework to accommodate availability of wide char
	strings in LC_TIME category if __HAVE_LOCALE_INFO_EXTENDED__ is defined.
2010-04-28 09:59:37 +00:00
DJ Delorie 948214b000 * libc/Makefile.am (SUBDEFS): Add LIBC_POSIX_DEF.
(libc.info): Add posix.texi.
(libc.dvi): Likewise.
(stmp-posix): New.
(posix.texi): New.
(libc_TEXINFOS): Add posix.texi.
* libc/configure.in (LIBC_POSIX_LIB, LIBC_POSIX_DEF): Add
tests.
* libc/libc.texinfo: Include posix.texi
* libc/locale/locale.c: Fix texinfo typo.
* libc/time/strftime.c: Fix texinfo typo.

* libc/configure: Regenerate.
* libc/Makefile.in: Regenerate.
* libc/argz/Makefile.in: Regenerate.
* libc/ctype/Makefile.in: Regenerate.
* libc/errno/Makefile.in: Regenerate.
* libc/iconv/Makefile.in: Regenerate.
* libc/iconv/ccs/Makefile.in: Regenerate.
* libc/iconv/ccs/binary/Makefile.in: Regenerate.
* libc/iconv/ces/Makefile.in: Regenerate.
* libc/iconv/lib/Makefile.in: Regenerate.
* libc/locale/Makefile.in: Regenerate.
* libc/misc/Makefile.in: Regenerate.
* libc/posix/Makefile.in: Regenerate.
* libc/reent/Makefile.in: Regenerate.
* libc/search/Makefile.in: Regenerate.
* libc/signal/Makefile.in: Regenerate.
* libc/stdio/Makefile.in: Regenerate.
* libc/stdio64/Makefile.in: Regenerate.
* libc/stdlib/Makefile.in: Regenerate.
* libc/string/Makefile.in: Regenerate.
* libc/syscalls/Makefile.in: Regenerate.
* libc/time/Makefile.in: Regenerate.
* libc/unix/Makefile.in: Regenerate.
* libc/xdr/Makefile.in: Regenerate.
2010-04-22 23:32:42 +00:00
Jeff Johnston 5f46e4094f 2010-04-06 Dave Korn <dave.korn.cygwin@googlemail.com>
* libc/stdlib/__atexit.c (__atexit_lock): Initialise as recursive
        rather than non-recursive lock type.
        (__register_exitproc): Use recursive locking APIs on it.
        * libc/stdlib/__call_atexit.c (__call_exitprocs): Likewise.
2010-04-06 20:20:36 +00:00
Corinna Vinschen 65ee447a02 * libc/stdlib/btowc.c (btowc): Reorganize EOF check. Fix incorrect
return value if input byte is ASCII NUL.
2010-04-06 14:46:31 +00:00
Jeff Johnston c1bfa897da 2010-04-01 Joel Sherrill <joel.sherrill@oarcorp.com>
* libc/include/sched.h: Include prototypes for
        sched_* methods.
        * libc/include/sys/sched.h: Update to POSIX
        1003.1b-2008.  Rework constants to allow sharing
        between RTEMS and Cygwin.
2010-04-01 18:33:37 +00:00
Corinna Vinschen eca2df4f01 * libc/locale/locale.c (loadlocale): Optimize "EUC" charset check.
Cygwin only: Allow GB2312 and EUC-CN as alternative codeset names
	for GBK.  Add to documentation.
	* libc/locale/nl_langinfo.c (nl_langinfo): On Cygwin, translate EUCCN
	to GB2312.
2010-03-27 21:04:49 +00:00
Corinna Vinschen 5e74a46f2f * libc/include/sys/features.h: Allow for _XOPEN_SOURCE to have an
empty definition.  Also add support for values of 500 or less.
2010-03-17 17:13:00 +00:00
Jeff Johnston fab7d5988a 2010-03-09 Jeff Johnston <jjohnstn@redhat.com>
* libc/posix/telldir.c (dd_loccnt): Change start index to be 1
        instead of 0.
        (_seekdir): A loc of 0 now means rewind dir.
2010-03-09 20:38:18 +00:00
Jeff Johnston 23a6adc2c3 2010-03-08 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_rint.c:  Fix error when integral part had 18 bits and
        fraction had bits set beyond first radix bit.  Also, make 2-part
        adjustment consistent with 1-part adjustment when adjusting fractional
        bits.
        * libm/common/sf_rint.c:  Make fractional-bit adjustment consistent
        with s_rint.c by setting 0b.01 instead of 0b.001.
2010-03-08 17:16:37 +00:00
Corinna Vinschen b73e65bb44 * libm/math/ef_sqrt.c: Delete unused variable sign.
* libc/stdlib/getenv.c: Delete "char *_findenv_r ();", as is not a
	proper prototype, and is properly prototyped in stdlib.h, anyway.
	* libc/stdlib/getenv_r.c: Ditto.
	* libc/search/hash.c: Add _DEFUN to __hash_open() declaration; add
	#define __DBINTERFACE_PRIVATE to activate prototypes from db_local.h.
	* libc/search/db_local.h: Correct __hash_open() prototype.
	* libc/sys/linux/cmath/math_private.h:  Eliminate compiler warnings:
	Remove #define INFINITY (redefines from math.h); remove #define __isnanf
	and #define __isinff isinff.
2010-03-05 08:55:16 +00:00
Jeff Johnston 6fc25b2d1e 2010-03-02 Craig Howland <howland@LGSInnovations.com>
* libc/include/sys/features.h:  Add POSIX.1-permitted definition of
        _POSIX_C_SOURCE if not already defined and _XOPEN_SOURCE has an
        appropriate value.  Specifically, check for POSIX.1-2008 & 2001 values.
        * libc/include/sys/config.h:  Add #include <sys/features.h> so that all
        includes get the new check added to it.
2010-03-02 19:28:39 +00:00
Corinna Vinschen 180044b386 * libc/xdr/README: Correct grammatical errors.
* libc/include/rpc/types.h: Add public types used
	by RPC implementations.
	* libc/include/rpc/xdr.h: Add defines used by RPC
	implementations.
	* libc/xdr/Makefile.am: Eliminate automake warning.
	* libc/xdr/Makefile.in: Regenerate.
2010-03-02 14:29:36 +00:00
Corinna Vinschen 8acb1969b5 * libc/xdr/Makefile.in: Regenerate. 2010-03-02 12:21:52 +00:00
Corinna Vinschen 3d7c4998ac Add eXtensible Data Record (XDR) support
* configure.host: Build libc/xdr only on cygwin.
	* Makefile.am: Install xdr headers.
	* libc/configure.in: Support new libc/xdr subdirectory.
	* libc/Makefile.am: Support new libc/xdr subdirectory.
	* libc/include/rpc/types.h: New.
	* libc/include/rpc/xdr.h: New.
	* libc/xdr/README: New.
	* libc/xdr/Makefile.am: New.
	* libc/xdr/dummy.c: New.
	* libc/xdr/xdr.c: New.
	* libc/xdr/xdr_array.c: New.
	* libc/xdr/xdr_float.c: New.
	* libc/xdr/xdr_float_vax.c: New.
	* libc/xdr/xdr_mem.c: New.
	* libc/xdr/xdr_private.c: New.
	* libc/xdr/xdr_private.h: New.
	* libc/xdr/xdr_rec.c: New.
	* libc/xdr/xdr_reference.c: New.
	* libc/xdr/xdr_sizeof.c: New.
	* libc/xdr/xdr_stdio.c: New.

	Regenerate using ac-2.63 and am-1.11.1
	* libc/xdr/Makefile.in: New.
	* Makefile.in: Regenerate.
	* libc/configure: Regenerate.
	* libc/Makefile.in: Regenerate.
	* libc/argz/Makefile.in: Regenerate.
	* libc/ctype/Makefile.in: Regenerate.
	* libc/errno/Makefile.in: Regenerate.
	* libc/iconv/ccs/binary/Makefile.in: Regenerate.
	* libc/iconv/ccs/Makefile.in: Regenerate.
	* libc/iconv/ces/Makefile.in: Regenerate.
	* libc/iconv/lib/Makefile.in: Regenerate.
	* libc/iconv/Makefile.in: Regenerate.
	* libc/locale/Makefile.in: Regenerate.
	* libc/misc/Makefile.in: Regenerate.
	* libc/posix/Makefile.in: Regenerate.
	* libc/reent/Makefile.in: Regenerate.
	* libc/search/Makefile.in: Regenerate.
	* libc/signal/Makefile.in: Regenerate.
	* libc/stdio/Makefile.in: Regenerate.
	* libc/stdio64/Makefile.in: Regenerate.
	* libc/stdlib/Makefile.in: Regenerate.
	* libc/string/Makefile.in: Regenerate.
	* libc/syscalls/Makefile.in: Regenerate.
	* libc/time/Makefile.in: Regenerate.
	* libc/unix/Makefile.in: Regenerate.
2010-03-02 12:05:18 +00:00
Corinna Vinschen 79ca6b6fd2 * libm/common/s_ilogb.c: Fix typo in comments that causes doc
generation to fail.
2010-02-26 09:44:25 +00:00
Corinna Vinschen be7f7a7503 * libc/time/strftime.c: Add support for era and alt_digits data from
LC_TIME locale category.  Conditionalize using _WANT_C99_TIME_FORMATS
	flag.
	(STRTOUL): Define differently for building strftime or wcsftime.
	(STRCPY): Ditto.
	(STRCHR): Ditto.
	(STRLEN): Ditto.
	(CHECK_LENGTH): Define to simplify code.
	(era_info_t): New type to store era info.
	(get_era_info): New function to fetch era info matching incoming
	struct tm.
	(free_era_info): New function to free era info.
	(alt_digits_t): New type to store alternative digits.
	(get_alt_digits): New function to convert alt_digits string into
	alt_digits_t structure.
	(free_alt_digits): New function to free alt_digits info.
	(conv_to_alt_digits): New function to convert unsigned value into
	alternative digits.
	(strftime): Conditionalize on _WANT_C99_TIME_FORMATS.  If
	_WANT_C99_TIME_FORMATS is defined, define as just a wrapper function
	providing era_info and alt_digits pointers and call ...
	(__strftime): Rename from strftime and make static if
	_WANT_C99_TIME_FORMATS is defined.  Add parameters for era_info and
	alt_digits pointers.  Handle conversion modifiers according to
	POSIX-1.2008.  Redefine %F and %Y according to POSIX.  Add default case
	to allow to bail out on invalid conversion specifiers.
	* libc/include/sys/config.h: Move Cygwin build flags to Cygwin's
	config.h.

	* libc/include/stdio.h: Remove __CYGWIN_USE_BIG_TYPES__ condition.
2010-02-26 09:41:44 +00:00
Corinna Vinschen 7c3c3fea6d * libc/locale/locale.c (loadlocale): Fix typo in comment. 2010-02-25 16:16:16 +00:00
Corinna Vinschen 830686ec0b * libc/locale/locale.c: Throughout, extensively comment on the
reason for using __CYGWIN__.
	(lconv): Remove _CONST entirely.
	(loadlocale): Guard calls to function loading locale-specific
	category data with __HAVE_LOCALE_INFO__ rather than __CYGWIN__.
	* libc/sys/config.h (__HAVE_LOCALE_INFO__): Define for Cygwin.
2010-02-25 16:10:42 +00:00
Jeff Johnston 9035cfbd12 2010-02-24 Charles Wilson <...>
Work around issues with new libtool files in ..
        * configure.in: Unconditionally call _LT_PROG_ECHO_BACKSLASH.
        * iconvdata/configure.in: Ditto.
        * libc/configure.in: Ditto.
        * libc/machine/configure.in: Ditto.
        * libc/machine/i386/configure.in: Ditto.
        * libc/sys/configure.in: Ditto.
        * libc/sys/linux/configure.in: Ditto.
        * libc/sys/linux/linuxthreads/configure.in: Ditto.
        * libc/sys/linux/linuxthreads/machine/configure.in: Ditto.
        * libc/sys/linux/linuxthreads/machine/i386/configure.in: Ditto.
        * libc/sys/linux/machine/configure.in: Ditto.
        * libc/sys/linux/machine/i386/configure.in: Ditto.
        * libm/configure.in: Ditto.
        * libm/machine/configure.in: Ditto.
        * libm/machine/i386/configure.in: Ditto.
        * libc/machine/sh/configure.in: Ditto.  Also, call
        AC_NO_EXECUTABLES before NEWLIB_CONFIGURE.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * Makefile.in: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/Makefile.in: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/Makefile.in: Ditto.
        * libc/*/configure: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/Makefile.in: Ditto.
        * libm/*/configure: Ditto.
2010-02-24 21:00:08 +00:00
Jeff Johnston ba7b214766 2010-02-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/__call_exit.c: Add include of sys/lock.h.
2010-02-24 19:58:17 +00:00
Jeff Johnston 84f66e46b9 2010-02-23 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/types.h: Fix __XMK__ sectioning and remove
        redundant code section for __XMK__.
2010-02-23 23:13:20 +00:00
Corinna Vinschen 6eaf061dc4 * libc/include/langinfo.h (_NL_TIME_DATE_FMT): Define new nl_item
value for LC_TIME entry date_fmt.
	(_DATE_FMT): Define "official" GNU name same as _NL_TIME_DATE_FMT.
	* libc/locale/nl_langinfo.c (nl_langinfo): Add case for _DATE_FMT.
2010-02-22 10:53:04 +00:00
Corinna Vinschen 7ab414f5a0 * libc/ctype/iswalpha.c (iswalpha): Update to Unicode 5.2.
* libc/ctype/iswprint.c (iswprint): Ditto.
	* libc/ctype/iswpunct.c (iswpunct): Drop standalone implementation.
	Define in terms of other wctype functions instead.
	* libc/ctype/towlower.c (towlower): Update to Unicode 5.2.  Add comment
	to explain how to fetch the data from the Unicode database.
	* libc/ctype/towupper.c (towupper): Ditto.
	* libc/ctype/utf8alpha.h: Ditto.
	* libc/ctype/utf8print.h: Ditto.
	* libc/ctype/utf8punct.h: Remove.
	* libc/ctype/iswcntrl.c (iswcntrl): Add comment to explain how to
	fetch the data from the Unicode database.
2010-02-18 20:37:19 +00:00
Corinna Vinschen f723b60cf2 * libc/locale/timelocal.h (struct lc_time_T): Add missing ERA-related
members.
	* libc/locale/timelocal.c (_C_time_local): Set new members to empty
	strings.
	* libc/locale/nl_langinfo.c (nl_langinfo): Return values from
	__get_current_time_locale() for ERA related requests.
2010-02-18 17:35:15 +00:00
Corinna Vinschen dc7992f47e * libc/ctype/iswblank.c (iswblank): Remove Unicode characters
U+00A0 and U+200B.  Add Unicode character U+180E.  Add comment
	to explain how to generate from Unicode data file.
	* libc/ctype/iswspace.c (iswspace): Ditto.
2010-02-17 09:14:35 +00:00
Corinna Vinschen 38d09c90de * libc/stdio/vfwprintf.c (_VFWPRINTF_R): Apply previous patch here
as well.
2010-02-15 16:29:15 +00:00
Corinna Vinschen b85c06ba36 * libc/stdio/vfprintf.c (_VFPRINTF_R): Drop printing a redundant
decimal point in case the float argument is an integral value.
2010-02-15 16:10:28 +00:00
Jeff Johnston 45c8c6469a 2010-02-11 Craig Howland <howland@LGSInnovations.com>
* libc/include/machine/ieeefp.h:  isfinite macro modified to run faster
        by only calling fpclassify once instead of possibly twice.
2010-02-11 21:03:51 +00:00
Jeff Johnston 451a8eb09a 2010-02-11 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_ilogb.c:  Adjust documentation to reflect new returns
        (see next items) and that ilogb() and ilogbf() are C99/POSIX.
        * libm/common/s_ilogb.c (ilogb):  Use C99/POSIX FP_ILOGB0 and
        FP_ILOGBNAN returns for 0 and NAN arguments, respectively, instead of
        the prior -INT_MAX and INT_MAX.  The FP_ILOGBx defines in math.h
        presently match the prior hard-codes, so no functional change is
        actually introduced.  (Not at this time, nor planned, but the values
        are permitted to be different, so subsequent edits of math.h could
        possibly cause a functional change.)
        * libm/common/sf_ilogb.c (ilogbf):  Ditto.
2010-02-11 21:00:33 +00:00
Jeff Johnston 5880fbf783 2010-02-09 Daniel Gutson <dgutson@codesourcery.com>
* libc/machine/arm/arm_asm.h (_ISA_THUMB_2): __ARM_ARCH_7EM__
        added to the preprocessor condition.
2010-02-09 22:52:21 +00:00
Corinna Vinschen 1cea6189a3 * libc/locale/lmessages.c (__messages_load_locale): Take additional
parameters for wide char to multibyte conversion.  Call
	__set_lc_messages_from_win on Cygwin.
	* libc/locale/lmessages.h: Make C++-safe.
	(__messages_load_locale): Change declaration.
	* libc/locale/lmonetary.c (__monetary_load_locale): Use
	_monetary_locale_buf as buffer pointer.
	* libc/locale/lnumeric.c (__numeric_load_locale): Use
	_numeric_locale_buf as buffer pointer.
	* libc/locale/timelocal.c (__time_load_locale): Use time_locale_buf
	as buffer pointer.
	* libc/locale/locale.c (loadlocale): Enable loading LC_MESSAGES data
	on Cygwin.
2010-02-09 08:58:38 +00:00
Jeff Johnston cf9d06b149 2010-02-08 Josef Wolf <jw@raven.inka.de>
* libc/machine/m68k/memcpy.S: MISALIGEND_OK should not be set for
        __mcpu32__.
2010-02-08 17:24:22 +00:00
Corinna Vinschen 9ac5e663e8 * libc/locale/locale.c: Add Cygwin's /usr/share/locale/locale.alias
support to documentation.
	(__set_locale_from_locale_alias): Declare when build for Cygwin.
	(loadlocale): On Cygwin, if locale can't be recognized, call
	__set_locale_from_locale_alias to check for locale alias.
	Define FAIL macro to replace `return NULL' statements.  Replace
	throughout.
2010-02-07 13:52:34 +00:00
Corinna Vinschen bc3677c557 * libc/locale/locale.c: Fix typo in documentation. Remove useless
_MB_CAPABLE guards within other _MB_CAPABLE guards.  Add comment
	to remaining #endif's.
2010-02-07 12:57:48 +00:00
Corinna Vinschen 5eb556c849 * libc/ctype/ctype_cp.h (_CTYPE_GEORGIAN_PS_128_254): Define.
(_CTYPE_GEORGIAN_PS_255): Define.
	(_CTYPE_PT154_128_254): Define.
	(_CTYPE_PT154_255): Define.
	(__ctype_cp): Add array members for above ctype definitions.
	* libc/locale/locale.c (loadlocale): Make TIS-620 charset name
	available for all targets.  Add guards for setting the conversion
	function pointers.  Add support for GEORGIAN-PS and PT154 charsets.
	Change documentation to reflect current behaviour more closely.
	* libc/locale/nl_langinfo.c (nl_langinfo): On Cygwin, translate
	"CP101" to "GEORGIAN-PS" and "CP102" to "PT154".
	* libc/stdlib/sb_charsets.c (__cp_conv): Add conversion arrays
	for GEORGIAN-PS and PT154.
	(__cp_index): Map invalid Windows codepage number 101 to
	GEORGIAN-PS conversion array, 102 to PT154 conversion array.
2010-02-06 18:28:33 +00:00
Corinna Vinschen ff348d86cc * libc/posix/telldir.c: Remove bogus nested prototype of lseek(). 2010-02-06 10:32:20 +00:00
Corinna Vinschen 837dda8652 * libc/locale/locale.c (loadlocale): Handle ISO-8859 and KOI8 charsets
so that the dashes are optional.  Align documentation.
2010-02-05 21:24:42 +00:00
Corinna Vinschen b0776ebd41 * libc/stdio/vfprintf.c: Include locale.h also if _WANT_IO_C99_FORMATS
is defined.  Raise conversion buffer size to make sure it has enough
	room for numbers plus grouping character.  Define GROUPING flag.
	(_VFPRINTF_R): Add PRINTANDPAD macro.  Handle grouping flag character.
	Handle grouping for decimal integer and float values.
	* libc/stdio/vfwprintf.c: Ditto.
2010-02-05 08:35:35 +00:00
Christopher Faylor fa40bd922e * libc/stdlib/__atexit.c (__atexit_lock): Define a global lock for atexit
functions.
(__register_exitproc): Use __atexit_lock rather than a local static lock.
* libc/stdlib/__call_atexit.c: Ditto.
2010-02-04 17:57:30 +00:00
Jeff Johnston 2d69f00e6e 2010-01-29 Jeff Johnston <jjohnstn@redhat.com>
* libc/search/Makefile.am: Create .def files for bsearch and qsort.
        * libc/search/Makefile.in: Regenerated.
        * libc/stdlib/stdlib.tex: Add bsearch and qsort.
2010-01-29 23:04:21 +00:00
Corinna Vinschen 88116ad22e * libc/locale/nl_langinfo.c (nl_langinfo): Return "CP932" when using
SJIS on Cygwin.  Explain why.
2010-01-24 12:18:20 +00:00
Corinna Vinschen b0466b3702 * libc/locale/locale.c (loadlocale): Allow CP932 as alias for SJIS.
Add to documentation.  Add a few comments to #endif's for Cygwin.
2010-01-23 16:41:08 +00:00
Corinna Vinschen c631824a8e * libc/locale/locale.c (loadlocale): Disable JIS entirely on Cygwin.
Allow TIS620 and TIS-620 as aliases for CP874 on Cygwin.
2010-01-23 14:32:25 +00:00
Corinna Vinschen fe57329f99 * libc/locale/lmonetary.c (__monetary_load_locale): Take additional
parameters for wide char to multibyte conversion.  Call
	__set_lc_monetary_from_win on Cygwin.
	* libc/locale/lmonetary.h: Make C++-safe.
	(__monetary_load_locale): Change declaration.
	* libc/locale/lnumeric.c (__numeric_load_locale): Take additional
	parameters for wide char to multibyte conversion.  Call
	__set_lc_numeric_from_win on Cygwin.
	* libc/locale/lnumeric.h: Make C++-safe.
	(__numeric_load_locale): Change declaration.
	* libc/locale/locale.c (lconv): De-constify for Cygwin.
	(__set_charset_from_locale): Rename from
	__set_charset_from_codepage.  Take locale as parameter instead of
	a codepage.
	(loadlocale): Allow "EUC-JP" for "EUCJP" and "EUC-KR" for "EUCKR".
	Change documnetation accordingly.  Enable LC_COLLATE, LC_MONETARY,
	LC_NUMERIC, and LC_TIME handling on Cygwin.
	(_localeconv_r): On Cygwin, copy values from monetary and numeric
	domain if change has been noted.
	* libc/locale/nl_langinfo.c (nl_langinfo): Accommodate change of
	am/pm layout in struct lc_time_T.
	* libc/locale/timelocal.c (_C_time_locale): Accommodate
	redefinition of am/pm members.
	(__time_load_locale): Take additional parameters for wide char
	to multibyte conversion.  Call __set_lc_time_from_win on Cygwin.
	* libc/locale/timelocal.h: Make C++-safe.
	(struct lc_time_T): Convert am and pm to a am_pm array for easier
	consumption by strftime and strptime.
	(__time_load_locale): Change declaration.
	* libc/time/strftime.c: Change documentation to reflect changes to
	strftime.  Remove locale constant strings in favor of access to
	locale-specifc data.
	(_ctloc): Define access method for locale-specifc data.
	(TOLOWER): Define for tolower conversion.
	(strftime): Throughout, convert locale-specific formats to use
	locale-specific data.  Add GNU-specific "%P" format.
	* libc/time/strptime.c: Remove locale constant strings in favor of
	access to locale-specifc data.
	(_ctloc): Define access method for locale-specifc data.
	(strptime): Throughout, convert locale-specific formats to use
	locale-specific data.
2010-01-22 13:03:42 +00:00
Corinna Vinschen 514329a7ec * libc/locale/nl_langinfo.c (nl_langinfo): On Cygwin, translate
often-used charsets into Linux compatible codesets.
2010-01-20 13:18:24 +00:00
Jeff Johnston 044cd63533 2010-01-19 Andy Koppe <andy.koppe@gmail.com>
* libc/stdio/vfscanf.c (__SVFSCANF_R): Fix handling of non-ASCII
        characters and allow invalid bytes in format string.
2010-01-19 23:16:45 +00:00
Corinna Vinschen 8c72ebb7e0 * libc/stdlib/wcstombs_r.c (_wcstombs_r): Handle invalid characters
correctly also in the s==NULL case.
2010-01-19 21:14:53 +00:00
Corinna Vinschen da5f018bef * libc/locale/locale.c (loadlocale): Change comments to refer to
ISO 639-3 rather than 639-2.
2010-01-17 14:57:32 +00:00
Corinna Vinschen d24015235c * libc/locale/locale.c (loadlocale): Allow three character
language codes to accommodate ISO 639-2 codes.
2010-01-17 14:41:58 +00:00
Corinna Vinschen 32cb8c8cfe * libc/locale/locale.c (lc_ctype_charset): Disable defaulting to
"UTF-8" on Cygwin.
	(lc_message_charset): Ditto.
	(loadlocale): Disable setting charset of the "C" locale to "UTF-8" on
	Cygwin.
	* libc/stdlib/mbtowc_r.c (__mbtowc): Add Cygwin-specific comment.
	* libc/stdlib/wctomb_r.c (__wctomb): Ditto.
2010-01-17 09:39:06 +00:00
Corinna Vinschen 37671b5114 * libc/include/sys/_default_fcntl.h (O_CLOEXEC): Define as _FNOINHERIT.
(F_DUPFD_CLOEXEC): Define for Cygwin.
	* libc/include/sys/unistd.h (dup3): Define for Cygwin.
	(pipe2): Ditto.
2010-01-14 18:49:13 +00:00
Corinna Vinschen 131dbdfccb Drop accidentally applied ChangeLog entry. 2010-01-14 12:49:43 +00:00
Corinna Vinschen 0b82c17d57 * libc/stdio/vfprintf.c (_VFPRINTF_R): Just wave bytes invalid in
the current charset through.
2010-01-14 12:48:58 +00:00
Jeff Johnston eeda30d7d5 2010-01-11 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/posix/telldir.c (_cleanupdir): Fixed usage of freed memory.
2010-01-11 23:24:47 +00:00
Jeff Johnston d8a439359a 2010-01-11 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* libc/include/math.h (log2, log2f): Disable macro versions for C++,
        as they are incompatible with OpenMP/C++ headers.

2
2010-01-11 22:55:47 +00:00
Corinna Vinschen 2b77087a48 * libc/stdlib/mbtowc_r.c (__ascii_mbtowc): Disallow conversion of
non-ASCII chars on Cygwin.
	* libc/stdlib/wctomb_r.c (__ascii_wctomb): Ditto.
2010-01-10 13:54:34 +00:00
Eric Blake b2e79f9800 Fix getsubopt declaration.
* libc/include/sys/unistd.h (suboptarg, getsubopt): Move...
* libc/include/stdlib.h: ...here, to match POSIX for getsubopt.
2009-12-22 13:07:24 +00:00
Jeff Johnston a97a996ff7 2009-12-17 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/_syslist.h: Add _mkdir transform.
2009-12-17 21:08:04 +00:00
Jeff Johnston a390368122 2009-12-17 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.18.0 info.
        * README: Ditto.
        * acinclude.m4: Change version number to 1.18.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.18
2009-12-17 20:41:44 +00:00
Jeff Johnston 296df5189a 2008-12-17 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.18.0 info.
        * README: Ditto.
        * acinclude.m4: Change version number to 1.18.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.18
2009-12-17 20:40:06 +00:00
Jeff Johnston bbe9636fd8 2009-12-17 Jerker Back <jerker.back@gmail.com>
* libc/iconv/lib/local.h[!__GNUC__]: Add alternative version of
        ICONV_ZERO_MB_STATE_T macro.
        * libc/iconv/lib/ucsconv.c (ucs_based_conversion_get_state): Use
        temporary local variable nullstate to hold empty mbstate_t.
2009-12-17 20:04:43 +00:00
Jeff Johnston 8b917fbcdd 2009-12-17 Jerker Back <jerker.back@gmail.com>
* libc/include/_ansi.h: Add new _EXFNPTR macro for using with
        function pointer arguments.
        * libc/iconv/lib/conv.h: Use _EXFNPTR rather than _EXPARM macro.
        * libc/iconv/lib/ucsconv.h: Ditto.
        * libc/include/stdlib.h: Use new _EXFNPTR macro for function pointers.
        * libc/include/sys/reent.h: Ditto.
        * libc/include/sys/unistd.h: Ditto.
        * libc/search/bsearch.c: Ditto.
        * libc/stdio/fseek.c: Ditto.
        * libc/stdio64/fseeko64.c: Ditto.
        * libc/stdlib/atexit.c: Ditto.
        * libc/stdlib/on_exit.c: Ditto.
2009-12-17 19:43:43 +00:00
Jeff Johnston 6fe2eb4c80 2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/include/machine/ieeefp.h: Rework __IEEE_*_ENDIAN handling.
        * libc/machine/arm/machine/endian.h: Remove (Conflicts with
        libc/include/machine/endian.h)
2009-12-17 19:26:38 +00:00
Jeff Johnston 9ad56b2726 2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/include/machine/setjmp.h: Set up _JBLEN #ifdef __m68k__.
2009-12-17 19:24:22 +00:00
Jeff Johnston f10d348770 2009-12-17 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/include/pthread.h: Add pthread_atfork, pthread_rwlock_unlock
        * libc/include/sys/stat.h: Use struct timespec st_*tim,
        blksize_t st_blksize, blkcnt_t st_blocks.
        Add st_*time compatibility macros.
2009-12-17 19:22:23 +00:00
Jeff Johnston 375dbb9d4c 2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/sys/rtems/machine/_types.h: New (Derived from
        machine/_default_types.h).
        * libc/sys/rtems/crt0.c: Rework. Introduce macro RTEMS_STUB.
        * libc/sys/rtems/sys/param.h:
        Update copyright notice from FreeBSD.
        Remove HZ.
        Add #include <sys/priority.h>
        Remove priority handling (moved to sys/priority.h).
        Remove CLBYTES (Unused, abandoned in BSD).
        * libc/sys/rtems/sys/queue.h: Update copyright (from FreeBSD).
        Remove CIRCLEQ_*.

2
2009-12-17 16:10:41 +00:00
Jeff Johnston 377b190270 2009-12-16 Joel Sherrill <joel.sherrill@oarcorp.com>
* libc/sys/rtems/machine/param.h: Only use sizeof(double) -1
        for ALIGNBYTES on SPARC.
2009-12-16 21:35:51 +00:00
Jeff Johnston a13e3a7bf2 2009-12-16 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/errno.h: Move EHOSTDOWN, EPFNOSUPPORT,
        and ETOOMANYREFS into general list as they are referenced
        by OpenGroup and needed by RTEMS.
2009-12-16 19:33:10 +00:00
Jeff Johnston 39e5af4aed 2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/search/hcreate.c: Don't include <sys/queue.h> (Unused).
2009-12-16 18:30:20 +00:00
Jeff Johnston 32a08d0e75 2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/sys/rtems/machine/_types.h: New (Derived from
        machine/_default_types.h).
        * libc/sys/rtems/crt0.c: Rework. Introduce macro RTEMS_STUB.
        * libc/sys/rtems/sys/param.h:
        Update copyright notice from FreeBSD.
        Remove HZ.
        Add #include <sys/priority.h>
        Remove priority handling (moved to sys/priority.h).
        Remove CLBYTES (Unused, abandoned in BSD).
        * libc/sys/rtems/sys/queue.h: Update copyright (from FreeBSD).
        Remove CIRCLEQ_*.
2009-12-16 18:28:15 +00:00
Jeff Johnston 47c756dd7a 2009-12-15 Conny Marco Menebrocker <c-m-m@gmx.de>
* libc/machine/xc16x/Makefile.am: Fix typo and refer
        to puts.c instead of putc.c.
        * libc/machine/xc16x/Makefile.in: Regenerated.
2009-12-15 19:34:08 +00:00
Jeff Johnston 531e23564b 2009-12-14 Maxim Kuvyrkov <maxim@codesourcery.com>
* libc/machine/m68k/memcpy.S: Patch to support
        boards which do not support unaligned read/write.
2009-12-14 20:50:53 +00:00
Jeff Johnston 655e435357 2009-12-10 Conny Marco Menebrocker <c-m-m@gmx.de>
* configure.host: Add xc16x support.
        * libc/include/machine/ieeefp.h: Ditto.
        * libc/include/sys/config.h: Ditto.
        * libc/machine/configure.in: Ditto.
        * libc/machine/Makefile.in: Regenerated.
        * libc/machine/aclocal.m4: Ditto.
        * libc/machine/configure: Ditto.
        * libc/machine/xc16x/Makefile.am: New file.
        * libc/machine/xc16x/Makefile.in: Ditto.
        * libc/machine/xc16x/aclocal.m4: Ditto.
        * libc/machine/xc16x/configure: Ditto.
        * libc/machine/xc16x/configure.in: Ditto.
        * libc/machine/xc16x/putchar.c: Ditto.
        * libc/machine/xc16x/puts.c: Ditto.
        * libc/machine/xc16x/setjmp.S: Ditto.
2009-12-10 17:12:11 +00:00
Eric Blake ad0ae5d83a Fix some *at declarations.
* libc/include/stdio.h (symlinkat): Move this...
* libc/include/sys/_default_fcntl.h (unlinkat): ...and this...
* libc/include/sys/unistd.h (symlinkat, unlinkat): ...here, to
match POSIX.
2009-12-08 13:50:41 +00:00
Jeff Johnston df8d921e12 2009-12-03 Craig Howland <howland@LGSInnovations.com>
* libc/stdlib/strtod.c:  Correct "NO_REENT" to "_REENT_ONLY".
        * libc/stdlib/wcstod.c:  Ditto.
        * libc/stdlib/dtoastub.c:  Ditto.
2009-12-03 16:11:27 +00:00
Corinna Vinschen e92d0abecf Use NetBSD fix for CVE-2009-0689 security vulnerability.
* libc/include/sys/reent.h (_Kmax): Define here based on the sizeof
	size_t, as in latest NetBSD.
	* libc/reent/reent.c (_reclaim_reent): Use _Kmax rather than constant
	value 15.
	* libc/stdlib/mprec.c (_Kmax): Don't define here.  Explain why.
2009-11-23 17:02:20 +00:00
Nick Clifton 0680fe0a6e * libc/machine/rx/strncat.S (_strncat): Replace use of r6
(call-saved) with r14 (call-used).
2009-11-20 12:54:29 +00:00
Jeff Johnston b425cbf482 2009-11-18 Dave Korn <dave.korn.cygwin@googlemail.com>
* libm/machine/i386/f_tan.S (_f_tan): Free fp stack register
        containing useless constant before advancing fp sp over it.
        (_f_tanf): Likewise.
2009-11-18 17:50:20 +00:00
Corinna Vinschen b4fee5273e * libc/stdio/vfprintf.c: Include ../stdlib/local.h. Replace call to
_mbtowc_r with direct call to __mbtowc.
	* libc/stdio/vfscanf.c: Ditto.
	* libc/stdlib/btowc.c: Include local.h.  Replace call to _mbtowc_r
	with direct call to __mbtowc.
	* libc/stdlib/mblen.c: Ditto.
	* libc/stdlib/mblen_r.c: Ditto.
	* libc/stdlib/mbrtowc.c: Ditto.
	* libc/stdlib/mbstowcs_r.c: Ditto.
	* libc/stdlib/mbtowc.c: Ditto.
	* libc/stdlib/wcrtomb.c: Include local.h.  Replace call to _wctomb_r
	with direct call to __wctomb.
	* libc/stdlib/wcsnrtombs.c: Ditto.
	(_wcsnrtombs_r): Ditto.
	* libc/stdlib/wcstombs_r.c: Ditto.
	* libc/stdlib/wctob.c: Ditto.
	* libc/stdlib/wctomb.c: Ditto.

	* libc/stdlib/mbrtowc.c (mbrtowc): Implement independently from
	_mbrtowc_r, unless PREFER_SIZE_OVER_SPEED or __OPTIMIZE_SIZE__ are
	defined.
	* libc/stdlib/wcrtomb.c (wcrtomb): Implement independently from
	_wcrtomb_r, unless PREFER_SIZE_OVER_SPEED or __OPTIMIZE_SIZE__ are
	defined.

	* libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Drop unnecessary test for
	ch >= 0.
2009-11-18 09:49:57 +00:00
Jeff Johnston 46471257e9 2009-11-17 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* libm/common/fdlibm.h (logb, logbf): Move decls from here...
        * libc/include/math.h (logb, logbf): ...to here.
2009-11-17 22:35:46 +00:00
Eric Blake 73db6db783 * libc/include/ctype.h (__ctype_lookup): Fix precedence. 2009-11-06 03:27:19 +00:00
Corinna Vinschen dc3d6d9093 * libc/stdio/fflush.c (_fflush_r): Store old errno to check for
low-level seek error condition.  Restore old errno in case of
	success.  Don't use new position after seek as error condition,
	rather check for return value of -1 and errno.  Handle EINVAL
	just like ESPIPE.  Only set fp->_offset if errno is 0.
2009-10-30 08:26:41 +00:00
Nick Clifton a861373585 * MAINTAINERS (ARM): Add myself as an ARM maintainer. 2009-10-27 10:31:06 +00:00
Nick Clifton fd6942ab42 newlib:
* configure.host: Add support for RX architecture.
        * libc/include/machine/ieeefp.h: Likewise.
        * libc/include/machine/setjmp.h: Likewise.
        * libc/include/machine/configure.in: Likewise.
        * libc/include/machine/configure: Regenerate.
        * libc/machine/rx: New directory.
        * libc/machine/rx/*: New files to support RX architecture.

libgloss:
        * configure.in: Add support for RX sub-directory.
        * configure: Regenerate.
        * rx: New directory.
        * rx/*: New files to support RX architecture.
2009-10-26 10:05:23 +00:00
Eric Blake 9b2b7c4a6b Fix isalpha(0x100000001LL) and friends on 64-bit machines.
* libc/include/ctype.h (__ctype_lookup): New macro.
(isalpha, isupper, islower, isdigit, isxdigit, isspace, ispunct)
(isalnum, isprint, isgraph, iscntrl, isblank): Use it to fix bug
on 64-bit machines.
2009-10-24 13:24:29 +00:00
Jeff Johnston 3a2f070f31 2009-10-20 Jeff Johnston <jjohnstn@redhat.com>
* configure.host: Don't set -O2 flag in newlib_cflags.  Leave
        that to CFLAGS.
        * acinclude.m4: Don't reset CFLAGS before calling _AC_PROG_CC_G
        as it sets the same flags as we are using.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * Makefile.in: Ditto.
        * iconvdata/aclocal.m4: Ditto.
        * iconvdata/configure: Ditto.
        * iconvdata/Makefile.in: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * doc/Makefile.in: Ditto.
        * libc/aclocal.m4: Ditto.
        * libc/configure: Ditto.
        * libc/Makefile.in: Ditto.
        * libc/*Makefile.in: Ditto.
        * libc/*aclocal.m4: Ditto.
        * libc/*configure: Ditto.
        * libm/*Makefile.in: Ditto.
        * libm/*aclocal.m4: Ditto.
        * libm/*configure: Ditto.
2009-10-20 22:44:28 +00:00
Jeff Johnston 1e1b6f8003 2009-10-16 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/config.h[__CYGWIN__]: Set __USE_XOPEN2K flag
        if not __STRICT_ANSI__ or stdc version C99 or greater.
        * libc/include/stdio.h[__STRICT_ANSI__]: Add __USE_XOPEN2K check
        for fseeko and ftello prototypes.
2009-10-20 16:44:11 +00:00
Corinna Vinschen 1b13009b2a * libc/include/wchar.h (struct tm0: Declare as incomplete type. 2009-10-15 08:23:27 +00:00
Corinna Vinschen 597441d79b * libc/locale/nl_langinfo.c (nl_langinfo): Add Cygwin-specific temporary
exception for KOI8 charsets.
2009-10-15 08:08:50 +00:00
Eric Blake e4ba1cf29e * libc/include/sys/unistd.h: Add _PC*, _CS*, and _SC* constants
new to POSIX 2008.
2009-10-14 04:15:25 +00:00
Jeff Johnston 81c59927a9 2009-10-13 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* libc/include/sys/signal.h: Include <sys/types.h> always.
        [__CYGWIN__, __rtems__]: Define kill first argument as pid_t per
        standards.
2009-10-13 17:31:49 +00:00
Jeff Johnston 2072888e66 2009-10-09 Dave Korn <dave.korn@artimi.com>
* libc/include/sys/time.h (_TIMEVAL_DEFINED): Define when
        defining struct timeval.
2009-10-09 18:43:12 +00:00
Corinna Vinschen ec4e5025e9 * libc/locale/locale.c (DEFAULT_LOCALE): New define.
(__default_locale): New global variable set to the default locale.
	(__get_locale_env): Return __default_locale rather than fixed "C".
2009-10-09 08:25:28 +00:00
Jeff Johnston a3a62ae7a5 2009-10-08 Jeff Johnston <jjohnstn@redhat.com>
* configure.host: For RTEMS, define HAVE_ASSERT_FUNC.
        * libc/stdlib/assert.c (_assert_func): Do not specify
        __assert_func if HAVE_ASSERT_FUNC flag is set.
2009-10-08 16:44:10 +00:00
Jeff Johnston 85191fc5aa 2009-10-08 Eric Blake <ebb9@byu.net>
* libc/include/getopt.h (__getopt_r, __getopt_long_r)
        (__getopt_long_only_r): Protect declarations, to avoid compiler
        warning.
2009-10-08 16:26:28 +00:00
Corinna Vinschen 8bd7bd3bc0 * libc/locale/nl_langinfo.c (nl_langinfo): Just return current locale
charset on Cygwin.
2009-10-07 16:45:23 +00:00
Corinna Vinschen 6ff28fc3b1 * libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Allow CESU-8 surrogate
value encoding.
	* libc/stdlib/wctomb_r.c (__utf8_mbtowc): Allow CESU-8 surrogate
	value decoding.
2009-10-03 08:51:07 +00:00
Corinna Vinschen 50e4e69c42 * libc/locale/locale.c (loadlocale): Allow "C." same as "C-" as locale
prefix.  Add some words to documentation.
2009-09-29 19:12:28 +00:00
Corinna Vinschen 99dbad651c * libc/stdlib/sb_charsets.c: Throughout, translate undefined
characters to their corresponding Windows Unicode value.
2009-09-29 19:11:01 +00:00
Jeff Johnston 6c249577fb 2009-09-28 Michael Eager <eager@eagercon.com>
* configure.host: Add microblaze.
        * libc/include/machine/ieeefp.h [MICROBLAZE]: Define __IEEE_BIG_ENDIAN.
        * libc/include/machine/setjmp.h [MICROBLAZE]: Define _JBLEN, _JBTYPE.
        * libc/include/sys/config.h [MICROBLAZE]: Define _REENT_SMALL,
        _UNIX98_THREAD_MUTEX_ATTRIBUTES.
        * libc/include/sys/types.h: Treat XMK like rtems, define
        PTHREAD_MUTEX_NORMAL, PTHREAD_MUTEX_ERRORCHECK, PTHREAD_MUTEX_RECURSIVE,
        PTHREAD_MUTEX_DEFAULT, PTHREAD_STACK_MIN, define stuct pthread_attr_s.
        * libc/machine/configure.in: Add microblaze.
        * libc/machine/configure: Add microblaze (not regenerated).
        * libc/machine/microblaze/configure.in: NEW.
        * libc/machine/microblaze/configure: Generate.
        * libc/machine/microblaze/Makefile.am: NEW.
        * libc/machine/microblaze/Makefile.in: Generate.
        * libc/machine/microblaze/{abort.c, strcmp.c, strcpy.c, strlen.c,
        mallocr.c, longjmp.S, setjmp.S}: NEW.
        * libc/stdlib/mallocr.c [MICROBLAZE]: Don't declare sbrk prototype,
        mALLOc(): return malloc value.
2009-09-28 16:42:21 +00:00
Corinna Vinschen a58d484bcf * libc/locale/locale.c (lc_ctype_charset): Set to "UTF-8" on Cygwin.
(lc_message_charset): Ditto.
	(loadlocale): Set charset of the "C" locale to "UTF-8" on Cygwin.
	* libc/stdlib/mbtowc_r.c (__mbtowc): Default to __utf8_mbtowc on
	Cygwin.
	* libc/stdlib/wctomb_r.c (__wctomb): Default to __utf8_wctomb on
	Cygwin.
2009-09-27 12:21:16 +00:00
Eric Blake b14f894fd1 * libc/include/sys/unistd.h (execvpe, fexecve) [__CYGWIN__]:
Add declarations.
2009-09-26 20:59:54 +00:00
Eric Blake 65d436509b * libc/include/sys/unistd.h (eaccess, euidaccess) [__CYGWIN__]:
Add declarations.
2009-09-25 23:57:09 +00:00
Corinna Vinschen c1754722ee * libc/locale/locale.c: Drop Cygwin-specific windows.h include.
(loadlocale): Call __set_charset_from_codepage with 0 codepage.
2009-09-23 17:19:00 +00:00
Jeff Johnston 2ad8d17a16 2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/include/stdlib.h: Add posix_memalign.
2009-09-22 21:49:20 +00:00
Jeff Johnston bdb08ed44f 2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.host (*-rtems*): Remove -DMISSING_SYSCALL_NAMES.
        Add -DHAVE_BLKSIZE, -D_NO_WORDEXP -D_NO_POPEN.
2009-09-22 21:24:55 +00:00
Jeff Johnston c3f3d59e43 2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.host (m32c): Move setting -DABORT_PROVIDED to second
        "case $host".
2009-09-22 21:23:13 +00:00
Christopher Faylor 4945cb2af0 * libc/include/sys/unistd.h: Declare getpagesize as returning POSIX-mandated
int.
* libc/sys/linux/sys/unistd.h: Ditto.
2009-09-19 02:30:51 +00:00
Jeff Johnston a9dd632461 2009-08-31 Takaki Makino <t@snowelm.com>
* libm/machine/i386/f_pow.c(_f_pow): Alter ASM so it works with
        newer gcc versions.
        * libm/maachine/i386/f_powf.c(_f_powf): Ditto.
2009-08-31 22:12:41 +00:00
Jeff Johnston eb9194f52c 2009-08-25 Andy Koppe <andy.koppe@gmail.com>
* libc/stdlib/sb_charsets.c (__micro_atoi): Allow five-digit codepage
        numbers.
        * libc/locale/locale.c (loadlocale): Set MB_CUR_MAX to 1 for KOI8
        charsets.
        * libc/stdlib/local.h (__cp_conv): Remove incorrect number of codepages.
2009-08-25 18:47:24 +00:00
Jeff Johnston 162a23c504 2009-08-24 Corinna Vinschen <corinna@vinschen.de>
* libc/locale/locale.c: Update documentation.
        (loadlocale): Map "KOI8-R" and "KOI8-U" to CP20866 and CP21866.

2009-08-24  Andy Koppe  <andy.koppe@gmail.com>

        * libc/stdlib/sb_charsets.c (__cp_conv): Add KOI8-R (Russian, CP20866)
        and KOI8-U (Ukrainian, CP21866) to Windows codepage conversion tables.
        * libc/ctype/ctype_cp.h (__ctype_cp): Likewise for ctype tables.
2009-08-24 22:11:11 +00:00
Jeff Johnston 4b4a1363aa 2009-08-24 Andy Koppe <andy.koppe@gmail.com>
* libc/ctype/iswspace.c (iswspace): Include "non-breaking
        space" (U+00A0).
        * libc/ctype/iswblank.c (iswblank): Likewise.
2009-08-24 16:59:35 +00:00
Corinna Vinschen 24149e4aa9 * libc/locale/locale.c (loadlocale): Throughout check charset string
case insensitive and store internal charset string uppercased.  Allow
	"UTF8" additionally to "UTF-8".  Add this change to documentation.
2009-08-21 20:56:13 +00:00
Eric Blake 3584ff9cb2 iconv: match SUSv3 prototype
* libc/include/iconv.h (iconv): Match POSIX prototype.
* libc/iconv/lib/iconv.c (iconv): Likewise.
2009-08-21 20:27:10 +00:00
Jeff Johnston c11ba63d52 2009-08-21 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_remquo.c (remquo):  Fix sign of quotient when |x|==|y|.
        * libc/stdio/mktemp.c:  Add #include <stdlib.h> for function prototypes.
2009-08-21 20:25:28 +00:00
Ralf Wildenhues 04189ff92e all-local should depend upon crt0, not all.
* iconvdata/Makefile.am (all): Remove.
	* libc/sys/a29khif/Makefile.am (all-am): Rename from ...
	(all): ... this.
	* libc/sys/arc/Makefile.am: Likewise.
	* libc/sys/arm/Makefile.am: Likewise.
	* libc/sys/d10v/Makefile.am: Likewise.
	* libc/sys/decstation/Makefile.am: Likewise.
	* libc/sys/h8300hms/Makefile.am: Likewise.
	* libc/sys/h8500hms/Makefile.am: Likewise.
	* libc/sys/linux/Makefile.am: Likewise.
	* libc/sys/linux/machine/i386/Makefile.am: Likewise.
	* libc/sys/m88kbug/Makefile.am: Likewise.
	* libc/sys/mmixware/Makefile.am: Likewise.
	* libc/sys/netware/Makefile.am: Likewise.
	* libc/sys/rdos/Makefile.am: Likewise.
	* libc/sys/rtems/Makefile.am: Likewise.
	* libc/sys/sh/Makefile.am: Likewise.
	* libc/sys/sparc64/Makefile.am: Likewise.
	* libc/sys/sun4/Makefile.am: Likewise.
	* libc/sys/sysmec/Makefile.am: Likewise.
	* libc/sys/sysnec810/Makefile.am: Likewise.
	* libc/sys/sysnecv850/Makefile.am: Likewise.
	* libc/sys/sysvi386/Makefile.am: Likewise.
	* libc/sys/sysvnecv70/Makefile.am: Likewise.
	* libc/sys/tic80/Makefile.am: Likewise.
	* libc/sys/w65/Makefile.am: Likewise.
	* libc/sys/z8ksim/Makefile.am: Likewise.
	* iconvdata/Makefile.in: Regenerate.
	* libc/sys/a29khif/Makefile.in: Likewise.
	* libc/sys/arc/Makefile.in: Likewise.
	* libc/sys/arm/Makefile.in: Likewise.
	* libc/sys/d10v/Makefile.in: Likewise.
	* libc/sys/decstation/Makefile.in: Likewise.
	* libc/sys/h8300hms/Makefile.in: Likewise.
	* libc/sys/h8500hms/Makefile.in: Likewise.
	* libc/sys/linux/Makefile.in: Likewise.
	* libc/sys/linux/machine/i386/Makefile.in: Likewise.
	* libc/sys/m88kbug/Makefile.in: Likewise.
	* libc/sys/mmixware/Makefile.in: Likewise.
	* libc/sys/netware/Makefile.in: Likewise.
	* libc/sys/rdos/Makefile.in: Likewise.
	* libc/sys/rtems/Makefile.in: Likewise.
	* libc/sys/sh/Makefile.in: Likewise.
	* libc/sys/sparc64/Makefile.in: Likewise.
	* libc/sys/sun4/Makefile.in: Likewise.
	* libc/sys/sysmec/Makefile.in: Likewise.
	* libc/sys/sysnec810/Makefile.in: Likewise.
	* libc/sys/sysnecv850/Makefile.in: Likewise.
	* libc/sys/sysvi386/Makefile.in: Likewise.
	* libc/sys/sysvnecv70/Makefile.in: Likewise.
	* libc/sys/tic80/Makefile.in: Likewise.
	* libc/sys/w65/Makefile.in: Likewise.
	* libc/sys/z8ksim/Makefile.in: Likewise.
2009-08-19 20:04:45 +00:00
Ralf Wildenhues 2f0e5052d3 * configure.in (newlib_cv_ldbl_eq_dbl): Rename cache variable
from newlib_ldbl_eq_dbl.
	* configure: Regenerate.
2009-08-19 19:56:05 +00:00
Eric Blake 84d6be5fa3 Fix 'make info' to work again.
* libc/Makefile.am (SUBDEFS): Correctly build popen docs.
* libc/libc.texinfo (Top): Add posix node to menu.
2009-08-19 12:38:09 +00:00
Jeff Johnston 7dc54c36da 2009-08-18 Jeff Johnston <jjohnstn@redhat.com>
* newlib.hin: Add comment regarding file being manually edited.
        * Makefile.am: Add no-op rule for newlib.hin.
        * Makefile.in: Regenerated.
2009-08-18 21:48:05 +00:00
Jeff Johnston 66b452d6f0 2009-08-18 Jeff Johnston <jjohnstn@redhat.com>
* acconfig.h: Add templates for _HAVE_LONG_DOUBLE and _LDBL_EQ_DBL.
2009-08-18 19:57:59 +00:00
Jeff Johnston fd226e98a4 2009-08-18 Eric Blake <ebb9@byu.net>
* libc/posix/popen.c (popen): Fix documented prototype.

        Improve popen compatibility with glibc.
        * libc/posix/popen.c (popen): The 2006-08-22 change to use
        FD_CLOEXEC disagrees with other implementations; instead, use
        pidlist to work even when fcntl is not available.  Meanwhile,
        support the 'e' modifier to set CLOEXEC, as in glibc.  Drop
        cygwin-specific code, now that cygwin has its own version.
        * libc/posix/Makefile.am (CHEWOUT_FILES): Document popen.
        * libc/posix/posix.tex: New file.
2009-08-18 18:34:57 +00:00
Eric Blake e9708d920c * libc/posix/popen.c (popen): Fix documented prototype. 2009-08-18 17:07:55 +00:00
Eric Blake a051160962 Improve popen compatibility with glibc.
* libc/posix/popen.c (popen): The 2006-08-22 change to use
FD_CLOEXEC disagrees with other implementations; instead, use
pidlist to work even when fcntl is not available.  Meanwhile,
support the 'e' modifier to set CLOEXEC, as in glibc.  Drop
cygwin-specific code, now that cygwin has its own version.
* libc/posix/Makefile.am (CHEWOUT_FILES): Document popen.
* libc/posix/posix.tex: New file.
2009-08-18 16:43:21 +00:00
Jeff Johnston 56dbf99329 2009-08-17 Craig Howland <howland@LGSInnovations.com>
* libc/string/wcsncpy.c (wcsncpy):  Re-write function based on small
        version of strncpy() (fixing two bugs).
2009-08-18 16:03:06 +00:00
Corinna Vinschen af0a038ecb ChangeLog: Fix typo in "typo". 2009-08-13 07:41:35 +00:00
Corinna Vinschen 61189f19de * libc/stdio/mktemp.c (mkdtemp): Fix type in function name. 2009-08-13 07:19:33 +00:00
Jeff Johnston 12387ab6f7 2009=08-12 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/mktemp.c (_gettemp): Do not call _mkdir_r unless
        HAVE_MKDIR is defined.

2009-08-12  Hans-Peter Nilsson  <hp@axis.com>

        * libc/include/reent.h: Add prototype and definition of _mkdir_r.
        * libc/reent/Makefile.am (GENERAL_SOURCES): Add mkdirr.c.
        (CHEWOUT_FILES): Add mkdirr.def.
        * libc/reent/Makefile.in: Regenerate.
        * libc/reent/mkdirr.c: New file.
2009-08-12 18:22:38 +00:00
Jeff Johnston 5f8c90bbc0 2009-08-10 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/wcstombs.c: Change documentation to specify size_t
        return type instead of int.
2009-08-10 16:23:20 +00:00
Jeff Johnston 1cc1af42c1 2009-07-29 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/a64l.c: Fix to use 'a' instead of 'A' in calculation
        when a lower-case character is detected.
2009-07-29 22:33:40 +00:00
Corinna Vinschen a67f77af1a * libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Rework UTF-16 surrogate
pair handling to be more bullet-proof even with incomplete UTF-8
	sequences.  Add check for 4 byte sequences resulting in values
	outside the valid Unicode range.  Add a comment to clarify checking
	for invalid CESU-8 sequences.
2009-07-29 08:31:30 +00:00
Corinna Vinschen ecf5c883df * libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Fix incrementing n in case
of handling incomplete sequences.
2009-07-28 16:49:19 +00:00
Eric Blake d6438f13d1 Avoid a fault from locking a closed standard file.
* libc/stdio/fflush.c (_fflush_r): Give up early if stream has
been previously closed.
2009-07-22 02:17:12 +00:00
Jeff Johnston 664f00763b 2009-07-09 Craig Howland <howland@LGSInnovations.com>
* libm/math/ef_scalb.c:  Replace isnanf() (pre-C99 function call) with
        isnan() (C99 macro).
        * libm/math/wf_log.c:  Ditto.
        * libm/math/wf_j0.c:  Ditto.
        * libm/math/wf_sqrt.c:  Ditto.
        * libm/math/wf_pow.c:  Ditto.
        * libm/math/wf_fmod.c:  Ditto.
        * libm/math/wf_remainder.c:  Ditto.
        * libm/math/wf_scalb.c:  Ditto.
        * libm/math/wf_atanh.c:  Ditto.
        * libm/math/wf_cosh.c:  Ditto.
        * libm/math/wf_acos.c:  Ditto.
        * libm/math/wf_acosh.c:  Ditto.
        * libm/math/wf_jn.c:  Ditto.
        * libm/math/wf_log10.c:  Ditto.
        * libm/math/wf_asin.c:  Ditto.
        * libm/math/wf_j1.c:  Ditto.
        * libm/common/sf_isnan.c:  Add #include <ieeefp.h>, fix comment.
        * libm/common/sf_isinf.c:  Add #include <ieeefp.h>, adjust comment to
        match that from s_isinf.c.
        * libc/include/machine/ieeefp.h:  Simplify isinf and isnan macros to
        remove un-necessary extension use (in a similar manner to as was
        recently done in math.h).
        * libc/include/math.h:  Remove isnanf and isinff prototypes (are in
        ieeefp.h).
        * libm/machine/spu/sf_isinf.c:  Fix comment (remove <math.h>).
2009-07-09 17:04:56 +00:00
Jeff Johnston 394660ec2f 2009-07-06 Joel Sherrill <joel.sherrill@oarcorp.com>
* libc/include/sys/features.h: Enable UNIX98 mutex attributes
        for RTEMS.
2009-07-06 18:59:04 +00:00
Eric Blake c52ac05c3a Add mkdtemp, mkstemps.
* libc/stdio/mktemp.c: Fix documentation.
(_gettemp): Add domkdir and length parameters.  Check for
insufficient 'X' suffix.  Drop cygwin-specific code.
(_mkstemp_r, _mktemp_r, mkstemp, mktemp): Adjust clients.
(_mkdtemp_r, _mkstemps_r, mkdtemp, mkstemps): New functions.
* libc/include/stdlib.h (_mkdtemp_r, _mkstemps_r, mkdtemp)
(mkstemps): Declare them.
2009-07-03 12:03:25 +00:00
Eric Blake ce1eb6bba0 Add fpurge.
* libc/stdio/fpurge.c (fpurge, _fpurge_r): New file.
* libc/stdio/Makefile.am (ELIX_4_SOURCES, CHEWOUT_FILES, fpurge):
Build it.
* libc/stdio/Makefile.in: Regenerated.
* libc/include/stdio.h (fpurge, _fpurge_r): New declarations.
* libc/stdio/stdio.tex: Build documentation.
2009-07-03 11:58:04 +00:00
Jeff Johnston 4f4622807f 2009-06-23 Jeff Johnston <jjohnstn@redhat.com>
* Makefile.am (MATHOBJS_IN_LIBC): Add s_fpclassify and
        sf_fpclassify as these are now used for infinity testing.
        * Makefile.in: Regenerated.
2009-06-23 16:04:33 +00:00
Jeff Johnston ab9ef0fa5f 2009-06-19 Joel Sherrill <joel.sherrill@oarcorp.com>
* libc/sys/rtems/machine/param.h: Change ALIGNBYTES
        so it can point to an aligned structure or double.
2009-06-19 18:15:35 +00:00
Corinna Vinschen e53c92a80e * libc/locale/locale.c (loadlocale): Add handling of "@cjknarrow"
modifier on _MB_CAPABLE targets.  Add comment to explain.  Improve
	documentation.
2009-06-18 09:13:39 +00:00
Jeff Johnston a2c3c5dab4 2009-06-17 Michael Eager <eager@eagercon.com>
* libc/include/pthread.h: Support XMK (Xilinx) BSP, add RTEMS to
        PTHREAD_MUTEX_NORMAL.
        * libc/include/sys/features.h: Same.
        * libc/include/sys/types.h: Same.
2009-06-17 16:47:02 +00:00
Corinna Vinschen 999820f6ab * libc/include/locale.h (struct lconv): Add missing members required
by POSIX.1-2008.
	* libc/locale/locale.c (lconv): Initialize new members to default
	values in "C" locale.
2009-06-16 19:45:17 +00:00
Corinna Vinschen 1c5e84dd08 * libc/stdio/vfprintf.c (_VFPRINTF_R): Use actual length of
radix char instead of assuming length 1.
	* libc/stdlib/gdtoa-gethex.c: Remove use of USE_LOCALE.
	(gethex): Allow multibyte decimal point.
	Fix compiler warnings due to different signedness of pointer types.
	* libc/stdlib/strtod.c: Remove use of USE_LOCALE.
	(_strtod_r): Allow multibyte decimal point.
	* libc/stdlib/wcstod.c (_wcstod_r): Evaluate correct wide char
	endptr position if the decimal point is a multibyte char.
2009-06-16 17:44:20 +00:00
Jeff Johnston 1a99b6f85a 2009-06-16 Craig Howland <howland@LGSInnovations.com>
* libc/ctype/local.h (__locale_charset): Add arguments to
        prototype
        * libc/stdlib/local.h (__locale_charset): Ditto.
2009-06-16 16:02:07 +00:00
Jeff Johnston aa201fc9df 2009-06-16 Craig Howland <howland@LGSInnovations.com>
* libc/include/math.h:  Simplify fpclassify, isinf, isnan, and signbit
        macros to remove un-necessary extension use.  isinf and isnan also
        changed to use fpclassify.  isfinite macro modified to run faster by
        only calling fpclassify once instead of possibly twice.
2009-06-16 15:55:06 +00:00
Corinna Vinschen 5c1939c8c4 * libc/ctype/tolower.c (tolower): Cast conversion result from
mbtowc/wctomb to unsigned char to avoid negative return values.
	* libc/ctype/toupper.c (toupper): Ditto.
2009-06-09 11:33:57 +00:00
Corinna Vinschen c801709ed5 * libc/string/wcwidth.c: Optimize for speed.
* libc/locale/locale.c (lc_ctype_cjk_lang): New static int.
	(loadlocale): In case of setting LC_CTYPE, set lc_ctype_cjk_lang
	to 1 if the language is "jp", "ko", or "zh", to 0 otherwise.
	(__locale_cjk_lang): New function.
	* libc/string/local.h (__locale_cjk_lang): Declare.
	* libc/string/wcwidth.c: Fix comments.
	(__wcwidth): Handle CJK Ambiguous Width characters according
	to setting returned by __locale_cjk_lang.
2009-06-03 19:28:22 +00:00
Jeff Johnston 9b09fb22e2 2009-06-02 Richard Earnshaw <rearnsha@arm.com>
* libc/include/sys/config.h: Remove specification of _REENT_SMALL for
        thumb2.
2009-06-02 20:39:17 +00:00
Corinna Vinschen e17c0a23e3 * libc/ctype/jp2uc.c: Skip all definition if defined __CYGWIN__.
(__jp2uc): Change the scope to static function.
	* libc/ctype/local.h (_jp2uc): Define as macro if defined __CYGWIN__.
	* libc/string/local.h (_jp2uc): Include ../ctype/local.h.
2009-06-02 09:41:06 +00:00
Jeff Johnston 0072a41129 2009-05-27 Neal H. Walfield <neal@gnu.org>
* libc/include/machine/setjmp.h (sigjmp_buf): Size according to
        _JBTYPE and the size of sigset_t.
2009-05-27 18:54:58 +00:00
Jeff Johnston de8a5b7810 2009-05-15 Craig Howland <howland@LGSInnovations.com>
* configure.in:  Add configuration test for long double type existing
        and set flag _HAVE_LONG_DOUBLE if true.  Fix INIT_ARRAY (.init_array)
        and _LDBL_EQ_DBL tests to not link so that will work with
        cross-compilers.
        * configure: Regenerated.
        * Makefile.in: Ditto.
        * newlib.hin: Add _HAVE_LONG_DOUBLE flag.
        * libc/include/math.h:  Change non-builtin defines for HUGE_VAL,
        HUGE_VALF, and HUGE_VALL to be constant expressions.  Add definitions
        for the non-builtin case for INFINITY and NAN.  Gate HUGE_VALL and
        union __ldmath definitions with (new) _HAVE_LONG_DOUBLE.
        *libm/common/s_infconst.c:  Change definitions to use values from
        float.h instead of non-so-portable integer forms.  Mark as being
        deprecated (because now removed from math.h, are not used anywhere
        in Newlib, itself).
2009-05-15 16:15:57 +00:00
Corinna Vinschen 098a75dc51 * libc/string/local.h: New file.
* libc/string/wcswidth.c (wcswidth):  Convert japanese wide
	characters to Unicode here.  Handle surrogate pairs for UTF-16
	systems.  Call __wcwidth rather than wcwidth.
	* libc/string/wcwidth.c: New implementation using Markus Kuhn's
	wcwidth implementation for Unicode.
	(bisearch): New static function.
	(__wcwidth): New function.  Take wint_t rather than wchar_t as
	parameter to allow full Unicode handling on UTF-16 systems.
	Move old wcwidth implementation here for non-multibyte aware
	systems.
	(wcwidth): Convert japanese wide characters to Unicode here.
	Call __wcwidth rather than using iswprint/iswcntrl.
2009-05-15 11:40:28 +00:00
Corinna Vinschen 1cf38d075c * libc/ctype/local.h (JP_JIS, JP_SJIS, JP_EUCJP): Move definition
to jp2uc.c.
	(__jp2uc): Remove declaration.
	(_jp2uc): Declare.
	* libc/ctype/jp2uc.c (JP_JIS, JP_SJIS, JP_EUCJP): Define.
	(__jp2uc): Remove Cygwin special case.
	(_jp2uc): New function.  On Cygwin, just return c.
	* libc/ctype/iswalpha.c (iswalpha): Just call _jp2uc.
	* libc/ctype/iswblank.c (iswblank): Ditto.
	* libc/ctype/iswcntrl.c (iswcntrl): Ditto.
	* libc/ctype/iswprint.c (iswprint): Ditto.
	* libc/ctype/iswpunct.c (iswpunt): Ditto.
	* libc/ctype/iswspace.c (iswspace): Ditto.
	* libc/ctype/towlower.c (towlower): Ditto.
	* libc/ctype/towupper.c (towupper): Ditto.
2009-05-14 20:16:21 +00:00
Jeff Johnston 5900080d7d 2009-05-13 Paul Brook <paul@codesourcery.com>
* libc/machine/arm/setjmp.S: Don't bother saving IP.  Copy SP to
        IP before saving.  Likewise when restoring.
2009-05-13 18:31:55 +00:00
Jeff Johnston eba36c51fa 2009-05-13 Paul Brook <paul@codesourcery.com>
* libc/machine/arm/setjmp.S: Add ARMv6-M implementation.
2009-05-13 18:28:49 +00:00
Corinna Vinschen 136033a852 * libc/locale/locale.c (setlocale): Don't build on Cygwin. 2009-05-13 14:54:11 +00:00
Jeff Johnston ca3a040abf 2009-05-11 Craig Howland <howland@LGSInnovations.com>
* libm/machine/i386/f_llrint.c: Remove llrint() definition.
        * libm/machine/i386/f_llrintf.c: Remove llrintf() definition.
2009-05-11 21:58:05 +00:00
Nick Clifton 5796080933 * MAINTAINERS: Add myself as a maintainer for the MN10300 and to
the write-after-approval list.
2009-05-08 10:00:25 +00:00
Anthony Green 2585eb1832 Add self to MAINTAINERS file. Tweak moxie stack position. 2009-05-01 02:53:25 +00:00
Eric Blake 82b77480f7 Allow gcc warning for toupper even with extended charsets.
* libc/include/ctype.h (toupper, tolower)
[_MB_EXTENDED_CHARSETS_ISO]: Allow gcc warning when called with
'char' even when we must call the function for correct behavior.
[!_MB_EXTENDED_CHARSETS_ISO]: Fix regression in result type.
2009-04-30 22:53:00 +00:00
Jeff Johnston bcde129400 2009-04-24 Jeff johnston <jjohnstn@redhat.com>
* libc/stdio/fgetc.c: Make sure sfp lock is acquired before the
        file lock and released before the file lock to avoid a deadlock
        scenario.
        * libc/stdio/fgets.c: Ditto.
        * libc/stdio/fgetwc.c: Ditto.
        * libc/stdio/fgetws.c: Ditto.
        * libc/stdio/fread.c: Ditto.
        * libc/stdio/fseek.c: Ditto.
        * libc/stdio/getc.c: Ditto.
        * libc/stdio/getdelim.c: Ditto.
        * libc/stdio/gets.c: Ditto.
2009-04-24 22:52:52 +00:00
Jeff Johnston 35f31b6a98 2009-04-24 Jeff johnston <jjohnstn@redhat.com>
* configure.in: Add configuration test for long double equals dbl
        and set flag _LDBL_EQ_DBL if true.
        * configure: Regenerated.
        * newlib.hin: Add _LDBL_EQ_DBL flag.
        * libc/include/math.h: Use _LDBL_EQ_DBL flag instead of
        _HAVE_LDBL_MATH.
        * libc/include/stdlib.h: Use _LDBL_EQ_DBL flag instead of
        _HAVE_LDBL_STDLIB.
        * libc/common/local.h: Remove _LDBL_EQ_DBL flag setting.
        * libc/stdlib/local.h: Ditto.
2009-04-24 22:49:55 +00:00
Jeff Johnston de19487224 2009-04-24 Joseph Myers <joseph@codesourcery.com>
* libc/include/stdint.h (UINTPTR_MAX): Define to __UINTPTR_MAX__
	if __UINTPTR_MAX__ defined.
2009-04-24 21:55:07 +00:00
Eric Blake 190ccfc18c Be namespace clean in ctype.h.
* libc/include/ctype.h (_tolower, _toupper, isalpha, isupper)
(islower, isdigit, isxdigit, isspace, ispunct, isalnum)
(isprint, isgraph, iscntrl, isblank, toupper, tolower)
(isascii, toascii): Don't use 'c' as macro parameter name.
2009-04-24 12:27:36 +00:00
Eric Blake 1335bf3c5d Trigger gcc warning if isFoo macros are called with plain char.
* libc/include/ctype.h (isalpha, isupper, islower, isdigit)
(isxdigit, isspace, ispunct, isalnum, isprint, isgraph)
(iscntrl, isblank, toupper, tolower): Rewrite to let 'gcc -Wall'
warn when user calls macro with a char argument.
2009-04-24 12:20:07 +00:00
Jeff Johnston 5921804481 2009-04-23 Mike Burgess <wizardsguild@earthlink.net>
* libc/string/strcasecmp.c: Optimized rewrite.
        * libc/string/strncasecmp.c: Fix description.
        * libc/string/strlwr.c: Avoid passing signed char to tolower.
        * libc/string/strupr.c: Avoid passing signed char to tolower.
2009-04-23 18:11:22 +00:00
Jeff Johnston bbb9d4fde3 2009-04-23 Paul Brook <paul@codesourcery.com>
Kazu Hirata  <kazu@codesourcery.com>

        * libc/stdlib/__atexit.c (__register_exitproc): Use weak reference
        to malloc.  Allocate dynamically only if it is present.
        * libc/stdlib/__call_atexit.c (__call_exitprocs): Use weak
        reference to free.  Call free only if it is present.
2009-04-23 17:54:22 +00:00
Jeff Johnston 2beb9fbb02 2009-04-22 Anthony Green <green@moxielogic.com>
* configure.host: Add moxie support.
        * libc/machine/configure.in: Add moxie support.
        * libc/machine/configure: Rebuilt.
        * libc/machine/moxie/aclocal.m4: New file.
        * libc/machine/moxie/configure: New file.
        * libc/machine/moxie/configure.in: New file.
        * libc/machine/moxie/Makefile.am: New file.
        * libc/machine/moxie/Makefile.in: New file.
        * libc/machine/moxie/setjmp.S: New file.
        * libc/include/machine/setjmp.h (_JBLEN): Define for moxie.
        * libc/include/machine/ieeefp.h: Add moxie support.
2009-04-22 19:52:49 +00:00
Corinna Vinschen 755b125b77 * libc/stdio/local.h (__chclass, __state_table, __action_table):
Add extern to the declarations.
	* libc/stdlib/local.h (__iso_8859_conv, __cp_conv): Likewise.
2009-04-22 08:30:03 +00:00
Corinna Vinschen c28545227a * libc/ctype/ctype_.c (_CTYPE_DATA_128_255): Rename from
_CTYPE_DATA_128_256.
	* libc/ctype/ctype_cp.h: Split off all character class values for
	character 255 from the rest of the definitions.
	(__ctype_cp): Use the new definitions.  Make sure that the table
	always contains 0 for EOF (-1).
	* libc/ctype/ctype_iso.h: Ditto.
2009-04-21 20:09:01 +00:00
Jeff Johnston 161e368ac4 2009-04-21 Sandra Loosemore <sandra@codesourcery.com>
* libc/reent/impure.c (__sf_fake_stdin, __sf_fake_stdout)
        (__sf_fake_stderr): Declare locally with weak attribute.
2009-04-21 18:38:53 +00:00
Jeff Johnston 15b71e6679 2009-04-21 Mark Mitchell <mark@codesourcery.com>
* libc/include/_ansi.h: Move C++ defines to top of file.
        (_NOTHROW): New macro.
        (_EXFUN_NOTHROW): Likewise.
        * libc/include/stdlib.h (calloc): Declare with _EXFUN_NOTHROW.
        (free): Likewise.
        (malloc): Likewise.
        (realloc): Likewise.
        (_malloc_r): Likewise.
        (_callor_r): Likewise.
        (_free_r): Likewise.
        (_realloc_r): Likewise.
2009-04-21 18:24:59 +00:00
Jeff Johnston bd5f034706 2009-04-20 Jeff johnston <jjohnstn@redhat.com>
* libc/include/math.h: Change _LDBL_EQ_DBL flag usage to
        be _HAVE_LDBL_MATH.
        * libc/include/stdlib.h: Change _LDBL_EQ_DBL flag usage to
        be _HAVE_LDBL_STDLIB.
2009-04-20 18:06:14 +00:00
Jeff Johnston 1b8e360e06 2009-04-17 Jeff johnston <jjohnstn@redhat.com>
* libc/include/machine/ieeefp.h (_LDBL_EQ_DBL): Remove.
        * libc/stdlib/local.h (_LDBL_EQ_DBL): Add.
        * libc/stdlib/strtold.c: Include local.h.
        * libc/stdlib/wcstold.c: Likewise.
        * libm/common/atanl.c: Likewise.
        * libm/common/cosl.c: Likewise.
        * libm/common/sinl.c: Likewise.
        * libm/common/modfl.c: Likewise.
        * libm/common/frexpl.c: Likewise.
        * libm/common/tanhl.c: Likewise.
        * libm/common/tanl.c: Likewise.
        * libm/common/expm1l.c: Likewise.
        * libm/common/log1pl.c: Likewise.
        * libm/common/ceill.c: Likewise.
        * libm/common/fabsl.c: Likewise.
        * libm/common/floorl.c: Likewise.
        * libm/common/acosl.c: Likewise.
        * libm/common/asinl.c: Likewise.
        * libm/common/atan2l.c: Likewise.
        * libm/common/coshl.c: Likewise.
        * libm/common/expl.c: Likewise.
        * libm/common/fmodl.c: Likewise.
        * libm/common/hypotl.c: Likewise.
        * libm/common/ldexpl.c: Likewise.
        * libm/common/log10l.c: Likewise.
        * libm/common/logl.c: Likewise.
        * libm/common/powl.c: Likewise.
        * libm/common/sqrtl.c: Likewise.
        * libm/common/copysignl.c: Likewise.
        * libm/common/ilogbl.c: Likewise.
        * libm/common/nanl.c: Likewise.
        * libm/common/cbrtl.c: Likewise.
        * libm/common/asinhl.c: Likewise.
        * libm/common/nextafterl.c: Likewise.
        * libm/common/rintl.c: Likewise.
        * libm/common/scalbnl.c: Likewise.
        * libm/common/exp2l.c: Likewise.
        * libm/common/fdiml.c: Likewise.
        * libm/common/fmal.c: Likewise.
        * libm/common/fmaxl.c: Likewise.
        * libm/common/fminl.c: Likewise.
        * libm/common/lrintl.c: Likewise.
        * libm/common/lroundl.c: Likewise.
        * libm/common/nearbyintl.c: Likewise.
        * libm/common/remquol.c: Likewise.
        * libm/common/roundl.c: Likewise.
        * libm/common/scalblnl.c: Likewise.
        * libm/common/truncl.c: Likewise.
        * libm/common/acoshl.c: Likewise.
        * libm/common/atanhl.c: Likewise.
        * libm/common/erfcl.c: Likewise.
        * libm/common/erfl.c: Likewise.
        * libm/common/lgammal.c: Likewise.
        * libm/common/remainderl.c: Likewise.
        * libm/common/tgammal.c: Likewise.
        * libm/common/sinhl.c: Likewise.
        * libm/common/llroundl.c: Likewise.
        * libm/common/llrintl.c: Likewise.
        * libm/common/local.h: New file with _LDBL_EQ_DBL macro.
2009-04-17 22:15:43 +00:00
Jeff Johnston ad9bb48fbe 2009-04-17 Ken Werner <ken.werner@de.ibm.com>
* libc/include/machine/ieeefp.h: _LDBL_EQ_DBL check fixed.
        * libc/include/math.h (llrintl): Declare.
        * libm/common/llrintl.c: New File.
        * libm/common/Makefile.am: New File added.
        * libm/common/Makefile.in: Regenerate.
2009-04-17 20:54:19 +00:00
Jeff Johnston 34d6b436e2 2009-04-17 Ken Werner <ken.werner@de.ibm.com>
* libc/configure.in: Change AC_TRY_COMPILE to AC_TRY_COMMAND to
        avoid executable test.
        * libc/configure: Regenerate.
2009-04-17 20:50:44 +00:00
Jeff Johnston e3228f89a4 2009-04-17 Jeff johnston <jjohnstn@redhat.com>
* configure.in: Remove _HAVE_ARRAY_ALIASING check.
        * configure: Regenerated.
        * Makefile.in: Regenerated.
        * newlib.hin: Remove _HAVE_ARRAY_ALIASING flag.
        * libc/ctype/ctype_.c: Do not check for _HAVE_ARRAY_ALIASING.
        * libm/configure.in: Change AC_TRY_COMPILE to AC_TRY_COMMAND to
        avoid executable test.
        * libm/configure: Regenerated.
2009-04-17 20:48:34 +00:00
Jeff Johnston 9c4032e768 2009-04-17 Jeff johnston <jjohnstn@redhat.com>
* configure.in: Remove _HAVE_ARRAY_ALIASING check.
        * configure: Regenerated.
        * newlib.hin: Remove _HAVE_ARRAY_ALIASING flag.
        * libc/ctype/ctype_.c: Do not check for _HAVE_ARRAY_ALIASING.
        * libm/configure.in: Change AC_TRY_COMPILE to AC_TRY_COMMAND to
        avoid executable test.
        * libm/configure: Regenerated.
2009-04-17 16:18:17 +00:00
Jeff Johnston c4c8a3fd46 2009-04-16 Jeff johnston <jjohnstn@redhat.com>
* libc/misc/init.c (__libc_fini_array): Process fini_array in
        reverse order as compliant with the ELF specification.
2009-04-16 19:16:41 +00:00
Jeff Johnston f22a7456a1 2009-04-16 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/Makefile.am: Add new File.
        * libc/machine/spu/Makefile.in: Regenerate.
        * libc/machine/spu/fdopen.c: New file.
2009-04-16 18:38:23 +00:00
Jeff Johnston 34c5e58ebb 2009-04-16 Hans-Peter Nilsson <hp@axis.com>
* libc/include/stdint.h (INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX): Define.
2009-04-16 18:29:51 +00:00
Jeff Johnston 65f414dc16 2009-04-16 Ken Werner <ken.werner@de.ibm.com>
* libm/libm.texinfo: Add long double function support chapter.
        * libc/include/machine/ieeefp.h: Add _LDBL_EQ_DBL define.
        * libc/include/stdlib.h: Include <machine/ieeefp.h>.
        (strtold, wcstold): Declare.
        * libc/stdlib/strtold.c: New File.
        * libc/stdlib/wcstold.c: Likewise.
        * libc/configure.in: Add long double check.
        * libc/configure: Regenerate.
        * libc/stdlib/Makefile.am: Add strtold.c and wcstold.c.
        * libc/stdlib/Makefile.in: Regenerate.
        * libc/include/math.h (atanl, cosl, sinl, tanl, tanhl): Declare.
        (frexpl, modfl, ceill, fabsl, floorl, log1pl, expm1l, acosl): Ditto.
        (asinl, atan2l, coshl, sinhl, expl, ldexpl, logl, log10l, powl): Ditto.
        (sqrtl, fmodl, hypotl, copysignl, nanl, ilogbl, asinhl, cbrt): Ditto.
        (nextafterl, rintl, scalbnl, exp2l, scalblnl, tgammal): Ditto.
        (nearbyintl, lrintl, llrintl, roundl, lroundl, llround): Ditto.
        (llroundl, truncl, remquol, fdiml, fmaxl, fminl, fmal, acoshl): Ditto.
        (atanhl, remainderl, lgammal, erfl, erfcl): Ditto.
        * libm/common/atanl.c: New File.
        * libm/common/cosl.c: Likewise.
        * libm/common/sinl.c: Likewise.
        * libm/common/modfl.c: Likewise.
        * libm/common/frexpl.c: Likewise.
        * libm/common/tanhl.c: Likewise.
        * libm/common/tanl.c: Likewise.
        * libm/common/expm1l.c: Likewise.
        * libm/common/log1pl.c: Likewise.
        * libm/common/ceill.c: Likewise.
        * libm/common/fabsl.c: Likewise.
        * libm/common/floorl.c: Likewise.
        * libm/common/acosl.c: Likewise.
        * libm/common/asinl.c: Likewise.
        * libm/common/atan2l.c: Likewise.
        * libm/common/coshl.c: Likewise.
        * libm/common/expl.c: Likewise.
        * libm/common/fmodl.c: Likewise.
        * libm/common/hypotl.c: Likewise.
        * libm/common/ldexpl.c: Likewise.
        * libm/common/log10l.c: Likewise.
        * libm/common/logl.c: Likewise.
        * libm/common/powl.c: Likewise.
        * libm/common/sqrtl.c: Likewise.
        * libm/common/copysignl.c: Likewise.
        * libm/common/ilogbl.c: Likewise.
        * libm/common/nanl.c: Likewise.
        * libm/common/cbrtl.c: Likewise.
        * libm/common/asinhl.c: Likewise.
        * libm/common/nextafterl.c: Likewise.
        * libm/common/rintl.c: Likewise.
        * libm/common/scalbnl.c: Likewise.
        * libm/common/exp2l.c: Likewise.
        * libm/common/fdiml.c: Likewise.
        * libm/common/fmal.c: Likewise.
        * libm/common/fmaxl.c: Likewise.
        * libm/common/fminl.c: Likewise.
        * libm/common/lrintl.c: Likewise.
        * libm/common/lroundl.c: Likewise.
        * libm/common/nearbyintl.c: Likewise.
        * libm/common/remquol.c: Likewise.
        * libm/common/roundl.c: Likewise.
        * libm/common/scalblnl.c: Likewise.
        * libm/common/truncl.c: Likewise.
        * libm/common/acoshl.c: Likewise.
        * libm/common/atanhl.c: Likewise.
        * libm/common/erfcl.c: Likewise.
        * libm/common/erfl.c: Likewise.
        * libm/common/lgammal.c: Likewise.
        * libm/common/remainderl.c: Likewise.
        * libm/common/tgammal.c: Likewise.
        * libm/common/sinhl.c: Likewise.
        * libm/common/llroundl.c: Likewise.
        * libm/configure.in: Add long double check.
        * libm/configure: Regenerate.
        * libm/common/Makefile.am: Add new files.
        * libm/common/Makefile.in: Regenerate.
2009-04-16 18:24:35 +00:00
Nick Clifton cc0748930b Add new binutils target: moxie 2009-04-16 15:39:46 +00:00
Corinna Vinschen a29a769342 * libc/ctype/ctype_.c (_CTYPE_DATA_0_127): Remove _B flag from TAB.
* libc/ctype/ctype_cp.h: Mark non-cased letters in tables for codepages
	720, 862, 874, 1255, and 1256 to _U|_L.  Fix a couple of incorrect
	class mappings.
	* libc/ctype/ctype_iso.h: Mark non-cased letters in ISO-8859 tables
	6, 8, and 11 to _U|_L.  Fix a couple of incorrect class mappings.
	* libc/ctype/isblank.c (isblank): Special case TAB.
	* libc/ctype/islower.c (islower): Check explicitely for _L flag only
	in (_U|_L).
	* libc/ctype/isupper.c (isupper): Ditto, but check for _U flag.
	* libc/include/ctype.h (islower): Same in macro.
	(isupper): Ditto.
	(isblank): Special case TAB.  Redefine macro for GCC only.
2009-04-09 10:37:58 +00:00
Corinna Vinschen 9b26525ec3 * libc/stdlib/local.h (__mbtowc): Declare extern.
(__wctomb): Ditto.
2009-04-09 08:24:37 +00:00
Corinna Vinschen f03f51dccf * libc/stdlib/mbctype.h (_iseucjp1): Like _iseucjp, but also
recognizes 0x8e and 0x8f lead bytes.
	(_iseucjp2): Rename from _iseucjp.
	* libc/stdlib/mbtowc_r.c (__eucjp_mbtowc): Convert JIS-X-0212
	triplebyte sequences as well.
	* libc/stdlib/wctomb_r.c (__eucjp_wctomb): Convert to JIS-X-0212
	triplebyte sequences as well.
2009-04-09 08:20:10 +00:00
Jeff Johnston 712789c794 2009-04-08 Ken Werner <ken.werner@de.ibm.com>
* configure.in: Add square brackets for the array aliasing conftest.
        * configure: Regenerate.
2009-04-08 20:00:01 +00:00
Jeff Johnston 3d66f2c9ae 2009-04-06 Mike Burgess <wizardsguild@earthlink.net>
* libc/string/strncasecmp.c: Optimized rewrite.
2009-04-06 22:42:08 +00:00
Jeff Johnston 43b1cfeca5 2009-04-06 Ken Werner <ken.werner@de.ibm.com>
* libc/include/sys/features.h: Undefine _POSIX_TIMERS for spu.
        * libc/include/machine/time.h (nanosleep): Declare.
2009-04-06 22:04:33 +00:00
Corinna Vinschen 2f1769f431 * libc/locale/locale.c (loadlocale): Set mbc_max to 3 for EUCJP. 2009-04-06 10:36:49 +00:00
Corinna Vinschen 80317fe50f * libc/stdlib/wcstombs.c: Fix datatypes in documentation. 2009-04-04 16:00:31 +00:00
Corinna Vinschen 56c5c08a5d * libc/include/stdio.h (_ELIDABLE_INLINE): Move definition from here...
* libc/include/_ansi.h (_ELIDABLE_INLINE): ..to here.
2009-04-04 15:44:19 +00:00
Jeff Johnston d74c61c2be 2009-04-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* libc/include/stdio.h [__SCLE] (__sgetc_r): Prototype before define
        to avoid a warning with -Wmissing-prototypes.
2009-04-03 22:46:15 +00:00
Jeff Johnston 0463fc624c 2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/mmap_ea.c (mmap_ea): Check length argument.
2009-04-03 22:42:31 +00:00
Jeff Johnston 816c3d2968 2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/linux_syscalls.h: include <sys/types.h>
        (linux_getpid, linux_gettid): Declare.
2009-04-03 22:34:17 +00:00
Jeff Johnston f42552e9e1 2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/spu-gmon.c: Tweaks to support simultaneous SPU
        profiling.
2009-04-03 22:29:24 +00:00
Jeff Johnston 823f6f6655 2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* libc/include/math.h: Remove duplicate copysign prototype.
        Fix __math_68881 define typo.  Guard functions of the rint family.
2009-04-03 17:42:27 +00:00
Jeff Johnston 8ca79ad630 2009-04-03 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_llrint.c: New file, implementing llrint().
        * libm/common/sf_llrint.c: New file, implementing llrintf().
        * libm/common/Makefile.am:  Add s_llrint.c (src); sf_llrint.c (fsrc).
        * libm/common/Makefile.in:  Regenerate.
2009-04-03 17:39:24 +00:00
Corinna Vinschen 72c79be10e * libc/ctype/ctype_c.c: Move inclusion of ctype_iso.h and
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.
2009-04-02 07:53:12 +00:00
Corinna Vinschen 4bc42c05aa * libc/ctype/Makefile.am: Remove _tolower.c and _toupper.c
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.
2009-03-31 09:31:38 +00:00
Corinna Vinschen e916d8ec86 * libc/locale/locale.c (loadlocale): Revert to charset "GBK" instead
of "GB2312".  Fix documentation accordingly.
2009-03-26 10:24:38 +00:00
Corinna Vinschen f6e29e076a Revert erroneously checked in files. 2009-03-26 10:04:40 +00:00
Corinna Vinschen 7ca98b4901 * libc/ctype/ctype_.c (_CTYPE_DATA_0_127): Mark TAB as blank character.
* 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-26 09:45:11 +00:00
Jeff Johnston 3ed024dcb2 2009-03-25 Craig Howland <howland@LGSInnovations.com>
* 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-25 21:16:04 +00:00
Jeff Johnston 139f923bb4 2009-03-25 Craig Howland <howland@LGSInnovations.com>
* 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-25 19:13:24 +00:00
Jeff Johnston baea11cd6a 2009-03-25 Richard Earnshaw <rearnsha@arm.com>
* libc/machine/arm/strcmp.c (strcmp_unaligned): Correctly
        detect the nul-byte in a big-endian string.
2009-03-25 18:56:15 +00:00
Jeff Johnston 0b211e340f 2009-03-25 Jeff Johnston <jjohnstn@redhat.com>
* libc/string/wcsdup.c: Fix documentation error.
        * libc/string/Makefile.am: Fix CHEWOUT files to contain
        wcsdup.def rather than wcsdup.
        * libc/string/Makefile.in: Regenerated.
2009-03-25 17:57:11 +00:00
Corinna Vinschen 6396c8889f * libc/locale/locale.c (loadlocale): Only change __wctomb and __mbtowc
pointers if category is LC_CTYPE.
2009-03-25 13:52:08 +00:00
Corinna Vinschen 790d0a4c64 * libc/locale/locale.c (loadlocale): Rename charset "GBK" to
"GB2312".  Fix documentation accordingly.
2009-03-25 09:00:03 +00:00
Corinna Vinschen 4e4ff45c0b * libc/locale/locale.c (loadlocale): Rename charset "CP949" to
"eucKR".  Fix documentation accordingly.
2009-03-24 18:18:14 +00:00
Corinna Vinschen 62e51f09f9 * libc/locale/locale.c (loadlocale): Allow charset starting with 'e'
for "eucJP" charset support.
2009-03-24 16:56:33 +00:00
Jeff Johnston dd15241df7 2009-03-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/errno.h: Move EFTYPE to general usage because
        it is used in libc/search.
2009-03-24 16:05:07 +00:00
Corinna Vinschen 28186e81d9 * libc/ctype/iswalpha.c: Handle all wchar_t as unicode on
_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-24 10:13:27 +00:00
Jeff Johnston 4d5112e2b1 2009-03-23 Richard Earnshaw <rearnsha@arm.com>
* libc/machine/arm/strcmp.c (strcmp): Treat char as unsigned.
2009-03-23 18:25:10 +00:00
Corinna Vinschen 9accf06e03 * libc/locale/locale.c (loadlocale): Fix typo in language and
territory evaluation.
2009-03-23 11:28:12 +00:00
Jeff Johnston e8846923cf 2009-03-20 Jeff Johnston <jjohnstn@redhat.com>
* 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-20 20:44:14 +00:00
Corinna Vinschen 360dc06fdb * libc/stdlib/mbtowc_r.c (_mbtowc_r): Return EILSEQ in case of an
invalid character sequence.

	* libc/stdlib/mbtowc_r.c (_mbtowc_r): Fix compiler warning due to
	missing declaration of __locale_charset.
	* libc/stdlib/wctomb_r.c (_wctomb_r): Ditto.
2009-03-19 19:47:52 +00:00
Jeff Johnston d57ff5a8ac 2009-03-18 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* 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.
2009-03-18 18:11:18 +00:00
Corinna Vinschen d99179dbf3 * libc/stdlib/mbstowcs_r.c (_mbstowcs_r): Handle NULL destination
string correctly.
2009-03-17 12:16:28 +00:00
Jeff Johnston d70118655b 2009-03-16 Mark Mitchell <mark@codesourcery.com>
* libc/machine/arm/strlen.c (strlen): Fix defect in Thumb-2 mode.

2009-03-16  Richard Earnshaw  <rearnsha@arm.com>

        * libc/machine/arm/strlen.c (strlen): Correctly detect
        end-of-string.
        * libc/machine/arm/strcpy.c (strcpy): Likewise.
        * libc/machine/arm/strcmp.c (strcmp, strcmp_unaligned): Likewise.
2009-03-16 20:12:30 +00:00
Corinna Vinschen 044af76e50 * libc/include/sys/errno.h (ESTRPIPE): Define.
* libc/string/strerror.c (strerror): Decode it.
2009-03-15 13:41:46 +00:00
Corinna Vinschen 159a17c8c8 * libc/include/wchar.h (wcsdup, _wcsdup_r): Declare.
* 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.
2009-03-15 13:39:07 +00:00
Corinna Vinschen f03b7b10ec * libc/include/stdlib.h (_mkstemp_r, _mktemp_r): Move out of
!_REENT_ONLY section.
2009-03-14 12:17:19 +00:00
Corinna Vinschen 71675a3908 * libc/include/stdio.h (_mkstemp_r, _mktemp_r): Move declarations
to stdlib.h.
	* libc/include/stdlib.h (mktemp, _mktemp_r): Warn when using.
	* libc/stdio/mktemp.c: Explain the security risk when using
	mktemp.
2009-03-14 12:14:08 +00:00
Corinna Vinschen d75c0f75bc * libc/time/time.tex (wcsftime.def): Include.
* libc/time/wcsftime.c:  Clean up documentation a little.
2009-03-12 15:34:57 +00:00
Corinna Vinschen 14a164a726 * libc/stdio/swscanf.c: Some documentation corrections. 2009-03-12 14:30:28 +00:00
Corinna Vinschen 4a825d4145 * libc/stdio/swprintf.c (_swprintf_r, swprintf):
correct how terminating L'\0' is added;
	change return to match standard for when output does not fit;
	some corrections and enhancements to the docs.
	* libc/stdio/vswprintf.c (_vswprintf_r):  ditto, except for docs.
	* libc/stdio/vfwprintf.c:  some corrections to the docs and some
	enhancements to comments.  (No code changes.)
	* libc/time/strftime.c:  Correct some problems that made wcsftime()
	not work correctly:  work properly with swprintf returns that are
	different from snprintf returns, correct test vector lengths for
	when sizeof(wchar_t) > 1.
	* libc/stdio/sprintf.c:  Some documentation and comment corrections and
	enhancements to match those done to swprintf.c.
2009-03-12 10:27:10 +00:00
Corinna Vinschen dc48005c28 * libc/include/wchar.h (wcscasecmp, wcsncasecmp): Declare.
* 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.
2009-03-11 12:57:53 +00:00
Corinna Vinschen d0b85c158f * libc/include/wchar.h (fwscanf, swscanf, vfwscanf, vswscanf, vwscanf,
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.
2009-03-11 11:53:22 +00:00
Corinna Vinschen e20efdda16 * libc/machine/arm/arm_asm.h: Fix typo. 2009-03-10 09:02:32 +00:00
Corinna Vinschen 3c4becbe18 * libc/time/strftime.c: Adapt for dual-purpose use so not only
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.
2009-03-09 12:35:03 +00:00
Corinna Vinschen e94fc807d9 * libc/reent/reent.c (_reclaim_reent): Make a block from MP-related
statements in _REENT_SMALL case.  Check if _atexit is not NULL before
	dereferencing it.
	(_wrapup_reent): Check if _atexit is not NULL before dereferencing it.
2009-03-06 17:11:20 +00:00
Corinna Vinschen 6121968b19 * libc/include/stdio.h (__VALIST): Guard against multiple definition.
* 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.
2009-03-06 09:55:52 +00:00
Corinna Vinschen d6cd9169dc * libc/locale/locale.c (_setlocale_r): New implementation based on
FreeBSD's setlocale.
	(currentlocale): New helper function.
	(loadlocale): Ditto.
	(__locale_charset): New function.
	(__locale_msgcharset): Rename from __locale_charset.
	* libc/ctype/local.h (__lc_ctype): Remove declaration.
	(__locale_charset): Declare.
	* libc/ctype/iswalpha.c (iswalpha): Call __locale_charset instead of
	using __lc_ctype directly.  Only compare against the charset alone.
	* libc/ctype/iswblank.c (iswblank): Ditto.
	* libc/ctype/iswcntrl.c (iswcntrl): Ditto.
	* libc/ctype/iswprint.c (iswprint): Ditto.
	* libc/ctype/iswpunct.c (iswpunct): Ditto.
	* libc/ctype/iswspace.c (iswspace): Ditto.
	* libc/ctype/towlower.c (towlower): Ditto.
	* libc/ctype/towupper.c (towupper): Ditto.
	* libc/stdlib/mbtowc_r.c (_mbtowc_r): Ditto.
	* libc/stdlib/wctomb_r.c (_wctomb_r): Ditto.
	* libc/sys/linux/intl/loadmsgcat.c (_nl_init_domain_conv): Call
	__locale_msgcharset instead of __locale_charset.
2009-03-03 09:28:45 +00:00
Jeff Johnston 95d85fcb1a 2009-03-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/wctomb_r.c (_wctomb_r): When checking single-byte
        charset, cast wchar to size_t in case wchar_t is signed.
        * libc/stdlib/wctomb.c (wctomb): Add similar single-byte check.
2009-03-02 23:30:59 +00:00
Jeff Johnston 49b09e5afa 2009-03-02 Corinna Vinschen <corinna@vinschen.de>
* libc/stdlib/wctomb_r.c (_wctomb_r): Return EILSEQ in case of an
        invalid wchar.  Return -1 if wchar doesn't fit into singlebyte
        value in case of using a singlebyte charset.
2009-03-02 23:20:28 +00:00
Jeff Johnston 1f73aa9f82 2009-02-26 Brooks Moses <brooks@codesourcery.com>
* libc/machine/arm/strcpy.c: Add missing comma.
2009-02-26 21:32:45 +00:00
Jeff Johnston 4377def75b Fix character set problem with Ralf's name. 2009-02-26 21:04:59 +00:00
Jeff Johnston ef2d60ac22 2009-02-26 Ralf Corsépius <ralf.corsepius@rtems.org>
* libc/machine/lm32/configure.in: Let
        AC_CONFIG_SRCDIR point to setjmp.S instead of setjmp.s
        * libs/machine/lm32/configure: Regenerate.
2009-02-26 21:03:53 +00:00
Jeff Johnston 297367e3b3 2009-02-25 Brooks Moses <brooks@codesourcery.com>
* libc/stdlib/Makefile.am (CHEWOUT_FILES): Add
          mbsnrtowcs.def, wcsnrtombs.def.
        * libc/stdlib/Makefile.in: Regenerate.
        * libc/stdlib/stdlib.tex (@menu): Use correct section
          names for mbsrtowcs, wcsrtombs.
        * libc/stdlib/wcstod.c: Remove stray character in
          documentation.
2009-02-25 21:33:18 +00:00
Corinna Vinschen 8d8bf5a5e2 * mbtowc_r.c (_mbtowc_r): Remove conversion of 5 and 6 byte UTF-8
sequences since they are invalid in the Unicode standard.
	Handle surrogate pairs in case of wchar_t == UTF-16.
	* wctomb_r.c (_wctomb_r): Don't convert invalid Unicode wchar_t
	values beyond 0x10ffff into UTF-8 chars.  Handle surrogate pairs in
	case of wchar_t == UTF-16.
2009-02-25 09:10:09 +00:00
Kevin Buettner 56eafaf6e3 * libc/stdio/open_memstream.c (stdint.h): Include. 2009-02-25 04:00:05 +00:00
Jeff Johnston 02b20a2311 2009-02-23 Craig Howland <howland@LGSInnovations.com>
* libc/unix/ttyname.c:  Remove ttyname_r() (to a new file to avoid
        coupling ttyname_r() and ttyname() due to the latter's large buffer).
        * libc/unix/ttyname_r.c:  New file to hold ttyname_r(), previously in
        ttyname.c.
        * libc/unix/ttyname.h:  New file (common size definition for the 2
        ttyname*c files that are now split).
        * libc/unix/Makefile.am (ELIX_2_SOURCES):  Add ttyname_r.c.
        * libc/unix/Makefile.in:  Regenerate.
2009-02-23 23:42:03 +00:00
Corinna Vinschen 2e10d61ccb * libc/include/wchar.h (mbsnrtowcs): Declare.
(_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.
2009-02-19 09:19:42 +00:00
Jeff Johnston 3f60f7e544 2009-02-18 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/open_memstream.c (internal_open_memstream_r): Fix max
        buffer size to be in wchar_t units if wide == 1 is passed in.  In
        this case, also initialize the first character of the buffer to be
        wide char null.
        (_open_wmemstream_r): Cast buf to be (char **) to avoid warning.
        * libc/stdlib/mbtowc_r.c (_mbtowc_r): Change all occurences of
        incrementing the size_t value n to first check that n is not already
        size_t -1.  Fix some compiler warnings.
        * libc/stdlib/wcstod.c: Add includes for <wctype.h> and <math.h>.
2009-02-18 21:28:41 +00:00
Corinna Vinschen 84e851fd64 * libc/stdio/open_memstream.c: Add open_wmemstream to doumentation.
(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-18 17:35:24 +00:00
Corinna Vinschen c65466e242 * libc/stdio/fputwc.c: Fix typo in man page info. 2009-02-16 15:04:34 +00:00
Jeff Johnston 77ea728b96 2009-02-12 Corinna Vinschen <corinna@vinschen.de>
* 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-02-12 23:10:01 +00:00
Jeff Johnston 18cbf1d394 2009-02-05 Neal H. Walfield <neal@gnu.org>
* libc/machine/x86_64/memcpy.S (memcpy): Don't use the red zone.
2009-02-05 20:10:21 +00:00
Jeff Johnston 3e703e875a 2009-01-28 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/vfscanf.c (__SVFSCANF_R): Add additional check for
        inf and nan processing to not proceed if we have already collected
        zeroes.
2009-01-28 18:12:52 +00:00
DJ Delorie dcad81990b * configure.host (m32c-*-*): Add long long I/O support by default. 2009-01-27 01:41:31 +00:00
Jeff Johnston 2b7e0645c9 2009-01-21 Richard Earnshaw <rearnsha@arm.com>
* libc/machine/arm/arm_asm.h: New file.
        * libc/machine/arm/strlen.c: New file.
        * libc/machine/arm/strcpy.c: New file.
        * libc/machine/arm/strcmp.c: New file.
        * libc/machine/arm/Makefile.am: Add new string routines.
2009-01-22 00:02:35 +00:00
Jeff Johnston 2e287a6327 2009-01-19 Neal H. Walfield <neal@gnu.org>
* 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.
2009-01-19 22:02:06 +00:00
Jeff Johnston d9db4e43f3 2009-01-12 Nathan Froyd <froydnj@codesourcery.com>
* libc/machine/powerpc/vfscanf.c (__sccl): Remove declaration.
2009-01-12 23:32:37 +00:00
Jeff Johnston ceedb0dcb8 2009-01-12 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/fwalk.c (__fwalk, __fwalk_reent): Remove locking of
        each fp.  Let the function being called lock the fp, if necessary.
2009-01-12 22:19:11 +00:00
Kazu Hirata 887c6b762e * libc/include/sys/stdio.h (_flockfile, _funlockfile): Fix typos. 2009-01-08 00:01:33 +00:00
Jeff Johnston 8ca367408d 2009-01-05 Craig Howland <howland@LGSInnovations.com>
* libc/stdio/fwide.c:  Correct typo in TRAD_SYNOPSIS for _fwide_r.
2009-01-05 19:08:03 +00:00
Jeff Johnston 272fac20e7 2008-12-19 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.17.0 info.
        * README: Ditto.
        * acinclude.m4: Change version number to 1.17.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.17
2008-12-22 19:45:56 +00:00
Jeff Johnston a3cf030478 2008-12-17 Jon Beniston <jon@beniston.com>
* configure.host: Set syscall_dir for lm32 target.
2008-12-17 23:09:09 +00:00
Jeff Johnston cdb0b90956 2008-12-15 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/stdio.tex: Remove putwc and getwc references as they
        are included as part of fputwc and fgetwc, respectively.
2008-12-15 20:31:47 +00:00
Jeff Johnston a1631dba6c 2008-12-12 Craig Howland <howland@LGSInnovations.com>
* 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 19:47:05 +00:00
Jeff Johnston c43663737c 2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/stdio/fputws.c: Fix documentation.
        * libc/stdio/getwchar.c: Ditto.
        * libc/stdio/putwchar.c: Ditto.
2008-12-12 17:21:08 +00:00
Jeff Johnston db48463a7f 2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org>
* 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-12 17:16:03 +00:00
Jeff Johnston f570da9508 2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/sys/rtems/crt0.c: Add stubs for getdents(), nanosleep(),
        _execve(), _exit().
2008-12-12 17:11:33 +00:00
Jeff Johnston 7851320a41 2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org>
* configure.host: Let *rtems* default to c99-formats.
2008-12-12 17:07:37 +00:00
Corinna Vinschen 6897665e67 * libc/stdio/freopen.c: Add <string.h> for memset prototype.
* libc/stdio/fseek.c:  Ditto.
	* libc/stdio/fwide.c:  Add <wchar.h> for fwide prototype.
2008-12-12 15:45:19 +00:00
Jeff Johnston 6b9838a343 Formatting fix. 2008-12-11 22:49:58 +00:00
Jeff Johnston 04e4752943 2008-12-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/time.h(gettimeofday): Change prototype so
        2nd parameter is void *, matching SUSV2.
        * libc/syscalls/sysgettod.c(gettimeofday): Ditto.
2008-12-11 22:48:38 +00:00
Jeff Johnston 0e859ad10f 2008-12-11 Jukka Pietarinen <jukka.pietarinen@mrf.fi>
* 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 20:05:38 +00:00
Jeff Johnston 7dd0c33097 2008-12-11 Craig Howland <howland@LGSInnovations.com>
* 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-11 17:27:56 +00:00
Jeff Johnston 0751f22675 2008-12-10 Corinna Vinschen <corinna@vinschen.de>
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 23:43:12 +00:00