Changeset 1229
- Timestamp:
- Feb 12, 2004, 1:40:00 PM (21 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/doc/ReleaseNotes.os2 ¶
-
Property cvs2svn:cvs-rev
changed from
1.16
to1.17
r1228 r1229 23 23 Where G=major version and MM=middle version numbers. 24 24 25 o Changed library search algorithms for the linkers (emxomfld and ld). 26 Three variations, static, shared and shared+dll. (The options 27 indicated corresponds to what binutils 2.12.x documents.) 25 o Changed library search algorithms for the linkers (emxomfld 26 and ld). Three variations, static, shared and shared+dll. 27 (The options indicated corresponds to what binutils 2.12.x 28 documents.) 28 29 static: (-Bstatic, -non_shared, -dn, -static) 29 30 1. libfoo_s.a … … 52 53 applied these to certing read and write operations in LIBC. 53 54 54 o Added feature to emxomfld to automatically convert a.out libraries55 and objects to OMF (using temporary files). Enabled by default56 b ut can be disabled by the option -Zno-autoconv.55 o Added feature to emxomfld to automatically convert a.out 56 libraries and objects to OMF (using temporary files). Enabled 57 by default but can be disabled by the option -Zno-autoconv. 57 58 58 59 o Added support to emximp for dlls. 59 60 60 o Added support for automatic conversion of dlls to temporary import 61 libraries emxomfld and ld. 62 63 o Added getopt_long() and changed getopt() to FreeBSD implementations. 61 o Added support for automatic conversion of dlls to temporary 62 import libraries emxomfld and ld. 63 64 o Added getopt_long() and changed getopt() to FreeBSD 65 implementations. 64 66 65 67 o Added a few more code page aliases. … … 82 84 most of the other i386 environments. 83 85 84 o Changed abort and default signal termination messages to say which85 process it's printed from. (hope this doesn't break anything)86 o Changed abort and default signal termination messages to say 87 which process it's printed from. 86 88 87 89 o Changed the glob() and globfree() implemenation with a port of … … 131 133 o Fixed crash in ld when having fixups to weak symbols. 132 134 133 o Fixed bad conversion of dll0*.o to OMF, the OMF version got an unwanted134 stack object.135 o Fixed bad conversion of dll0*.o to OMF, the OMF version got an 136 unwanted stack object. 135 137 136 138 o New functions: … … 141 143 o New functions & globals (from FreeBSD 5.1): 142 144 imaxabs(), imaxdiv(), strtoimax(), strtoumax(), hcreate(), 143 hdestroy(), hsearch(), insque(), lfind(), lsearch(), remque(),144 tdelete(), tfind(), tsearch(), twalk(), reallocf(), strsignal(),145 s ys_signame, sys_siglist, sys_nsig, regcomp(), regerror(),146 rege xec(), regfree(), + bsd db functions.145 hdestroy(), hsearch(), insque(), lfind(), lsearch(), 146 remque(), tdelete(), tfind(), tsearch(), twalk(), reallocf(), 147 strsignal(), sys_signame, sys_siglist, sys_nsig, regcomp(), 148 regerror(), regexec(), regfree(), + bsd db functions. 147 149 148 150 o New functions (from GLIBC 2.3.2): 149 error(), error_at_line(), strndup(), argz_add(), argz_add_sep(), 150 argz_append(), argz_count(), argz_create(), argz_create_sep(), 151 argz_delete(), argz_extract(), argz_insert(), argz_next(), 152 argz_replace(), argz_stringify(), posix_spawn(), 153 posix_spawnattr_destroy(), posix_spawnattr_getflags(), 154 posix_spawnattr_getpgroup(), posix_spawnattr_getschedparam(), 155 posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigdefault(), 151 error(), error_at_line(), strndup(), argz_add(), 152 argz_add_sep(), argz_append(), argz_count(), argz_create(), 153 argz_create_sep(), argz_delete(), argz_extract(), 154 argz_insert(), argz_next(), argz_replace(), argz_stringify(), 155 posix_spawnp() posix_spawn(), posix_spawnattr_destroy(), 156 posix_spawnattr_getflags(), posix_spawnattr_getpgroup(), 157 posix_spawnattr_getschedparam(), 158 posix_spawnattr_getschedpolicy(), 159 posix_spawnattr_getsigdefault(), 156 160 posix_spawnattr_getsigmask(), posix_spawnattr_init(), 157 161 posix_spawnattr_setflags(), posix_spawnattr_setpgroup(), 158 posix_spawnattr_setschedparam(), posix_spawnattr_setschedpolicy(), 159 posix_spawnattr_setsigdefault(), posix_spawnattr_setsigmask(), 162 posix_spawnattr_setschedparam(), 163 posix_spawnattr_setschedpolicy(), 164 posix_spawnattr_setsigdefault(), 165 posix_spawnattr_setsigmask(), 160 166 posix_spawn_file_actions_addclose(), 161 167 posix_spawn_file_actions_adddup2(), 162 168 posix_spawn_file_actions_addopen(), 163 169 posix_spawn_file_actions_destroy(), 164 posix_spawn_file_actions_init() , posix_spawnp()170 posix_spawn_file_actions_init() 165 171 166 172 o New headers: … … 202 208 o Added large file support. 203 209 204 o Enabled high memory support for LIBC. Two new options to GCC: -Zhigh-mem205 and -Zhigh-low. If the program is to be enabled for high memory use, specify206 -Zhigh-mem when linking.210 o Enabled high memory support for LIBC. Two new options to GCC: 211 -Zhigh-mem and -Zhigh-low. If the program is to be enabled for 212 high memory use, specify -Zhigh-mem when linking. 207 213 208 214 Note that socket is not high memory enabled yet. … … 222 228 o Added file locking support to LIBC. 223 229 224 o Fixed _System and _Optlink bugs and made _Optlink support floating225 point argument passing in registers.230 o Fixed _System and _Optlink bugs and made _Optlink support 231 floating point argument passing in registers. 226 232 227 233 o Header updates related to limits and file locking primarily. … … 241 247 o Locale support in libc. 242 248 243 o Implemented a different approach to OMF and weak symbols. This new hack 244 performs pre-linking before invoking the OMF linker generating new .def 245 files if needed and an extra object file with aliases to resolve the weak 246 symbols correctly. 247 The old approach will be used used when GCC_WEAKSYMS is present in the 248 environment. 249 250 Please note that due to a bug in BFD, weak symbols don't work 100% 251 correctly. This will be addressed as soon as we have performed the switch 252 to a more recent version of binutils. 253 254 o A couple of new functions in libc, and a few corrections to existing 255 in respect to namespaces. 256 257 o Addressed issues with calling conventions. We now detect incompatible 258 calling conventions, emitting warnings and errors where appropriate. 259 260 o _Optlink is much better, but there are still some issues left. Passing 261 prototyped floating point parameters to _Optlink doesn't work. Mixing 262 of parameters which go into registers (eax, edx, ecx) and parameters 263 which don't - void foo(int eax, struct sss s, int edx) - doesn't work. 264 All these issues are being addressed and are expected to be fixed in 265 the next build. 266 267 o Changed GCC to link with shared libc by default. This means that in 268 order to link with the static libc one has to specify -static. 269 It also means that -Zmtd or -Zcrtdll are no longer required for linking 270 with shared libc and can be removed from all makescripts. 271 272 o Changed EMXOMFLD defaults to ilink from Visual Age for C++ v3.6.5 or 273 later (preferably later). The emxomfld usage output will instruct you 274 on how to use older linkers. For VAC308 and VAC365 linkers /dbgpack 275 is specified if debuginfo is to be generated. 276 Emxomf checks for EMXOMFLD_TYPE=link386 when choosing debug info level. 249 o Implemented a different approach to OMF and weak symbols. This 250 new hack performs pre-linking before invoking the OMF linker 251 generating new .def files if needed and an extra object file with 252 aliases to resolve the weak symbols correctly. 253 The old approach will be used used when GCC_WEAKSYMS is present in 254 the environment. 255 256 Please note that due to a bug in BFD, weak symbols don't work 257 100% correctly. This will be addressed as soon as we have 258 performed the switch to a more recent version of binutils. 259 260 o A couple of new functions in libc, and a few corrections to 261 existing in respect to namespaces. 262 263 o Addressed issues with calling conventions. We now detect 264 incompatible calling conventions, emitting warnings and errors 265 where appropriate. 266 267 o _Optlink is much better, but there are still some issues 268 left. Passing prototyped floating point parameters to 269 _Optlink doesn't work. Mixing of parameters which go into 270 registers (eax, edx, ecx) and parameters which 271 don't - void foo(int eax, struct sss s, int edx) - doesn't 272 work. All these issues are being addressed and are expected 273 to be fixed in the next build. 274 275 o Changed GCC to link with shared libc by default. This means 276 that in order to link with the static libc one has to specify 277 -static. It also means that -Zmtd or -Zcrtdll are no longer 278 required for linking with shared libc and can be removed from 279 all makescripts. 280 281 o Changed EMXOMFLD defaults to ilink from Visual Age for C++ 282 v3.6.5 or later (preferably later). The emxomfld usage output 283 will instruct you on how to use older linkers. For VAC308 and 284 VAC365 linkers /dbgpack is specified if debuginfo is to be 285 generated. Emxomf checks for EMXOMFLD_TYPE=link386 when choosing 286 debug info level. 277 287 278 288 o Shipping three extra libc dlls: 279 libc02.dbg: Unstripped version of libc02.dll. This is identical 280 except from the presense of debug info. 281 libc02.prf: Linked together from profiled enabled libraries 282 using kProfiler. 283 libc02.elh: Standard libc but linked with an external eletrical 284 fence heap from kLibDbg. 285 These libc02.* dlls can be used instead of libc02.dll. kLibDbg and 286 kProfiler is available in separate zip files at same location as the 287 rest of the Innotek GCC suite. However these external tools are 288 provided as is. (I might actually not find time to put them out yet.) 289 libc02.dbg: Unstripped version of libc02.dll. This is 290 identical except from the presense of debug 291 info. 292 libc02.prf: Linked together from profiled enabled 293 libraries using kProfiler. 294 libc02.elh: Standard libc but linked with an external 295 electrical fence heap from kLibDbg. 296 These libc02.* dlls can be used instead of libc02.dll. kLibDbg 297 and kProfiler is available in separate zip files at same 298 location as the rest of the InnoTek GCC suite. However these 299 external tools are provided as is. (I might actually not find 300 time to put them out yet.) 289 301 290 302 o Distribution is splitted into several zips: 291 303 -core.zip: All you really need. 292 -dbg.zip: Map files, unstripped tools and libs, and libc02.elh. 304 -dbg.zip: Map files, unstripped tools and libs, and 305 libc02.elh. 293 306 -prf.zip: Profiling libraries and libc02.prf. 294 307 libc.zip: The runtime libraries. (included in core.) … … 300 313 Primarily bugfixes. 301 314 302 o Changed code generator for floating point truncations (double to int 303 casts and such) so PM can freely mess up the fpu status. 304 305 o We were using the wrong float.h in two sense. We're now using the 306 correct one which includes all the PC defines and prototypes. 315 o Changed code generator for floating point truncations (double 316 to int casts and such) so PM can freely mess up the fpu status. 317 318 o We were using the wrong float.h in two sense. We're now using 319 the correct one which includes all the PC defines and 320 prototypes. 307 321 308 322 o Fixed a few issues with error defines and tcpip. 309 Note that some of the error defines have changed value in the process 310 so we could become compatible with the tcpip stack and FreeBSD. 323 Note that some of the error defines have changed value in the 324 process so we could become compatible with the tcpip stack 325 and FreeBSD. 311 326 312 327 o Corrected bugs in a number of headers. 313 328 314 o Added more OS/2 prototypes and imports. There is still work left on315 the header part,329 o Added more OS/2 prototypes and imports. There is still work 330 left on the header part, 316 331 317 332 o Optimized emxomf debug info conversion. 318 333 319 o Wrapped bsdselect for BSD 4.4 header mode to implement bsdselect(). 334 o Wrapped bsdselect for BSD 4.4 header mode to implement 335 bsdselect(). 320 336 321 337 o .... what did we forget... … … 331 347 To target the older OS/2 tcpip stack (BSD 4.3 based) you must 332 348 define TCPV40HDRS before including any TCP/IP headers and make 333 sure usr/lib/tcpipv4 is searched before usr/lib (this is to get334 the right libsocket). It is recommended to use the -D compiler335 option for the define and either the LIBRARY_PATH or the -L336 compiler/linker option for the library.349 sure usr/lib/tcpipv4 is searched before usr/lib (this is to 350 get the right libsocket). It is recommended to use the -D 351 compiler option for the define and either the LIBRARY_PATH or 352 the -L compiler/linker option for the library. 337 353 338 354 o There are a couple of new and updated based on FreeBSD 5.1. 339 355 sys\stdint.h and inttypes.h (and a few internal once) are new. 340 356 sys\types.h and unistd.h are the ones most heavily updated. 341 We're working on getting the headers and libc in a better shape342 s tandardwise to easy compatability and portability.357 We're working on getting the headers and libc in a better 358 shape standardwise to easy compatability and portability. 343 359 344 360 o A infinite loop in emxomf has been fixed. … … 352 368 --------------- 353 369 354 This is the first release from Inno tek, and it contains the Innotek LIBC.370 This is the first release from InnoTek, and it contains the InnoTek LIBC. 355 371 In addition to the new LIBC there is a number of other major changes: 356 372 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.