1*** Major changes in newlib version 4.3.0: 2 3- remove i?86-pc-linux-gnu support 4- remove decstation & sunos support 5- remove phoenix OS support 6- remove unused members from struct _reent (see also --enable-newlib-reent-binary-compat) 7- build system internals heavily rewritten & updated 8- make arm jmp_buf size and alignment ABI-conformant 9- fixed bug in arm setjmp/longjmp to preserve floating-point register values 10- add --enable-newlib-reent-thread-local configuration option 11- add --enable-newlib-reent-binary-compat configuration option 12- add 64-bit powerpc setjmp/longjmp support 13- use global stdio streams for all configurations 14- use global atexit data for all configurations 15- vectorized math routines added for amdgcn platform 16- nvptx: remove newlib ELIX level 1 restriction 17 18*** Major changes in newlib version 4.2.0: 19 20- remove use of --cygnus option for automake 21- rename configure.in files to configure.ac 22- enable automake silent rules 23- import gdtoa from OpenBSD 24- update to Unicode 14.0 25- ignore _FORTIFY_SOURCE when building newlib 26- fixes to ldtoa 27- add clock support to nvptx port 28- various pthread POSIX APIs added 29- added implementatio for sig2str/str2sig 30- strtod/strtof to set errno to ERANGE consistently for underflow 31- fixed rounding issue with sqrt/sqrtf 32- fixed heap fragmentation issue with nano-malloc 33- FTW port for newlib 34- additions to sys/tree.h 35 36*** Major changes in newlib version 4.1.0: 37 38- fixes for regressions to pow/powf and tgamma functions 39- RISC-V semihosting support 40- RISC-V and arm patches 41 42*** Major changes in newlib version 4.0.0: 43 44- additional out-of-bounds checking for malloc/nano-malloc family 45- various fixes to makedocbook for python 3.8 46- multiple standard/accuracy fixes to libm math routines 47- C-SKY port 48- support for Armv8-R aarch64 added 49- move of __tzrules_struct from time.h to internal header 50- math additions/improvements for RISC-V and arm 51- all arm code converted to use unified syntax for Thumb1 52- fenv support added for multiple platforms 53- hard float support for PowerPC taken from FreeBSD 54- advertising clause removed from BSD licenses 55- various other fixes 56 57*** Major changes in newlib version 3.2.0: 58 59- memmem performance improvement 60- nanf() and HUGE_VALF now used in libm float routines to reduce size 61- new reduced "tiny" code size printf and puts support 62- errno setting enhanced in libm routines 63- new --enable-newlib-reent-check-verify configure option to verify reent memory 64- <fenv.h> support added 65- <sys/time.h> and <sys/_timespec.h> synced with FreeBSD 66- timeval macros moved to <sys/time.h> 67- newlib wide char conversion functions updated to Unicode 11.0 68- new msp430-elfbare target support 69- AMD GCN port 70- PRU port 71- nbdm port 72- various standard improvements 73 74*** Major changes in newlib version 3.1.0: 75 76- global stdio streams support added for reent small 77- _CLOCKID_T made system configurable 78- generated Unicode 10.0 width data, case conversion data, 79 character category data 80- Unicode table generation scripts fixed/enhanced 81- performance enhancements for qsort, strstr 82- nvptx port added 83- sinf/cosf/sincosf/exp/exp2/log/log2/pow rewritten for performance and accuracy 84- various gcc warnings fixed 85- various standard improvements 86 87 88*** Major changes in newlib version 3.0.0: 89 90- K&R support removed in code and docs 91- 64-bit time_t support 92- riscv platform support added 93- new expf, exp2f, logf, and powf implementations 94- unification of lock object names 95- locking routine retargetting at link time 96- new long double complex math routines 97- various ARM optimizations 98- various POSIX/BSD additions 99- further feature test macros overhaul 100 101*** Major changes in newlib version 2.5.0: 102 103- memory.h added 104- some header file reorganization 105- doc fixes 106- ctype rewrite 107- added per-locale string functions 108- additional feature test macro overhaul 109 110*** Major changes in newlib version 2.4.0: 111 112- feature test macro overhaul 113- new string functions (e.g. timingsafe_bcmp) 114- new stdlib functions (e.g. arc4random) 115- simplified versioning macros for newlib 116- Changelog files deprecated 117 118*** Major changes in newlib version 2.3.0: 119 120- dynamic atexit logic fixed 121- various arm performance enhancements 122- new version of strtold 123- doc improvements 124- arc platform support redone 125- strftime improvements/enhancements 126- imported logic from FreeBSD 127- locking fixes 128- complex math enhancements 129- visium platform support added 130- or1k platform support added 131 132*** Major changes in newlib version 2.2.0: 133 134- multiple functional/performance enhancements for arm/aarch64 135- new nano formatted I/O support 136- replacement of or16/or32 with or1k platform 137- qsort_r support 138- additional long double math routines 139- ito/utoa/ltoa 140- restructuring of gmtime/localtime so tz functions only linked by localtime 141- unlocked I/O functions 142- various warning clean-ups 143 144*** Major changes in newlib version 2.1.0: 145 146- multibyte decimal point support added to 147 scanf family 148- multiple changes for FreeBSD compatibility 149- multiple RTEMS changes for Linux compatibility 150- addition of restrict keyword 151- nano-malloc support added 152- global atexit support added 153- new nds32 platform support 154- new msp430 platform support 155- new nios2 platform support 156- lite exit support 157- updated arm support (aarch64) 158- newlib ported to x86_64-pc-cygwin 159 160*** Major changes in newlib version 2.0.0: 161 162- addition of aarch64 platform support 163- addition of epiphany platform support 164- addition of 'm' printf conversion specifier 165- memrchr function added 166- removal of many compiler warnings 167- removal of enable-newlib-fp-hw option and 168 deprecation of mathfp directory 169- type of offset in file structure changed from int to off_t 170- new optimized arm math routines 171- various bug fixes 172 173*** Major changes in newlib version 1.20.0: 174 175* I/O lock clean-up 176* fixes to strftime/strptime 177* fixes to arm support 178* new NO_INCLUDE_LIST configuration support 179* rl78 platform support contributed 180* sparc-leon platform support contributed 181* cvs-to-git mirroring of newlib 182* various bug fixes 183 184*** Major changes in newlib version 1.19.0: 185 186* complex math functions 187* locale support extended to maintain wide char values of native strings 188* eXtensible Data Record (XDR) support for Cygwin 189* wide char functions updated to Unicode 5.2 190* additional locale charsets 191* POSIX standard adherence improvements 192* tic6x platform support contributed 193* cr16 platform support contributed 194* various bug fixes 195 196*** Major changes in newlib version 1.18.0: 197 198* wide-char enhancements 199* long double math routines added for platforms where LDBL == DBL 200* long long math routines added 201* math cleanup 202* UTF-16 modifications for Cygwin 203* major locale charset overhaul including added charsets 204* added moxie platform 205* added rx platform 206* added xc16x platform 207* various cleanups 208* various bug fixes 209 210*** Major changes in newlib version 1.17.0: 211 212* new C99 wide-char function additions 213* lm32 platform support contributed 214* movement of regex functions from sys/linux directory into 215 shared libc/posix directory 216* string function optimizations 217* redesign of formatted I/O to reduce dependencies when using 218 sprintf/sscanf family of functions 219* numerous warning cleanups 220* documentation fixes to support pdf, info, ps formats and 221 eclipse libhover hover docs 222* various bug fixes 223 224*** Major changes in newlib version 1.16.0: 225 226* mep-elf support contributed 227* x86_64 support added 228* reentrant I/O clean-up 229* various new C functions added from C99, POSIX, SUSV, etc.. 230* switch to use top-level libtool 231* spu floating-point environment and stdio enhancement 232* fastmath support 233* various bug fixes 234 235*** Major changes in newlib version 1.15.0: 236 237* new platforms added (bfin, spu, fido) 238* merge of csl branch changes (e.g. m68k) 239* additional C99 support (printf modifiers, strtod, isnan/isinf) 240* new configuration option to turn off dynamic allocation for atexit 241* reentrancy added for read / write functions 242* Cygwin fixes (e.g. POSIX read file flush behavior) 243* switch to autoconf 2.5.9 244* use of aclocal/automake 1.9.6 245* various bug fixes and doc cleanups 246 247*** Major changes in newlib version 1.14.0: 248 249* new platforms added (cris, mt, m32c) 250* more locking protection macros added 251* various C99/POSIX/SUSV3 compliance issue improvements 252* reentrancy cleanup 253* header file improvements (e.g. adding RTEMS stdint.h/inttypes.h) 254* various math fixes 255* changes made to allow use of gcc4 to build newlib 256* general bug fixes and cleanups 257 258*** Major changes in newlib version 1.13.0: 259 260* optimized iconv support 261* new configuration option to disable syscalls in newlib (e.g. sys/arm) 262* new configuration options controlling long long, long double support 263* ability of configuration options to override platform defaults 264* improved locking protection for file I/O functions 265* new reentrant functions 266* various fixes to allow building under FC3 and Debian Linux 267* cxa exit support 268* new platforms (e.g. crx) 269* new iprintf and iscanf family functions 270 271*** Major changes in newlib version 1.12.0: 272 273* general iconv support added 274* major cleanup with linux header files regarding warnings 275* thread-safety and reentrancy fixes 276* additional wide character C99 functions 277* addition of %lc, %ls, %S, and %C printf format specifiers 278* doc cleanup 279 280*** Major changes in newlib version 1.11.0: 281 282* enhanced EL/IX support for i[3456]86-pc-linux 283* new --enable-newlib-elix-level configuration option 284* positional arg I/O support for printf family (--enable-newlib-io-pos-args) 285* support for the Fujitsu FRV architecture added by Red Hat 286* support for Motorola Altivec and SPE added by Red Hat 287* new small reentrancy structure support 288* dynamic reentrancy structure support 289 290*** Major changes in newlib version 1.10.0: 291 292* libtool support for i[3456]86-pc-linux native builds 293* addition of libm/machine/i386 directory, for i386 fast math routines 294 295*** Major changes in newlib version 1.9.0: 296 297* i[3456]86-pc-linux support 298 299* Long Double I/O support via the WANT_IO_LONG_DBL flag 300 301* addition of reentrant environment functions 302 303* addition of xscale and AVR platforms 304 305* severe reduction in the number of warnings issued 306 307* consolidation of many RTEMS features into shared headers 308 309*** Major changes in newlib version 1.8.2: 310 311* RTEMS features and fixes from Joel Sherrill. 312 313* More work on reentrant routines. 314 315* Floating point math library check, --enable-newlib-hw-fp. 316 317*** Major changes in newlib version 1.8.1: 318 319* Added check for --enable-newlib-mb configure option which defines the 320 MB_CAPABLE macro. Multibyte support for JIS, SJIS, and EUC-JP implemented. 321 322* Reduced code size for libm modules. 323 324* Replaced the BSD malloc with Doug Lea's malloc. 325 326*** Major changes in newlib version 1.8.0: 327 328* Added simulated signal handling functions _raise_r, _signal_r, raise, and 329 signal except for sparc-sun-sunos*, i[3456]86-*-sco*, and a29k-*-* systems, 330 which already provide access to signal. The signal functionality provided 331 does not interact with hardware generated signals. 332 333* Added reentrant function rand_r from POSIX.1c. 334 335* Removed _asctime, _next, _scanpoint, and _signgam fields from struct 336 _reent. These are no longer necessary since there are now functions 337 that explictly support multiple threads (asctime_r, ctime_r, gamma_r, 338 gmtime_r, lgamma_r, localtime_r, rand_r, & strtok_r). 339 340 341*** Major changes in newlib version 1.7.0: 342 343* Cross compiler target libraries are now built in a subdir of the top level 344 build directory. 345 346 Old way: build 347 /newlib 348 /m68020 349 /m68881 350 New way: 351 build 352 /m68k-coff 353 /m68020 354 /m68881 355 356 where m68020 and m68881 are multilib subdirectories 357 358* m68k targets support --disable options to avoid building unwanted versions 359 of the libraries. 360 361 --disable-softfloat - don't build libc, libg++, etc. for -msoft-float 362 --disable-m68881 - don't build libc, libg++, etc. for -m68881 363 --disable-m68000 - don't build libc, libg++, etc. for -m68000 364 --disable-m68020 - don't build libc, libg++, etc. for -m68020 365 366 These options have *no* effect on the default libraries, so if the default 367 is -m68020, --disable-m68020 is nilpotent. 368 369* Reentrancy support in libm removed. 370 371* strtok, strtol, strtoul, assert, div, ldiv, qsort, vfprintf 372 replaced with NetBSD versions. 373 374* Support for systems with 32 bit "doubles" added. 375 376* unctrl added. 377 378* dtoa.c updated from upstream dtoa.c soruces (netlib.att.com) 379 380* Various bug fixes. 381 382*** Major changes in newlib version 1.6.1: 383 384* Added reentrant functions (asctime_r, ctime_r, gmtime_r, localtime_r, 385and strtok_r) from POSIX.1c. 386 387* Removed _asctime_r and _strtok_r functions. 388