| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/stdlib.h: Add on_exit prototype.
* libc/include/sys/reent.h (struct _atexit): Add argument array
and bits to track type of exit routine to support both on_exit
and atexit.
(_REENT_INIT_PTR): Add missing fields that won't be zeroed out
by default and change the setting of the atexit structure.
(_REENT_INIT)[!_REENT_SMALL]: Remove extraneous end brace.
* libc/stdlib/on_exit.c: New file.
* libc/stdlib/Makefile.am: Add support for on_exit.
* libc/stdlib/Makefile.in: Regenerated.
* libc/stdlib/atexit.c: Change to initialize types field.
* libc/stdlib/exit.c: Change to look at types field for each
exit routine and either call an atexit-style or an on_exit-style
routine accordingly.
|
|
|
|
|
|
| |
* libc/machine/powerpc/vfprintf.c(__VFPRINTF_R)[__ALTIVEC__]: Don't
allow v specifier with n or L specifiers. For vector c format,
move tmp declaration to the top.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/machine/powerpc/vfprintf.c(__VFPRINTF_R)[__ALTIVEC__]: Restore
the original format specifier when looping for vectors to compensate
for any changes made in vector %g format processing.
Also add syntax checking for various invalid scenarios
involving vector format extensions.
* libc/machine/powerpc/vfscanf.c(__VFSCANF_R)[__ALTIVEC__]: Fix
return code setting for vector formats. Also treat vector
separator mismatch as a match error instead of an input error.
Perform some syntax checking for vector formats.
|
|
|
|
| |
* strlcpy.c: Add file.
|
|
|
|
|
|
|
| |
* libc/include/string.h (!__STRICT_ANSI__): Add strlcat and strlcpy.
* libc/string/Makefile.am: Add strlcat.c and strlcpy.c.
* libc/string/strlcat.c: New file.
* libc/string/strlcpy.c: New file.
|
|
|
|
| |
* libc/string/strchr.c: Fix comment typo.
|
|
|
|
|
| |
* configure.host (newlib_cflags): Add -D__SINGLE_THREAD__ if
--enable-newlib-multithread=no.
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/stdio/getchar_u.c: New file.
* libc/stdio/putc_u.c: New file.
* libc/stdio/putchar_u.c: New file.
* libc/include/stdio.h: Add declarations for getc_unlocked,
getchar_unlocked, putc_unlocked and putchar_unlocked.
* libc/stdio/Makefile.am (LIB_SOURCES): Add new files.
(CHEWOUT_FILES): Add new files' .def's.
* libc/stdio/putchar.c (_putchar_r): Replace __sputc with putc.
|
|
|
|
|
| |
Also handle as single quad word when destination ends at last
byte of first quad word. Fix byte selection in single quad code.
|
|
|
|
|
|
|
|
| |
support for 'p' format. Fix code to print bytes for vector
integer formats that do not specify 'h' or 'l'.
* libc/machine/powerpc/vfscanf.c[__ALTIVEC__]: Add vector support
for 'p' specifier. Fix code to scan 16 bytes for vector integer
formats that do not specify 'h' or 'l'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/sys/linux/sys/stdio.h: New file.
* libc/include/stdio.h: Add declarations for flockfile,
ftrylockfile, and funlockfile. Include <sys/stdio.h>.
* libc/stdio/clearerr.c: Add file locking.
* libc/stdio/fclose.c: Likewise.
* libc/stdio/feof.c: Likewise.
* libc/stdio/ferror.c: Likewise.
* libc/stdio/fflush.c: Likewise.
* libc/stdio/fgetc.c: Likewise.
* libc/stdio/fgetpos.c: Likewise.
* libc/stdio/fgets.c: Likewise.
* libc/stdio/fileno.c: Likewise.
* libc/stdio/fputc.c: Likewise.
* libc/stdio/fputs.c: Likewise.
* libc/stdio/fread.c: Likewise.
* libc/stdio/freopen.c: Likewise.
* libc/stdio/fseek.c: Likewise.
* libc/stdio/ftell.c: Likewise.
* libc/stdio/fwrite.c: Likewise.
* libc/stdio/getc.c: Likewise.
* libc/stdio/putc.c: Likewise.
* libc/stdio/setvbuf.c: Likewise.
* libc/stdio/ungetc.c: Likewise.
* libc/stdio/vfprintf.c: Likewise.
|
|
|
|
| |
* libc/include/stdlib.h (a64l, l64a, _l64a_r): Added prototypes.
|
|
|
|
| |
(_sbrk): Add cast of return value.
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/reent.h (_l64a_buf): New reentrant area.
(_REENT_L64A_BUF): New macro for accessing area.
* libc/stdlib/Makefile.am: Add a64l.c and l64a.c.
* libc/stdlib/Makefile.in: Regenerated.
* libc/stdlib/a64l.c: New file.
* libc/stdlib/l64a.c: New file.
|
|
|
|
|
|
|
| |
* libc/unix/pread.c: Fix typo for _pread_r.
* libc/unix/pwrite.c: Fix type for _pwrite_r.
* libc/sys/linux/pread64.c: Fix typo for read syscall.
* libc/sys/linux/pwrite64.c: Fix typo for write syscall.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(SUBDEFS): Add LIBC_EXTRA_DEF.
* libc/configure.in (LIBC_EXTRA_LIB): New variable.
(LIBC_EXTRA_DEF): Likewise.
(extra_dir): Likewise.
* libc/machine/xscale/machine: New directory.
* libc/machine/xscale/machine/profile.h: New file.
* Makefile.am (site.exp): Remove newlib_cflags. Add
multibuildtop.
* testsuite/newlib.locale/UTF-8.c: Change fprintf's to printf's.
* testsuite/lib/flags.exp: New file.
* testsuite/lib/newlib.exp: Load flags.exp.
(newlib_target_compile): Remove libgloss directory references.
(newlib_init): Remove newlib_cflags references.
|
| |
|
|
|
|
| |
* libc/sys/linux/io64.c (fstat64, lstat64): New syscalls added.
|
| |
|
|
|
|
|
|
|
| |
(_system): New function. Ditto.
* libc/stdlib/system.c (_system_r): Call _system if HAVE_SYSTEM.
* configure.host: define HAVE_SYSTEM and HAVE_RENAME for xscale
targets.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/unistd.h (pread, pwrite): Added prototypes.
* libc/unix/Makefile.am: Add pread.c and pwrite.c.
* libc/sys/linux/Makefile.am: Add pread64.c and pwrite64.c.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/unix/Makefile.in: Ditto.
* libc/sys/linux/pread64.c: New file.
* libc/sys/linux/pwrite64.c: Ditto.
* libc/unix/pread.c: Ditto.
* libc/unix/pwrite.c: Ditto.
|
|
|
|
|
|
|
|
| |
* libc/sys/linux/Makefile.am: Add io64.c.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/io.c(mkfifo, fsync, fdatasync): Added syscalls.
* libc/sys/linux/signal.c (sigwaitinfo, sigtimedwait): Ditto.
* libc/sys/linux/io64.c: New file.
|
|
|
|
|
|
|
| |
* libc/sys/linux/Makefile.am: Add support for sched.c.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/sched.c: New file.
* libc/sys/linux/sys/types.h: Add struct timespec.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(site.exp): Likewise.
* acinclude.m4 (NEWLIB_CONFIGURE): Replace AC_CANONICAL_HOST
with AC_CANONICAL_SYSTEM. Remove AC_CANONICAL_BUILD.
* libc/locale/locale.c (_setlocale_r): Add UTF-8 support.
* libc/stdlib/mbtowc_r.c (_mbtowc_r): Likewise.
* libc/stdlib/wctomb_r.c (_wctomb_r): Likewise.
* testsuite: New directory.
* testsuite/config: Likewise.
* testsuite/lib: Likewise.
* testsuite/newlib.locale: Likewise.
* testsuite/newlib.string: Likewise.
* testsuite/config/default.exp: New file.
* testsuite/lib/checkoutput.exp: New file.
* testsuite/lib/newlib.exp: New file.
* testsuite/lib/passfail.exp: New file.
* testsuite/newlib.locale/UTF-8.c: New file.
* testsuite/newlib.locale/UTF-8.exp: New file.
* testsuite/newlib.locale/locale.exp: New file.
* testsuite/newlib.string/string.exp: New file.
* testsuite/newlib.string/tstring.c: New file.
|
|
|
|
|
|
|
|
|
| |
* libc/include/machine/types.h (__pid_t, __off_t, __loff_t): Added.
* libc/sys/linux/Makefile.am: Add support for mmap.c.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/mmap.c: New file.
* libc/sys/linux/machine/i386/syscall.h: Add _syscall6 macro.
* libc/sys/linux/sys/types.h (pid_t, off_t, loff_t): Added.
|
|
|
|
| |
are already specified in the top-level configure.in's FLAGS_FOR_TARGET.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/machine/xscale/memchr.c: Don't use multi-line strings.
* libc/machine/xscale/memcmp.c: Ditto.
* libc/machine/xscale/memcpy.c: Ditto.
* libc/machine/xscale/memmove.c: Ditto.
* libc/machine/xscale/memset.c: Ditto.
* libc/machine/xscale/strchr.c: Ditto.
* libc/machine/xscale/strcmp.c: Ditto.
* libc/machine/xscale/strcpy.c: Ditto.
* libc/machine/xscale/strlen.c: Ditto.
|
|
|
|
|
|
| |
* libc/include/sys/config.h: Remove include of <limits.h>.
(__INT_MAX__, __LONG_MAX__): Define like GCC's limits.h would
define INT_MAX and LONG_MAX. Use them in tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.host: Add support for powerpc-eabialtivec*.
* libc/include/malloc.h: Add include of <machine/malloc.h>.
* libc/include/stdlib.h: Add include of <machine/stdlib.h>.
* libc/include/machine/malloc.h: New file.
* libc/include/machine/stdlib.h: Ditto.
* libc/include/machine/setjmp.h: Add support for powerpc altivec.
* libc/machine/powerpc/Makefile.am: Add conditional objects and
sources based on configuration.
* libc/machine/powerpc/Makefile.in: Regenerated.
* libc/machine/powerpc/configure: Ditto.
* libc/machine/powerpc/configure.in: Add check for
powerpc-eabialtivec* in which case add in additional source files.
* libc/machine/powerpc/setjmp.S: Add altivec support.
* libc/machine/powerpc/vec_calloc.c: New file.
* libc/machine/powerpc/vec_free.c: Ditto.
* libc/machine/powerpc/vec_malloc.c: Ditto.
* libc/machine/powerpc/vec_mallocr.c: Ditto.
* libc/machine/powerpc/vec_realloc.c: Ditto.
* libc/machine/powerpc/machine/malloc.h: Ditto.
* libc/machine/powerpc/machine/stdlib.h: Ditto.
* libc/machine/powerpc/vfprintf.c: New file that is vfprintf.c
with added altivec format specifiers.
* libc/machine/powerpc/vfscanf.c: New file that is vfscanf.c with
added altivec format specifiers.
|
|
|
|
|
| |
* libs/sys/rtems/crt0.c: Satisfy gcc's references to libc functions
while autoconf is trying to link main(){}.
|
|
|
|
|
| |
* libc/sys/linux/signal.c: Remove include of <bits/sigset.h>.
* libc/sys/linux/sys/signal.h: Add include of <bits/sigset.h>.
|
|
|
|
| |
* libc/time/time.tex: Add tzset info.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/time.h (tzset, _tzset_r): Added prototypes.
(strptime): Moved prototype to be within !__STRICT_ANSI__.
(_tzname, _daylight, _timezone): No long __CYGWIN__ only.
(tzname): Defined for all platforms.
(daylight, timezone): Defined only for CYGWIN.
* libc/sys/linux/machine/i386/crt0.c: Add call to tzset() after
environment set up.
* libc/stdlib/setenv_r.c (_setenv_r): Call tzset() if the TZ
environment variable is set.
* libc/time/Makefile.am: Add support for tzset.c, tzlock.c, and
tzset_r.c.
* libc/time/Makefile.in: Regenerated.
* libc/time/gmtime.c (gmtime): Changed to call gmtime_r.
* libc/time/gmtime_r.c (gmtime_r): Changed to call _mktm_r.
* libc/time/lcltime_r.c (lcltime_r): Ditto.
* libc/time/local.h: New local header file.
* libc/time/mktime.c (mktime): Add timezone support.
* libc/time/mktm_r.c: New file which is the common engine
for gmtime_r and lcltime_r. This code has timezone support.
* libc/time/strftime.c (strftime): Add %Z timezone support.
* libc/time/tzlock.c: New file containing timezone lock stubs.
* libc/time/tzset.c: New file containing tzset() routine.
* libc/time/tzset_r.c: New file containing _tzset_r and
internal routine for calculating timezone changes for specified year.
|
|
|
|
|
|
|
|
|
|
| |
(CRT1_DIR): Set to ${crt1_dir}/ if crt1_dir is non-empty.
* Makefile.am: Change all occurrences of $(CRT0_DIR)/$(CRT0) to
$(CRT0_DIR)$(CRT0) to prevent make warnings. Likewise for
$(CRT1_DIR)/$(CRT1).
* libc/machine/xstormy16/Makefile.in: Regenerated.
* libc/machine/xstormy16/aclocal.m4: Regenerated.
* libc/machine/xstormy16/configure: Regenerated.
|
|
|
|
| |
fails, don't bail out, and try to correct next time.
|
| |
|
|
|
|
|
|
|
|
| |
* libc/sys/rtems/crt0.c (rtems_gxx_mutex_init): Dummy
routine to allow autoconf to determine that building executables
for rtems works.
(rtems_gxx_mutex_lock, rtems_gxx_mutex_unlock): Ditto.
(rtems_gxx_mutex_once): Ditto.
|
| |
|
|
|
|
|
|
|
| |
* libc/include/time.h: Fix strptime declaration.
* libc/time/Makefile.am: Add strptime.c.
* libc/time/Makefile.in: Regenerated.
* libc/time/strptime.c: New file.
|
|
|
|
|
|
|
|
| |
* libc/sys/linux/include/setjmp.h: Add sigjmp_buf type,
siglongjmp prototype, and sigsetjmp macro definition.
* libc/sys/linux/siglongjmp.c: New file.
* libc/sys/linux/Makefile.am: Add support for siglongjmp.
* libc/sys/linux/Makefile.in: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: Add support for installing crt1.o if one exists.
* configure.host: Specify crt1.o for linux.
* configure.in: Expose CRT1 and CRT1_DIR for Makefile.am to use.
* Makefile.in: Regenerated.
* configure: Ditto.
* libc/include/sys/unistd.h (_SC_STREAM_MAX, _SC_PRIORITY_SCHEDULING):
Added for non-Cygwin, non-RTEMS configurations.
* libc/sys/linux/Makefile.am: Add support for crt1 and sysconf.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/crt1.c: New empty file to override one defaulted
by gcc. This fixes problem with reconfiguring linux newlib build.
* libc/sys/linux/sysconf.c: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.host: Add support for machine subdirectory of
sys subdirectory.
* configure.in: Add check for sys machine subdirectory.
* Makefile.am: Ditto.
* configure: Regenerated.
* Makefile.in: Ditto.
* libc/sys/linux/crt0.c: Moved to machine/i386 directory.
* libc/sys/linux/sys/syscall.h: Ditto.
* libc/sys/linux/sleep.c: New file.
* libc/sys/linux/socket.c: Ditto.
* libc/sys/linux/sockops.h: Ditto.
* libc/sys/linux/stack.c: Ditto.
* libc/sys/linux/usleep.c: Ditto.
* libc/sys/linux/machine/Makefile.am: Ditto.
* libc/sys/linux/machine/Makefile.in: Ditto.
* libc/sys/linux/machine/aclocal.m4: Ditto.
* libc/sys/linux/machine/configure: Ditto.
* libc/sys/linux/machine/configure.in: Ditto.
* libc/sys/linux/machine/i386/Makefile.am: Ditto.
* libc/sys/linux/machine/i386/Makefile.in: Ditto.
* libc/sys/linux/machine/i386/aclocal.m4: Ditto.
* libc/sys/linux/machine/i386/configure: Ditto.
* libc/sys/linux/machine/i386/configure.in: Ditto.
* libc/sys/linux/machine/i386/crt0.c: Ditto.
* libc/sys/linux/machine/i386/sigset.c: Ditto.
* libc/sys/linux/machine/i386/sigstack.h: Ditto.
* libc/sys/linux/machine/i386/socketcall.h: Ditto.
* libc/sys/linux/machine/i386/syscall.h: Ditto.
* libc/sys/linux/sys/select.h: Ditto.
* libc/sys/linux/configure.in: Add support for machine directory.
* libc/sys/linux/Makefile.am: Ditto plus add new files above.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/configure: Ditto.
* libc/sys/linux/brk.c: Use machine/syscall.h instead of sys/syscall.h.
* libc/sys/linux/inode.c: Ditto.
* libc/sys/linux/linux.c: Ditto.
* libc/sys/linux/process.c: Ditto.
* libc/sys/linux/systat.c: Ditto.
* libc/sys/linux/time.c: Ditto.
* libc/sys/linux/wait.c: Ditto.
* libc/sys/linux/ids.c: Change header plus add setfsgid/setfsuid.
* libc/sys/linux/io.c: Change header plus add readv/writev.
* libc/sys/linux/signal.c: Change header plus change sigsuspend to
use __sigsuspend syscall.
* libc/sys/linux/select.c: Change header plus change select to
use _newselect syscall.
* libc/sys/linux/sys/cdefs.h: Add a number of standard definitions
used by glibc header files.
* libc/sys/linux/sys/types.h: Add __socklen_t and __useconds_t
types.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/reent.h (_REENT_INIT_PTR): New macro for
initializing a struct _reent that has been dynamically allocated.
(_REENT_CHECK_MISC): New macro that checks _misc struct for
_REENT_SMALL and does nothing otherwise.
(_REENT_STRTOK_LAST): New macro for reentrant strtok.
(_REENT_MBLEN_STATE): New macro for reentrant mblen.
(_REENT_MBTOWC_STATE): New macro for reentrant mbtowc.
(_REENT_WCTOMB_STATE): New macro for reentrant wctomb.
[_REENT_SMALL](struct _misc_reent): New structure containing
miscellaneous reentrant areas needed by newlib.
[_REENT_SMALL](struct _reent): Add _misc pointer.
[_REENT_SMALL](_REENT_INIT_MISC): New macro.
* libc/string/strtok (strtok): Change to use _REENT_CHECK_MISC
and _REENT_STRTOK_LAST macros.
* libc/stdlib/mblen (mblen): Change to use _REENT_CHECK_MISC
and _REENT_MBLEN_STATE macros.
* libc/stdlib/mbtowc (mbtowc): Change to use _REENT_CHECK_MISC
and _REENT_MBTOWC_STATE macros.
* libc/stdlib/wctomb (wctomb): Change to use _REENT_CHECK_MISC
and _REENT_WCTOMB_STATE macros.
|
|
|
|
| |
* libc/stdlib/getenv_r.c (_findenv_r): Add missing ENV_UNLOCK.
|
| |
|
|
|
|
| |
Store high part of leading bytes too.
|
|
|
|
| |
error.
|
|
|
|
|
| |
* libc/sys/go32/access.c: Change license to relaxed license
used in identical file throughout newlib/libgloss.
|