Changeset 1229


Ignore:
Timestamp:
Feb 12, 2004, 1:40:00 PM (21 years ago)
Author:
bird
Message:

...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/doc/ReleaseNotes.os2

    • Property cvs2svn:cvs-rev changed from 1.16 to 1.17
    r1228 r1229  
    2323          Where G=major version and MM=middle version numbers.
    2424
    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.)
    2829          static: (-Bstatic, -non_shared, -dn, -static)
    2930            1. libfoo_s.a
     
    5253          applied these to certing read and write operations in LIBC.
    5354
    54         o Added feature to emxomfld to automatically convert a.out libraries
    55           and objects to OMF (using temporary files). Enabled by default
    56           but 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.
    5758
    5859        o Added support to emximp for dlls.
    5960
    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.
    6466
    6567        o Added a few more code page aliases.
     
    8284          most of the other i386 environments.
    8385
    84         o Changed abort and default signal termination messages to say which
    85           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.
    8688
    8789        o Changed the glob() and globfree() implemenation with a port of
     
    131133        o Fixed crash in ld when having fixups to weak symbols.
    132134
    133         o Fixed bad conversion of dll0*.o to OMF, the OMF version got an unwanted
    134           stack object.
     135        o Fixed bad conversion of dll0*.o to OMF, the OMF version got an
     136          unwanted stack object.
    135137
    136138        o New functions:
     
    141143        o New functions & globals (from FreeBSD 5.1):
    142144            imaxabs(), imaxdiv(), strtoimax(), strtoumax(), hcreate(),
    143             hdestroy(), hsearch(), insque(), lfind(), lsearch(), remque(),
    144             tdelete(), tfind(), tsearch(), twalk(), reallocf(), strsignal(),
    145             sys_signame, sys_siglist, sys_nsig, regcomp(), regerror(),
    146             regexec(), 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.
    147149
    148150        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(),
    156160            posix_spawnattr_getsigmask(), posix_spawnattr_init(),
    157161            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(),
    160166            posix_spawn_file_actions_addclose(),
    161167            posix_spawn_file_actions_adddup2(),
    162168            posix_spawn_file_actions_addopen(),
    163169            posix_spawn_file_actions_destroy(),
    164             posix_spawn_file_actions_init(), posix_spawnp()
     170            posix_spawn_file_actions_init()
    165171
    166172        o New headers:
     
    202208        o Added large file support.
    203209
    204         o Enabled high memory support for LIBC. Two new options to GCC: -Zhigh-mem
    205           and -Zhigh-low. If the program is to be enabled for high memory use, specify
    206           -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.
    207213
    208214          Note that socket is not high memory enabled yet.
     
    222228        o Added file locking support to LIBC.
    223229
    224         o Fixed _System and _Optlink bugs and made _Optlink support floating
    225           point argument passing in registers.
     230        o Fixed _System and _Optlink bugs and made _Optlink support
     231          floating point argument passing in registers.
    226232
    227233        o Header updates related to limits and file locking primarily.
     
    241247        o Locale support in libc.
    242248
    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.
    277287
    278288        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.)
    289301
    290302        o Distribution is splitted into several zips:
    291303            -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.
    293306            -prf.zip:   Profiling libraries and libc02.prf.
    294307            libc.zip:   The runtime libraries. (included in core.)
     
    300313    Primarily bugfixes.
    301314
    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.
    307321
    308322        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.
    311326
    312327        o Corrected bugs in a number of headers.
    313328
    314         o Added more OS/2 prototypes and imports. There is still work left on
    315           the header part,
     329        o Added more OS/2 prototypes and imports. There is still work
     330          left on the header part,
    316331
    317332        o Optimized emxomf debug info conversion.
    318333
    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().
    320336
    321337        o .... what did we forget...
     
    331347          To target the older OS/2 tcpip stack (BSD 4.3 based) you must
    332348          define TCPV40HDRS before including any TCP/IP headers and make
    333           sure usr/lib/tcpipv4 is searched before usr/lib (this is to get
    334           the right libsocket). It is recommended to use the -D compiler
    335           option for the define and either the LIBRARY_PATH or the -L
    336           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.
    337353
    338354        o There are a couple of new and updated based on FreeBSD 5.1.
    339355          sys\stdint.h and inttypes.h (and a few internal once) are new.
    340356          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 shape
    342           standardwise 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.
    343359
    344360        o A infinite loop in emxomf has been fixed.
     
    352368---------------
    353369
    354     This is the first release from Innotek, and it contains the Innotek LIBC.
     370    This is the first release from InnoTek, and it contains the InnoTek LIBC.
    355371    In addition to the new LIBC there is a number of other major changes:
    356372
Note: See TracChangeset for help on using the changeset viewer.