| 1 |
|
|---|
| 2 |
|
|---|
| 3 | R e l e a s e N o t e s G C C f o r O S / 2
|
|---|
| 4 | +----------------------------------------------------+
|
|---|
| 5 |
|
|---|
| 6 |
|
|---|
| 7 | (C)'2003-2004 InnoTek Systemberatung GmbH
|
|---|
| 8 | http://www.innotek.de
|
|---|
| 9 |
|
|---|
| 10 |
|
|---|
| 11 | v3.2.2 Beta 4:
|
|---|
| 12 | --------------
|
|---|
| 13 |
|
|---|
| 14 | (The changelog is removed, thus the release notes are more detailed.)
|
|---|
| 15 |
|
|---|
| 16 | New features and fixes:
|
|---|
| 17 |
|
|---|
| 18 | o Filehandle rewrite. Files, pipes and sockets now share the same
|
|---|
| 19 | handle space.
|
|---|
| 20 |
|
|---|
| 21 | o Updated binutils from v2.11.2 to v2.14 adding as-elf.exe and
|
|---|
| 22 | ld-elf.exe as goodies for the adventurous.
|
|---|
| 23 |
|
|---|
| 24 | o GCC defines __INNOTEK_LIBC__=0x005.
|
|---|
| 25 | The value reflects the LIBC version, form: 0xGMM
|
|---|
| 26 | Where G=major version and MM=middle version numbers.
|
|---|
| 27 |
|
|---|
| 28 | o Changed library search algorithms for the linkers (emxomfld
|
|---|
| 29 | and ld). Three variations, static, shared and shared+dll.
|
|---|
| 30 | (The options indicated corresponds to what binutils 2.12.x
|
|---|
| 31 | documents.)
|
|---|
| 32 | static: (-Bstatic, -non_shared, -dn, -static)
|
|---|
| 33 | 1. libfoo_s.a
|
|---|
| 34 | 2. foo_s.a
|
|---|
| 35 | 3. libfoo.a
|
|---|
| 36 | 4. foo.a
|
|---|
| 37 | shared: (default, -Bshared, -call_shared, -dy)
|
|---|
| 38 | 1. libfoo_dll.a
|
|---|
| 39 | 2. foo_dll.a
|
|---|
| 40 | 3. libfoo.a
|
|---|
| 41 | 4. foo.a
|
|---|
| 42 | 5. libfoo_s.a
|
|---|
| 43 | 6. foo_s.a
|
|---|
| 44 | shared+dll: (-Zdll-search with -Bshared, -call_shared, -dy)
|
|---|
| 45 | 1. libfoo_dll.a
|
|---|
| 46 | 2. foo_dll.a
|
|---|
| 47 | 3. libfoo.a
|
|---|
| 48 | 4. foo.a
|
|---|
| 49 | 5. foo.dll
|
|---|
| 50 | 6. libfoo_s.a
|
|---|
| 51 | 7. foo_s.a
|
|---|
| 52 |
|
|---|
| 53 | o Added some deadlock checking/termination checks to semphores.
|
|---|
| 54 |
|
|---|
| 55 | o Added macros to os2emx.h for preserving FPU control word and
|
|---|
| 56 | applied these to certing read and write operations in LIBC.
|
|---|
| 57 |
|
|---|
| 58 | o Added feature to emxomfld to automatically convert a.out
|
|---|
| 59 | libraries and objects to OMF (using temporary files). Enabled
|
|---|
| 60 | by default but can be disabled by the option -Zno-autoconv.
|
|---|
| 61 |
|
|---|
| 62 | o Added support to emximp for dlls.
|
|---|
| 63 |
|
|---|
| 64 | o Added support for automatic conversion of dlls to temporary
|
|---|
| 65 | import libraries emxomfld and ld.
|
|---|
| 66 |
|
|---|
| 67 | o Added getopt_long() and changed getopt() to FreeBSD
|
|---|
| 68 | implementations.
|
|---|
| 69 |
|
|---|
| 70 | o Added a few more code page aliases.
|
|---|
| 71 |
|
|---|
| 72 | o Added optional breakpoint in abort. The presense of the env.var.
|
|---|
| 73 | LIBC_BREAKPOINT_ABORT triggers the breakpoint instruction.
|
|---|
| 74 |
|
|---|
| 75 | o Added syslog interfaces (contrib from Yuri Dario).
|
|---|
| 76 |
|
|---|
| 77 | o Added to libc and updated BSD db code to FreeBSD 5.1 level.
|
|---|
| 78 |
|
|---|
| 79 | o Added to libc and updated regex code to FreeBSD 5.1 level.
|
|---|
| 80 |
|
|---|
| 81 | o Ported the posix spawn api from GLIBC v2.3.2.
|
|---|
| 82 |
|
|---|
| 83 | o Updated with os2emx.h flags for DosQueryMemState().
|
|---|
| 84 |
|
|---|
| 85 | o Changed size_t to unsigned int (from unsigned long int) and
|
|---|
| 86 | ptrdiff_t to signed int (from signed long int) to comply with
|
|---|
| 87 | most of the other i386 environments.
|
|---|
| 88 |
|
|---|
| 89 | o Changed abort and default signal termination messages to say
|
|---|
| 90 | which process it's printed from.
|
|---|
| 91 |
|
|---|
| 92 | o Changed the glob() and globfree() implemenation with a port of
|
|---|
| 93 | the FreeBSD 5.1 implemenation.
|
|---|
| 94 |
|
|---|
| 95 | o Changed so_ioctl() to os2_ioctl() to better match the toolkit.
|
|---|
| 96 |
|
|---|
| 97 | o Changed time_t to be signed as in BSD & linux.
|
|---|
| 98 | (Negative values means date/time before epoc.)
|
|---|
| 99 |
|
|---|
| 100 | o Changed to FreeBSD implementation of difftime().
|
|---|
| 101 |
|
|---|
| 102 | o Increased default stream buffer size to 2 pages.
|
|---|
| 103 |
|
|---|
| 104 | o Workaround for DosSetFileLocksL() on non JFS volumes.
|
|---|
| 105 |
|
|---|
| 106 | o Workaround for bad FIL_STANDARDL buffer handling in os2krnl.
|
|---|
| 107 |
|
|---|
| 108 | o Fixed waitpid() to respect the WNOHANG flag.
|
|---|
| 109 |
|
|---|
| 110 | o Fixed strerror() to set errno if an invalid error number is
|
|---|
| 111 | specified.
|
|---|
| 112 |
|
|---|
| 113 | o Fixed problem with emxexp emitting ordinal without being told.
|
|---|
| 114 |
|
|---|
| 115 | o Fixed broken setenv().
|
|---|
| 116 |
|
|---|
| 117 | o Fixed errno value for read() and write() when the handle isn't
|
|---|
| 118 | opened for that operation.
|
|---|
| 119 |
|
|---|
| 120 | o Fixed a bad record length problem in emxomf.
|
|---|
| 121 |
|
|---|
| 122 | o Fixed type_tag too long issue in emxomf.
|
|---|
| 123 |
|
|---|
| 124 | o Fixed repetition of main source file in HLL debuginfo (emxomf).
|
|---|
| 125 |
|
|---|
| 126 | o Fixed weakld problem with selfrefering aliases.
|
|---|
| 127 |
|
|---|
| 128 | o Fixed weakld problem with PUBLIC and COMM clash.
|
|---|
| 129 |
|
|---|
| 130 | o Fixed problem with streams not being flushed on termination.
|
|---|
| 131 |
|
|---|
| 132 | o Fixed define clash in float.h when in C99 mode.
|
|---|
| 133 |
|
|---|
| 134 | o Fixed abend in GCC if TMPDIR or TMP was ending with a slash.
|
|---|
| 135 |
|
|---|
| 136 | o Fixed crash in ld when having fixups to weak symbols.
|
|---|
| 137 |
|
|---|
| 138 | o Fixed bad conversion of dll0*.o to OMF, the OMF version got an
|
|---|
| 139 | unwanted stack object.
|
|---|
| 140 |
|
|---|
| 141 | o New functions:
|
|---|
| 142 | isblank(), ishexnumber(), isnumber(), mempcpy(), realpath(),
|
|---|
| 143 | strnlen(), asctime_r(), ctime_r(), gmtime_r(), localtime_r(),
|
|---|
| 144 | strerror_r(), usleep().
|
|---|
| 145 |
|
|---|
| 146 | o New functions & globals (from FreeBSD 5.1):
|
|---|
| 147 | imaxabs(), imaxdiv(), strtoimax(), strtoumax(), hcreate(),
|
|---|
| 148 | hdestroy(), hsearch(), insque(), lfind(), lsearch(),
|
|---|
| 149 | remque(), tdelete(), tfind(), tsearch(), twalk(), reallocf(),
|
|---|
| 150 | strsignal(), sys_signame, sys_siglist, sys_nsig, regcomp(),
|
|---|
| 151 | regerror(), regexec(), regfree(), + bsd db functions.
|
|---|
| 152 |
|
|---|
| 153 | o New functions (from GLIBC 2.3.2):
|
|---|
| 154 | error(), error_at_line(), strndup(), argz_add(),
|
|---|
| 155 | argz_add_sep(), argz_append(), argz_count(), argz_create(),
|
|---|
| 156 | argz_create_sep(), argz_delete(), argz_extract(),
|
|---|
| 157 | argz_insert(), argz_next(), argz_replace(), argz_stringify(),
|
|---|
| 158 | posix_spawnp() posix_spawn(), posix_spawnattr_destroy(),
|
|---|
| 159 | posix_spawnattr_getflags(), posix_spawnattr_getpgroup(),
|
|---|
| 160 | posix_spawnattr_getschedparam(),
|
|---|
| 161 | posix_spawnattr_getschedpolicy(),
|
|---|
| 162 | posix_spawnattr_getsigdefault(),
|
|---|
| 163 | posix_spawnattr_getsigmask(), posix_spawnattr_init(),
|
|---|
| 164 | posix_spawnattr_setflags(), posix_spawnattr_setpgroup(),
|
|---|
| 165 | posix_spawnattr_setschedparam(),
|
|---|
| 166 | posix_spawnattr_setschedpolicy(),
|
|---|
| 167 | posix_spawnattr_setsigdefault(),
|
|---|
| 168 | posix_spawnattr_setsigmask(),
|
|---|
| 169 | posix_spawn_file_actions_addclose(),
|
|---|
|
|---|