Mercurial > nand-ecoscentric
diff packages/language/c/libc/current/ChangeLog @ 2:443894e2e912 ecos-v1_2_1-release
Block commit of eCos version 1.2.1
| author | jlarmour |
|---|---|
| date | Tue, 11 May 1999 12:24:34 +0000 |
| parents | 3111d98ba7b3 |
| children | 1d7f19c9e4d1 |
line wrap: on
line diff
--- a/packages/language/c/libc/current/ChangeLog +++ b/packages/language/c/libc/current/ChangeLog @@ -1,3 +1,861 @@ +1999-04-19 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/time.inl: + Ensure all calls to cyg_libc_time_year_is_leap() are with the full + year, and not the direct contents of a struct tm, which are (year-1900) + +1999-04-15 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/clibincl/stdiosupp.hxx: + Add prototype for new cyg_libc_stdio_flush_all_but() function + + * src/clibincl/stream.hxx: + Don't include stdiosupp.hxx any more to prevent circular dependency, + therefore manually provide _setvbuf prototype + Make sure pkgconf/kernel.h is included before mutex.hxx + + * src/clibincl/stream.inl (Cyg_StdioStream::set_error()): + Add missing unlock_me() + + * src/stdio/common/fflush.cxx: + Separate most of code for fflush(NULL) into separate + cyg_libc_stdio_flush_all_but() function, which has the extra + capability of omitting one stream + + * src/stdio/common/stderr.cxx: + * src/stdio/common/stdin.cxx: + * src/stdio/common/stdout.cxx: + * src/stdio/common/vsnprintf.cxx: + * src/stdio/common/vsscanf.cxx: + Add missing clibincl/stdiosupp.hxx include + + * src/stdio/common/stream.cxx (Cyg_StdioStream::read()): + When reading, ensure we flush all output streams + + * src/stdio/common/stream.cxx (Cyg_StdioStream::flush_output_unlocked): + Flush the device as well + +1999-04-15 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/stdio/common/streambuf.cxx (set_buffer): + * src/stdio/common/stdioinlines.cxx (_setbuf): + * src/clibincl/streambuf.inl: + * src/clibincl/streambuf.hxx: + * src/clibincl/stream.hxx (class Cyg_StdioStream): + * include/pkgconf/libc.h: + * include/stdio.inl (setbuf): + Fix dumb typo: BUFSIZE -> BUFSIZ + This fixes PR19837 + +1999-04-15 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/stdio/common/stdioinlines.cxx (_setbuf): + * include/stdio.inl (setbuf): + Use _IONBF when buf==NULL, and _IOLBF otherwise. + Fix for PR 19836 + +1999-04-15 John Dallaway <jld@cygnus.co.uk> + + * include/pkgconf/libc.h: Tidy display string capitalization. + +1999-04-12 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h: + Clarify CDL description of CYGNUM_LIBC_MALLOC_MEMPOOL_SIZE + + * tests/signal/signal2.c: Try harder to generate an exception by + accessing a misaligned address + Don't handle SIGTRAP any more + Part of fix for PRs 19731/19607 + +1999-04-07 Jesper Skov <jskov@cygnus.co.uk> + PR 19667 + * src/support/mainthread.cxx: + Changed to use the new Cyg_Thread constructor. + +1999-04-07 Hugo Tyson <hmt@cygnus.co.uk> + + * tests/signal/signal2.c (main): Use new macro + HAL_VSR_SET_TO_ECOS_HANDLER if defined, to wrest control from + CygMon, for example, by reinstalling eCos' default VSRs for + exceptions that we are provoking. + +1999-03-29 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/signal/siginit.cxx: Include stdlib.h for exit() + Fix for PR 19720 + +1999-03-29 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/time/clock.c (test): Disable instruction cache + Hopefully fixes PR 19308 + +1999-03-29 Jesper Skov <jskov@cygnus.co.uk> + + * tests/signal/signal2.c: Disabled test 3 for PPC as it cannot + trap division by zero. + +1999-03-26 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/support/main.cxx (main): Invoke cyg_user_start() if no kernel + Only sensible thing to do in our default main in a non-kernel config + +1999-03-25 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/time/time.c: + Increase MAX_TIMEOUT since the sparclite gets very close to overrunning + it even when working. + Should return -1 iff CYGSEM_LIBC_TIME_TIME_WORKING isn't defined + Cosmetic changes + +1999-03-25 Hugo Tyson <hmt@cygnus.co.uk> + + * tests/time/time.c (test): Take into account setting of + CYGSEM_LIBC_TIME_SETTIME_WORKING ie. does cyg_libc_time_settime() + work? If not, check that it returns an error. + This was exposed by the random combo in PR#19479. + +1999-03-23 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h: + Rename CYGSEM_LIBC_RAND_SIMPLEST and CYGSEM_LIBC_RAND_KNUTH1 to + CYGIMP_... + + Add another rand implementation CYGIMP_LIBC_RAND_SIMPLE1 which is + the default + + Part of fix for PR 19562 + + * include/sys/cstartup.h: + Tidy and remove unnecessary dependencies + + * src/stdlib/rand.cxx: + Rename algorithms from CYGSEM_... to CYGIMP_... + Add new "simple1" algorithm + + * tests/ctype/ctype.c: + Tidy + + * tests/stdlib/rand3.c: + Fix so that 0..RAND_MAX is split evenly over buckets, which it wasn't + before + Deal with case of RAND_MAX not being divisible by NUM_BUCKETS + exactly + Increase TEST_LENGTH to 200000 to provide more representative sample + Add CYG_TEST_INFO output to help ensure it doesn't time out + Tidy + + * tests/stdlib/rand4.c: + Only fail if more than _two_ thirds (rather than one third) match. + This is because half would match for a perfectly random distribution + This is the rest of the fix for PR 19562 + Cosmetic changes + +1999-03-22 Hugo Tyson <hmt@cygnus.co.uk> + + * src/support/mainthread.cxx (CYGNUM_LIBC_MAIN_STACK_SIZE): + Use CYGNUM_HAL_STACK_SIZE_TYPICAL for the stack size instead of + CYGNUM_HAL_MINIMUM_STACK_SIZE. + +1999-03-22 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/PKGconf.mak: Add -Wno-format when building strftime otherwise + it generates warnings for things that we do want to test (null + string, and %y format) + +1999-03-19 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h (CYGNUM_LIBC_TIME_DST_DEFAULT_STATE): + Put brackets back round negative number since sdf says the config + tool is fixed now (PR 19537) + + Add new CYGSEM_LIBC_RAND_SIMPLEST and CYGSEM_LIBC_RAND_KNUTH1 + options for different rand() algorithms in a so far failed attempt + to fix PR 19562 + + * src/stdlib/rand.cxx: + Add new optional algorithm from Knuth vol.2 + + * tests/stdlib/rand4.c: + Some tidies + Don't run test when using simplest algorithm + + * tests/signal/signal2.c (main): + Don't try to make an FPE on tx39 - its possible to detect but requires + too much HAL work to be sensible + +1999-03-18 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/signal/siginit.cxx (cyg_libc_signals_hwexcept_handler): + Use HAL_ENABLE_INTERRUPTS() rather than kernel to enable interrupts + +1999-03-18 Mark Galassi <rosalia@cygnus.com> + + * tests/PKGconf.mak (TESTS): added rand4 compilation. + + * tests/stdlib/rand4.c: added this test for periodicity in the + least significant bit of rand(). + +1999-03-18 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h: Remove CYGFUN_LIBC_TIME_POSIX dependency + on CYGPKG_LIBC_STDIO + + * src/stdlib/itoa.cxx: + New file to convert integers to ascii + + * include/stdlib.h: + Add proto for new cyg_libc_itoa() function + + * include/time.inl: + Rework __asctime_r() to use memcpy() and cyg_libc_itoa() rather than + sprintf() + + * src/PKGconf.mak: + Build stdlib/itoa.cxx + + The above changes fix PR 19448 + +1999-03-17 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/time.h: Add #define of __time_t_defined to placate newlib + if it is used by accident. This is just a temporary workaround though. + +1999-03-16 Gary Thomas <gthomas@cygnus.co.uk> + + * src/PKGconf.mak: Add compile option to step around ARM compiler bug. + +1999-03-16 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h (CYGNUM_LIBC_TIME_DST_DEFAULT_STATE): + Don't use parentheses for now + + * src/stdio/common/stream.cxx (refill_read_buffer): + Silence bogus compiler warning + +1999-03-16 Jesper Skov <jskov@cygnus.co.uk> + + * tests/signal/signal2.c (main): Enable SIGSEGV test for + i386/Linux. + + +1999-03-15 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/signal/siginit.cxx (cyg_libc_signals_hwexcept_handler): + Only enable interrupts if they were disabled + + * include/sys/timeutil.h: + * src/time/timeutil.cxx: + Add FIX ME line as a reminder that the workaround there can go away + in future + + * include/pkgconf/libc.h: + Add proper define for CYGSEM_LIBC_EXIT_CALLS_FFLUSH + Put brackets round negative CYGNUM_LIBC_TIME_DST_DEFAULT_STATE define + Fix run time typo + + * include/time.inl (__localtime_r): + Include sys/timeutil.h before this to get + cyg_libc_time_normalize_structtm() + +1999-03-12 Gary Thomas <gthomas@cygnus.co.uk> + + * include/sys/timeutil.h: + * src/time/timeutil.cxx: Remove 'const' from char arrays since + this fails [silently] on ARM when -fwritable-strings (PR19440) + +1999-03-12 Jesper Skov <jskov@cygnus.co.uk> + + * tests/signal/signal2.c (main): Compiler warnings fix was + slightly broken. + +1999-03-12 Jesper Skov <jskov@cygnus.co.uk> + PR 19473 + * tests/signal/signal2.c (main): + Disabling SIGTRAP handling on i386/Linux is not a good idea. +1999-03-11 Jesper Skov <jskov@cygnus.co.uk> + PR 19473 + * tests/signal/signal2.c: + Added compiler warnings fix. + Added N/A handling for i386/Linux. + +1999-03-10 Gary Thomas <gthomas@cygnus.co.uk> + + * include/pkgconf/libc.h: Force "haldiag" device to be present. + 'asctime' and friends need 'stdio' as well. + + * include/time.inl: Fix syntax error on difftime() declaration. + +1999-03-08 Gary Thomas <gthomas@cygnus.co.uk> + + * src/clibincl/stream.hxx: <cyg/infra/cyg_ass.h> needed for this file. + + * src/stdio/common/vsscanf.cxx (str_read): Fix problem with string + pointer [created by merge with new I/O package]. + +1999-03-05 John Dallaway <jld@cygnus.co.uk> + + * include/pkgconf/libc.h: + Add legal values for CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET + and CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET. + +1999-03-05 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/time.inl (cyg_libc_time_year_is_leap): + Fix bug with modulo year 400 + Fix typo in asctime_r macro + Fix gmtime_r, and mktime as a result of testing + + * tests/time/asctime.c, tests/time/ctime.c, tests/time/gmtime.c, + tests/time/gmtime.c, tests/time/localtime.c, tests/time/mktime.c, + tests/time/strftime.c, tests/time/time.c: + New tests + + * tests/PKGconf.mak: + Build above new tests + + * include/pkgconf/libc.h: + Add reminder FIX ME about extra config option + + * src/time/strftime.cxx: + Fix %w and %Y parameters as a result of testing + + * src/time/timeutil.cxx: + Fix cyg_libc_time_normalize_structtm() as a result of testing + of mktime() + + * tests/time/clock.c: + Reformat, remove obsolete bits and tidy + + * include/time.h: + Add Cyg_libc_time_dst type and new functions + cyg_libc_time_setzoneoffsets(), cyg_libc_time_setdst(), + cyg_libc_time_getzoneoffsets(), cyg_libc_time_settime() + + * include/time.inl: + Implement the above functions. This allows us to adjust for timezone + diffences and set the time. + Change localtime() to adjust for STD/DST + Change mktime() to adjust for STD/DST + + * include/libc.h: + Add new config options CYGSEM_LIBC_TIME_SETTIME_WORKING + and component CYGPKG_LIBC_TIME_ZONES containing options + CYGNUM_LIBC_TIME_DST_DEFAULT_STATE, + CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET, + CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET + + * src/strftime.cxx: + Adjust handling of %Z to _not_ deal with STD/DST + + * src/time/settime.cxx: + New file to implement cyg_libc_time_settime() + + * src/PKGconf.mak: + Build settime.cxx + + * src/time/timeutil.cxx: + Supply outline versions of cyg_libc_time_setzoneoffsets(), + cyg_libc_time_setdst(), and cyg_libc_time_getzoneoffsets() + Add variables for STD/DST state + Some minor comment changes + + * include/errno.h: + Use CYGBLD_ATTRIB_CONST instead of __attribute__((const)) directly + + * include/signal.h: + Change format of function comment headers + + * include/signal.inl: + Restrict errno.h inclusion to when its actually used + Fix a spelling typo + + * include/stdlib.h: + Add CYGBLD_ATTRIB_CONST to abs, div, labs, ldiv + + * include/stdlib.inl: + Reformat and tidy + Include new versions of div and ldiv which are more portable and + are cleanly rewritten so aren't covered by the BSD licence, which + is now removed + + * src/stdlib/div.cxx, src/stdlib/ldiv.cxx: + Non-inline, non-BSD and portable versions of the new versions of div + and ldiv from stdlib.inl + + * include/time.h: + Much reformatting, tidying and improving comments + Change CLOCKS_PER_SEC from 1000 to 1000000 + Add new functions asctime_r, ctime_r, gmtime_r, localtime_r, clock, + difftime, mktime, time, asctime, ctime, gmtime, localtime, strftime + Include new time.inl file + + * include/pkgconf/libc.h: + Add new options CYGSEM_LIBC_TIME_CLOCK_WORKING, + CYGSEM_LIBC_TIME_TIME_WORKING, CYGFUN_LIBC_TIME_POSIX, + CYGNUM_LIBC_TIME_CLOCK_TRACE_LEVEL, CYGIMP_LIBC_TIME_ASCTIME_INLINE, + CYGIMP_LIBC_TIME_CTIME_INLINE, CYGIMP_LIBC_TIME_DIFFTIME_INLINE, + CYGIMP_LIBC_TIME_GMTIME_INLINE, CYGIMP_LIBC_TIME_LOCALTIME_INLINE, + CYGIMP_LIBC_TIME_MKTIME_INLINE, CYGIMP_LIBC_TIME_ASCTIME_R_INLINE, + CYGIMP_LIBC_TIME_CTIME_R_INLINE, CYGIMP_LIBC_TIME_GMTIME_R_INLINE, + and CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE + + * time/asctime.cxx, time/asctime_r.cxx, time/clock.cxx, time/ctime.cxx, + time/ctime_r.cxx, time/difftime.cxx, time/gmtime.cxx, + time/gmtime_r.cxx, time/localtime.cxx, time/localtime_r.cxx, + time/mktime.cxx, time/strftime.cxx, time/time.cxx, time/timeutil.cxx, + include/time.inl: + New files to implement the new time functions. Many of them simply + provide the outline definitions, but the real body of the function + comes from time.inl + + * src/PKGconf.mak: + Build new .cxx files + + * src/clibincl/stdlibsupp.hxx: + Remove _div and _ldiv prototypes since they're no longer needed + + * src/clibincl/timesupp.hxx: + Delete as its now obsolete + + * src/time/clock.cxx: + Use new CYGSEM_LIBC_TIME_CLOCK_WORKING option to control whether it + just returns (clock_t)-1 or not. + Much reformatting and tidying + Change real imlpementation from _clock to __clock + Use CYGBLD_ATTRIB_WEAK_ALIAS now + + * tests/stdlib/div.c, tests/stdlib/ldiv.c: + Add some extra tests for handling of negative numbers + Reformat and tidy a bit, including removing the test for CYGPKG_LIBC + since its now always defined if the test is to be compiled + + * tests/time/clock.c: + Remove duplication CYG_TEST_INFO line + Check if unimplemented using "(clock_t)-1" and not just "-1" + +1999-03-04 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/stdlib/system.cxx: + Make sure system() is a weak alias for __system() + + * include/pkgconf/libc.h: Rework CDL description for + CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE and change its default to + "/dev/haldiag" + + * src/stdio/common/stream.cxx: + Check that dev is valid when passed to stream constructor + + * src/stdio/common/stdiosupp.cxx: + Tidy + + * src/support/mainthread.cxx: Make this depend on + CYGSEM_LIBC_STARTUP_MAIN_THREAD rather than just CYGPKG_KERNEL + +1999-03-04 Gary Thomas <gthomas@cygnus.co.uk> + + Merged in changes from 'ecos-new_devs-19990216-branch' + + (1999-02-24 Jonathan Larmour <jlarmour@cygnus.co.uk>) + + * src/stdio/common/stream.cxx: + Add "fix me" comments and remove a couple of commented out lines + + * src/stdio/common/vsnprintf.cxx: + * src/stdio/common/vsscanf.cxx: + Revert to using pointer to string for private data, not just string. + This preserves the state across multiple calls + + (1999-02-24 Gary Thomas <gthomas@cygnus.co.uk>) + + * src/stdio/common/vsscanf.cxx: + * src/stdio/common/vsnprintf.cxx: + * src/stdio/common/stream.cxx: + * src/stdio/common/stdiosupp.cxx: + * src/stdio/common/fopen.cxx: + * src/clibincl/stream.inl: + * src/clibincl/stream.hxx: + * src/clibincl/stdiosupp.hxx: + * include/pkgconf/libc.h: Changes for new I/O system. + +1999-03-03 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/stdlib/atexit.c: Forgot to config atexit test for + CYGFUN_LIBC_ATEXIT option + + * include/pkgconf/libc.h: + Require CYGVAR_KERNEL_THREADS_DATA for CYGSEM_LIBC_PER_THREAD_STRTOK + This fixes PR 19362 + Require CYGPKG_KERNEL for thread safe streams + Also don't need "requires CYGPKG_KERNEL" for per-thread rand and errno + if we already require a finer granularity kernel option + +1999-02-25 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/pkgconf/libc.h: Fix CYGNUM_LIBC_MAIN_STACK_SIZE by changing + CYGPKG_LIBC_STARTUP_MAIN_THREAD -> CYGSEM_LIBC_STARTUP_MAIN_THREAD + Fix for PR 19304 + +1999-02-23 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/stdlib/system.cxx: Add to implement trivial system() call + * include/stdlib.h: Add system() prototype + * src/PKGconf.mak: Build system.cxx + + * tests/ctype/ctype.c, tests/i18n/setlocale.c, tests/setjmp/setjmp.c, + tests/signal/signal1.c, tests/signal/signal2.c, + tests/stdio/sprintf1.c, tests/stdio/sprintf2.c, tests/stdio/sscanf.c, + tests/stdio/stdiooutput.c, tests/stdlib/atexit.c, + tests/stdlib/atoi.c, tests/stdlib/atol.c, tests/stdlib/bsearch.c, + tests/stdlib/div.c, tests/stdlib/getenv.c, tests/stdlib/labs.c, + tests/stdlib/ldiv.c, tests/stdlib/malloc1.c, tests/stdlib/malloc2.c, + tests/stdlib/malloc3.c, tests/stdlib/qsort.c, tests/stdlib/rand1.c, + tests/stdlib/rand2.c, tests/stdlib/rand3.c, tests/stdlib/realloc.c, + tests/stdlib/srand.c, tests/stdlib/strtol.c, tests/stdlib/strtoul.c, + tests/string/memchr.c, tests/string/memcmp1.c, + tests/string/memcmp2.c, tests/string/memcpy1.c, + tests/string/memcpy2.c, tests/string/memmove1.c, + tests/string/memmove2.c, tests/string/memset.c, + tests/string/strcat1.c, tests/string/strcat2.c, + tests/string/strchr.c, tests/string/strcmp1.c, + tests/string/strcmp2.c, tests/string/strcoll1.c, + tests/string/strcpy1.c, tests/string/strcpy2.c, + tests/string/strcspn.c, tests/string/strlen.c, + tests/string/strncat1.c, tests/string/strncat2.c, + tests/string/strncpy1.c, tests/string/strncpy2.c, + tests/string/strpbrk.c, tests/string/strrchr.c, + tests/string/strspn.c, tests/string/strstr.c, tests/string/strtok.c, + tests/string/strxfrm1.c, tests/string/strxfrm2.c, tests/time/clock.c: + Use CYG_TEST_NA() macro for non-applicable test configurations + +1999-02-20 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/signal.h: + * include/signal.inl: + * src/signal/raise.cxx: + * src/signal/siginit.cxx: + * src/signal/signal.cxx: + * tests/signal/signal1.c + * tests/signal/signal2.c: + New files to implement ISO standard signals + + * src/PKGconf.mak (TESTS): + * tests/PKGconf.mak (TESTS): + Update to build new files above + + * include/stdlib.h: + * src/clibincl/stdlibsupp.hxx: + Comment and QA changes (including giving better names to some types) + + * include/libc.h: + Add new configuration options for signals + Add new CYGSEM_LIBC_STARTUP_MAIN_THREAD option + Add a note to CYGNUM_LIBC_MAIN_STACK_SIZE option that it may be + overriden by HAL + Add new CYGFUN_LIBC_ATEXIT option and move ...ATEXIT_HANDLERS under + it + Add new CYGSEM_LIBC_EXIT_CALLS_FFLUSH option + Require CYGSEM_LIBC_STARTUP_MAIN_THREAD for "Invoke default static + constructors" option + + * src/stdlib/atexit.cxx: + Support above CYGFUN_LIBC_ATEXIT and QA changes + + * src/stdlib/exit.cxx: + Support for above new libc.h options, and some QA changes + + * src/support/cstartup.cxx: + Add support for new CYGSEM_LIBC_STARTUP_MAIN_THREAD option + + * src/support/mainthread.cxx: + Override main stack size if the HAL has a minimum + + * src/string/strncpy.cxx: + Use improved algorithm for aligned copies - imported from newlib + QA changes + + * src/stdlib/abort.cxx: + Support raise(SIGABRT), and some QA + + * include/errno.h: + Add const attribute + + * tests/stdlib/abs.c: + QA improvements + +1999-02-04 Jesper Skov <jskov@cygnus.co.uk> + + * src/support/cstartup.cxx: Only define cyg_libc_main_thread when + the kernel is around. + +1999-02-01 Jesper Skov <jskov@cygnus.co.uk> + + * tests/time/clock.c: Joined the two test/NOP checks into + one. + Increased tolerance in attempt to fix PRs 18737,18787,18846. + Fixed typo. + +1999-01-28 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/string/strtok.cxx: + * src/stdlib/rand.cxx: + Include <pkgconf/kernel.h> if we use kernel header files + +1999-01-25 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/stdio/sscanf.c (test): + CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT should be + CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT + Fix for PR 18786 + + * src/string/strtok.cxx: + * src/stdio/common/stdiofiles.cxx: + * src/errno/errno.cxx: + * src/stdlib/rand.cxx: + Give mutex protection objects a libc constructor priority + + * src/support/invokemain.cxx: + Add prototype for cyg_hal_invoke_constructors() + + * src/support/mainthread.cxx: + Give cyg_libc_dummy_constructor_obj a libc constructor priority, + and make its class have a public constructor + + * src/stdio/common/stderr.cxx: + * src/stdio/common/stdout.cxx: + * src/stdio/common/stdin.cxx: + Give cyg_libc_stdio_stdin/out/err static objects a libc constructor + priority + + * src/clibincl/streambuf.hxx (class Cyg_StdioStreamBuffer): + * src/clibincl/stream.hxx (class Cyg_StdioStream): + Remove private copy constructor. Needed to make prioritised + static constructors work. Fix for PR 18898 + +1999-01-22 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/errno/errno.cxx: + Include pkgconf/kernel.h otherwise it fails with per-thread errno + enabled + + * include/pkgconf/libc.h: + Enable per-thread errno by default since that is what POSIX would + want + + * tests/time/clock.c (test): + Placate compiler by initializing clock_first/second/third anyway, + even though they won't be in practice. This is only a test program + so adding an extra instruction doesn't matter. + + * src/i18n/locale.cxx (_setlocale): + Placate compiler, since it is dumb, by nesting, not serializing, if's + This is an idempotent change, but screws up the formatting :-(. + + * src/string/strpbrk.cxx (_strpbrk): + Change while loop to do loop to placate compiler. It'll even save an + instruction too (wow!) + +1999-01-22 John Dallaway <jld@cygnus.co.uk> + + * include/pkgconf/libc.h: + Add closing curly brace to CYGPKG_LIBC_STRING_STRTOK definition + +1999-01-21 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * include/errno.h: + Tidy up and add to header description + Change cyg_get_errno_p() to cyg_libc_get_errno_p() + Remove ifdef CYGPKG_LIBC + + * include/sys/file_if.h: + Remove - move contents to stdio.h + + * include/stdio.h: + Tidy up header description + Move FILE typedef here from sys/file_if.h + SEEK_SET, SEEK_CUR, SEEK_END defined to 0, 1, 2 respectively + for backwards compatibility with old UNIX + Change definitions of stdin/out/err to be addresses of FILE + globals - even though they're actually Cyg_StdioStream it'll work + + * include/pkgconf/libc.h: + Make CYGPRI_LIBC_WEAK et al macros depend on new ones in infra + Reorganise trace options under the individual components they are + associated with. + Reorganise thread-safety options under the individual components + they are associated with. + Add new CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS option + Misc. reformatting + Remove dependency on pkgconf/kernel.h - Configuration Tool will + generate check macros anyway. + Remove CYGPKG_LIBC_TRACE, CYGFUN_LIBC_strtok, CYGPKG_LIBC_RAND + options + Tidy up description header + + * src/clibincl/clibdata.hxx: + * src/clibincl/clibdata.inl: + * src/support/clibdata.cxx: + Remove and instead rely on each component to initialise its own data + + * src/clibincl/stdiofiles.hxx, src/clibincl/stdiofiles.inl: + New files to contain global file list and lock (if applicable). + Implemented as class with member access functions + + * src/errno/errno.cxx: + Reorganise with self-contained per-thread data, if applicable + Remove ifdef CYGPKG_LIBC + Tidy up description header + Rename cyg_get_errno_p() to cyg_libc_get_errno_p() + + * src/stdio/common/fclose.cxx: + * src/stdio/common/fflush.cxx: + * src/stdio/common/fopen.cxx: + * src/stdio/common/freopen.cxx: + Remove ifdef CYGPKG_LIBC + Use new global file access method from stdiofiles.hxx + Tidy up description header + Use new CYGBLD_ATTRIB_WEAK_ALIAS + Access errno "normally" rather than clibdata way + + * src/stdio/common/stdin.cxx: + * src/stdio/common/stdout.cxx + * src/stdio/common/stderr.cxx: + New files. Implement Cyg_StdioStream objects for each stream. In + separate self-contained files so using one doesn't bring in the + others + + * src/stdio/common/stdiofiles.cxx: + New file. Implements global files array and lock + + * src/stdlib/_exit.cxx: + Tidy up description header + Remove ifdef CYGPKG_LIBC + Use infra CYGBLD* macros + + * src/stdlib/malloc.cxx: + Tidy up description header + Remove ifdef CYGPKG_LIBC + Add pkgconf/kernel.h now that pkgconf/libc.h doesn't have it + Use infra CYGBLD* macros + Make pool visible externally with weak attribute and new name + cyg_libc_malloc_memorypool + + * src/stdlib/rand.cxx: + * src/stdlib/strtok.cxx: + Reorganise with self-contained per-thread data, if applicable + Remove ifdef CYGPKG_LIBC + Tidy up description header + Use infra CYGBLD* macros + + * src/support/cstartup.cxx: + Split into smaller files to make selective linking work better, + fix i386 port problem and make GDB happy + + * src/support/environ.cxx: + * src/support/invokemain.cxx: + * src/support/main.cxx: + * src/support/mainthread.cxx: + New files from bits of the old cstartup.cxx + Add support for CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG + + * src/PKGconf.mak: + Update to reflect file additions/deletion + + * tests/stdlib/rand1.c: + * tests/stdlib/rand2.c: + * tests/stdlib/rand3.c: + * tests/stdlib/srand.c: + Make conform to coding standards + Remove ifdef CYGPKG_LIBC_RAND + Tidy up description header + + * tests/string/strtok.c: + Make conform to coding standards + Remove ifdef CYGFUN_LIBC_strtok + Tidy up description header + +1999-01-15 Mark Galassi <rosalia@cygnus.com> + + * tests/stdlib/getenv.c (main): added tests for the case in which + the user does not supply environ and in which the user supplies a + NULL environ. + +1999-01-15 Jesper Skov <jskov@cygnus.co.uk> + + * src/support/cstartup.cxx: Added workaround for weak aliasing + problem in i386 gcc. + + +1999-01-15 Gary Thomas <gthomas@cygnus.co.uk> + + * include/pkgconf/libc.h (CYGNUM_LIBC_MAIN_STACK_SIZE): + (CYGNUM_LIBC_MALLOC_MEMPOOL_SIZE): Change defaults to be + more reasonable on small systems. + +1999-01-04 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/support/clibdata.cxx: + Minor bug with environ not being initialised correctly by + default + +1998-12-24 Bart Veer <bartv@cygnus.co.uk> + + * src/clibincl/stream.inl (Cyg_StdioStream): + check_this() member functions should now be const + +1998-12-22 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/string/memchr.cxx (_memchr): + treat search value parameter to memchr as an unsigned byte, + not a signed int - copied fix from newlib PR 18471 + +1998-12-21 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/stdlib/realloc.c: + * tests/stdlib/malloc3.c: + * tests/stdlib/malloc2.c: + Warning cleanup + +1998-12-14 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/stdlib/malloc2.c, tests/stdlib/malloc3.c, + tests/stdlib/realloc.c: + Only run these tests when we have a coalescing memory allocator + +1998-12-14 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/stdio/common/stream.cxx: + Only check buffer init success if buffering + + * src/stdio/common/streambuf.cxx (set_buffer): + Check for diff of requested size against buffer_size, not + get_buffer_size(), since this may return -1, which won't be + equal to size, and will cause malloc to be called + +1998-12-01 Jesper Skov <jskov@cygnus.co.uk> + + * tests/stdlib/getenv.c (main): Don't declare variables when they + are not used. + +Thu Nov 26 17:59:12 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * tests/string/strncpy1.c: + Fix off-by-one error since it called my_strcmp() and not + my_strncmp(), which meant in included the trailing NULL when it + shouldn't have. + +1998-11-26 Jesper Skov <jskov@cygnus.co.uk> + + * src/stdlib/qsort.cxx (_qsort): + * src/stdlib/rand.cxx (_srand): + Changed CYG_REPORT_FUNCNAMETYPE to CYG_REPORT_FUNCNAME in void + functions. + +Mon Oct 26 18:49:00 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> + + * src/support/cstartup.cxx (cyg_libc_dummy_main): + Silence compiler warning with cast of char * to CYG_ADDRWORD + Wed Oct 28 17:31:21 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> * src/time/clock.cxx (_clock): @@ -1636,7 +2494,7 @@ Thu Mar 19 11:41:56 1998 Jonathan Larmo // September 30, 1998. // // The Initial Developer of the Original Code is Cygnus. Portions created -// by Cygnus are Copyright (C) 1998 Cygnus Solutions. All Rights Reserved. +// by Cygnus are Copyright (C) 1998,1999 Cygnus Solutions. All Rights Reserved. // ------------------------------------------- // //####COPYRIGHTEND####
