*** Major changes in newlib version 4.4.0: - long double support for i386, aarch64, and x86_64 added from FreeBSD - RISC-V Zfinx/Zdinx extension support - wildcard support added to allow arbitrary include dirs to be specified for a platform - Xtensa port added - printf family helper functions split out into separate files to save space when linking - wide-oriented I/O fixes including proper split of byte and wide-oriented stdio functions - support added for RISC-V long double math - fixes for c99/gcc-14 warnings treated as errors in multiple platforms *** Major changes in newlib version 4.3.0: - remove i?86-pc-linux-gnu support - remove decstation & sunos support - remove phoenix OS support - remove unused members from struct _reent (see also --enable-newlib-reent-binary-compat) - build system internals heavily rewritten & updated - make arm jmp_buf size and alignment ABI-conformant - fixed bug in arm setjmp/longjmp to preserve floating-point register values - add --enable-newlib-reent-thread-local configuration option - add --enable-newlib-reent-binary-compat configuration option - add 64-bit powerpc setjmp/longjmp support - use global stdio streams for all configurations - use global atexit data for all configurations - vectorized math routines added for amdgcn platform - nvptx: remove newlib ELIX level 1 restriction *** Major changes in newlib version 4.2.0: - remove use of --cygnus option for automake - rename configure.in files to configure.ac - enable automake silent rules - import gdtoa from OpenBSD - update to Unicode 14.0 - ignore _FORTIFY_SOURCE when building newlib - fixes to ldtoa - add clock support to nvptx port - various pthread POSIX APIs added - added implementatio for sig2str/str2sig - strtod/strtof to set errno to ERANGE consistently for underflow - fixed rounding issue with sqrt/sqrtf - fixed heap fragmentation issue with nano-malloc - FTW port for newlib - additions to sys/tree.h *** Major changes in newlib version 4.1.0: - fixes for regressions to pow/powf and tgamma functions - RISC-V semihosting support - RISC-V and arm patches *** Major changes in newlib version 4.0.0: - additional out-of-bounds checking for malloc/nano-malloc family - various fixes to makedocbook for python 3.8 - multiple standard/accuracy fixes to libm math routines - C-SKY port - support for Armv8-R aarch64 added - move of __tzrules_struct from time.h to internal header - math additions/improvements for RISC-V and arm - all arm code converted to use unified syntax for Thumb1 - fenv support added for multiple platforms - hard float support for PowerPC taken from FreeBSD - advertising clause removed from BSD licenses - various other fixes *** Major changes in newlib version 3.2.0: - memmem performance improvement - nanf() and HUGE_VALF now used in libm float routines to reduce size - new reduced "tiny" code size printf and puts support - errno setting enhanced in libm routines - new --enable-newlib-reent-check-verify configure option to verify reent memory - support added - and synced with FreeBSD - timeval macros moved to - newlib wide char conversion functions updated to Unicode 11.0 - new msp430-elfbare target support - AMD GCN port - PRU port - nbdm port - various standard improvements *** Major changes in newlib version 3.1.0: - global stdio streams support added for reent small - _CLOCKID_T made system configurable - generated Unicode 10.0 width data, case conversion data, character category data - Unicode table generation scripts fixed/enhanced - performance enhancements for qsort, strstr - nvptx port added - sinf/cosf/sincosf/exp/exp2/log/log2/pow rewritten for performance and accuracy - various gcc warnings fixed - various standard improvements *** Major changes in newlib version 3.0.0: - K&R support removed in code and docs - 64-bit time_t support - riscv platform support added - new expf, exp2f, logf, and powf implementations - unification of lock object names - locking routine retargetting at link time - new long double complex math routines - various ARM optimizations - various POSIX/BSD additions - further feature test macros overhaul *** Major changes in newlib version 2.5.0: - memory.h added - some header file reorganization - doc fixes - ctype rewrite - added per-locale string functions - additional feature test macro overhaul *** Major changes in newlib version 2.4.0: - feature test macro overhaul - new string functions (e.g. timingsafe_bcmp) - new stdlib functions (e.g. arc4random) - simplified versioning macros for newlib - Changelog files deprecated *** Major changes in newlib version 2.3.0: - dynamic atexit logic fixed - various arm performance enhancements - new version of strtold - doc improvements - arc platform support redone - strftime improvements/enhancements - imported logic from FreeBSD - locking fixes - complex math enhancements - visium platform support added - or1k platform support added *** Major changes in newlib version 2.2.0: - multiple functional/performance enhancements for arm/aarch64 - new nano formatted I/O support - replacement of or16/or32 with or1k platform - qsort_r support - additional long double math routines - ito/utoa/ltoa - restructuring of gmtime/localtime so tz functions only linked by localtime - unlocked I/O functions - various warning clean-ups *** Major changes in newlib version 2.1.0: - multibyte decimal point support added to scanf family - multiple changes for FreeBSD compatibility - multiple RTEMS changes for Linux compatibility - addition of restrict keyword - nano-malloc support added - global atexit support added - new nds32 platform support - new msp430 platform support - new nios2 platform support - lite exit support - updated arm support (aarch64) - newlib ported to x86_64-pc-cygwin *** Major changes in newlib version 2.0.0: - addition of aarch64 platform support - addition of epiphany platform support - addition of 'm' printf conversion specifier - memrchr function added - removal of many compiler warnings - removal of enable-newlib-fp-hw option and deprecation of mathfp directory - type of offset in file structure changed from int to off_t - new optimized arm math routines - various bug fixes *** Major changes in newlib version 1.20.0: * I/O lock clean-up * fixes to strftime/strptime * fixes to arm support * new NO_INCLUDE_LIST configuration support * rl78 platform support contributed * sparc-leon platform support contributed * cvs-to-git mirroring of newlib * various bug fixes *** Major changes in newlib version 1.19.0: * complex math functions * locale support extended to maintain wide char values of native strings * eXtensible Data Record (XDR) support for Cygwin * wide char functions updated to Unicode 5.2 * additional locale charsets * POSIX standard adherence improvements * tic6x platform support contributed * cr16 platform support contributed * various bug fixes *** Major changes in newlib version 1.18.0: * wide-char enhancements * long double math routines added for platforms where LDBL == DBL * long long math routines added * math cleanup * UTF-16 modifications for Cygwin * major locale charset overhaul including added charsets * added moxie platform * added rx platform * added xc16x platform * various cleanups * various bug fixes *** Major changes in newlib version 1.17.0: * new C99 wide-char function additions * lm32 platform support contributed * movement of regex functions from sys/linux directory into shared libc/posix directory * string function optimizations * redesign of formatted I/O to reduce dependencies when using sprintf/sscanf family of functions * numerous warning cleanups * documentation fixes to support pdf, info, ps formats and eclipse libhover hover docs * various bug fixes *** Major changes in newlib version 1.16.0: * mep-elf support contributed * x86_64 support added * reentrant I/O clean-up * various new C functions added from C99, POSIX, SUSV, etc.. * switch to use top-level libtool * spu floating-point environment and stdio enhancement * fastmath support * various bug fixes *** Major changes in newlib version 1.15.0: * new platforms added (bfin, spu, fido) * merge of csl branch changes (e.g. m68k) * additional C99 support (printf modifiers, strtod, isnan/isinf) * new configuration option to turn off dynamic allocation for atexit * reentrancy added for read / write functions * Cygwin fixes (e.g. POSIX read file flush behavior) * switch to autoconf 2.5.9 * use of aclocal/automake 1.9.6 * various bug fixes and doc cleanups *** Major changes in newlib version 1.14.0: * new platforms added (cris, mt, m32c) * more locking protection macros added * various C99/POSIX/SUSV3 compliance issue improvements * reentrancy cleanup * header file improvements (e.g. adding RTEMS stdint.h/inttypes.h) * various math fixes * changes made to allow use of gcc4 to build newlib * general bug fixes and cleanups *** Major changes in newlib version 1.13.0: * optimized iconv support * new configuration option to disable syscalls in newlib (e.g. sys/arm) * new configuration options controlling long long, long double support * ability of configuration options to override platform defaults * improved locking protection for file I/O functions * new reentrant functions * various fixes to allow building under FC3 and Debian Linux * cxa exit support * new platforms (e.g. crx) * new iprintf and iscanf family functions *** Major changes in newlib version 1.12.0: * general iconv support added * major cleanup with linux header files regarding warnings * thread-safety and reentrancy fixes * additional wide character C99 functions * addition of %lc, %ls, %S, and %C printf format specifiers * doc cleanup *** Major changes in newlib version 1.11.0: * enhanced EL/IX support for i[3456]86-pc-linux * new --enable-newlib-elix-level configuration option * positional arg I/O support for printf family (--enable-newlib-io-pos-args) * support for the Fujitsu FRV architecture added by Red Hat * support for Motorola Altivec and SPE added by Red Hat * new small reentrancy structure support * dynamic reentrancy structure support *** Major changes in newlib version 1.10.0: * libtool support for i[3456]86-pc-linux native builds * addition of libm/machine/i386 directory, for i386 fast math routines *** Major changes in newlib version 1.9.0: * i[3456]86-pc-linux support * Long Double I/O support via the WANT_IO_LONG_DBL flag * addition of reentrant environment functions * addition of xscale and AVR platforms * severe reduction in the number of warnings issued * consolidation of many RTEMS features into shared headers *** Major changes in newlib version 1.8.2: * RTEMS features and fixes from Joel Sherrill. * More work on reentrant routines. * Floating point math library check, --enable-newlib-hw-fp. *** Major changes in newlib version 1.8.1: * Added check for --enable-newlib-mb configure option which defines the MB_CAPABLE macro. Multibyte support for JIS, SJIS, and EUC-JP implemented. * Reduced code size for libm modules. * Replaced the BSD malloc with Doug Lea's malloc. *** Major changes in newlib version 1.8.0: * Added simulated signal handling functions _raise_r, _signal_r, raise, and signal except for sparc-sun-sunos*, i[3456]86-*-sco*, and a29k-*-* systems, which already provide access to signal. The signal functionality provided does not interact with hardware generated signals. * Added reentrant function rand_r from POSIX.1c. * Removed _asctime, _next, _scanpoint, and _signgam fields from struct _reent. These are no longer necessary since there are now functions that explictly support multiple threads (asctime_r, ctime_r, gamma_r, gmtime_r, lgamma_r, localtime_r, rand_r, & strtok_r). *** Major changes in newlib version 1.7.0: * Cross compiler target libraries are now built in a subdir of the top level build directory. Old way: build /newlib /m68020 /m68881 New way: build /m68k-coff /m68020 /m68881 where m68020 and m68881 are multilib subdirectories * m68k targets support --disable options to avoid building unwanted versions of the libraries. --disable-softfloat - don't build libc, libg++, etc. for -msoft-float --disable-m68881 - don't build libc, libg++, etc. for -m68881 --disable-m68000 - don't build libc, libg++, etc. for -m68000 --disable-m68020 - don't build libc, libg++, etc. for -m68020 These options have *no* effect on the default libraries, so if the default is -m68020, --disable-m68020 is nilpotent. * Reentrancy support in libm removed. * strtok, strtol, strtoul, assert, div, ldiv, qsort, vfprintf replaced with NetBSD versions. * Support for systems with 32 bit "doubles" added. * unctrl added. * dtoa.c updated from master dtoa.c soruces (netlib.att.com) * Various bug fixes. *** Major changes in newlib version 1.6.1: * Added reentrant functions (asctime_r, ctime_r, gmtime_r, localtime_r, and strtok_r) from POSIX.1c. * Removed _asctime_r and _strtok_r functions.