source: trunk/doc/ReleaseNotes.os2@ 400

Last change on this file since 400 was 399, checked in by bird, 22 years ago

* empty log message *

  • Property cvs2svn:cvs-rev set to 1.3
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 4.9 KB
Line 
1
2
3 R e l e a s e N o t e s
4 +------------------------+
5
6
7v3.2.2 Alpha 3:
8---------------
9
10 Primarily bugfixes.
11
12 o Changed code generator for floating point truncations (double to int
13 casts and such) so PM can freely mess up the fpu status.
14
15 o We were using the wrong float.h in two sense. We're now using the
16 correct one which includes all the PC defines and prototypes.
17
18 o Fixed a few issues with error defines and tcpip.
19 Note that some of the error defines have changed value in the process
20 so we could become compatible with the tcpip stack and FreeBSD.
21
22 o Corrected bugs in a number of headers.
23
24 o Added more OS/2 prototypes and imports. There is still work left on
25 the header part,
26
27 o Optimized emxomf debug info conversion.
28
29 o Wrapped bsdselect for BSD 4.4 header mode to implement bsdselect().
30
31 o .... what did we forget...
32
33
34v3.2.2 Alpha 2:
35---------------
36
37 A few bugfixes and a couple of new features.
38
39 o The TCP/IP headers and libraries scheme have been changed.
40 The default is the current OS/2 tcpip toolkit (BSD 4.4 based).
41 To target the older OS/2 tcpip stack (BSD 4.3 based) you must
42 define TCPV40HDRS before including any TCP/IP headers and make
43 sure usr/lib/tcpipv4 is searched before usr/lib (this is to get
44 the right libsocket). It is recommended to use the -D compiler
45 option for the define and either the LIBRARY_PATH or the -L
46 compiler/linker option for the library.
47
48 o There are a couple of new and updated based on FreeBSD 5.1.
49 sys\stdint.h and inttypes.h (and a few internal once) are new.
50 sys\types.h and unistd.h are the ones most heavily updated.
51 We're working on getting the headers and libc in a better shape
52 standardwise to easy compatability and portability.
53
54 o A infinite loop in emxomf has been fixed.
55
56 o Linker error on sopen() has been corrected.
57
58 o .... what did we forget...
59
60
61v3.2.2 Alpha 1:
62---------------
63
64 This is the first release from Innotek, and it contains the Innotek LIBC.
65 In addition to the new LIBC there is a number of other major changes:
66
67 o Name mangling in OMF mode have changed.
68 Until this release emxomf used to pretty much strip one leading '_'
69 from symbols when converting them to omf. This is now longer done
70 chiefly in order to correctly support mangling calling conventions
71 like __stdcall and __cdecl. This change have the following side
72 effects:
73 - _System and __cdecl no longer produces the same names and hence
74 all OS/2 API which are _System must be declared as _System in
75 order to link.
76 - Assembly code might need an extra underscore to work, or
77 perhaps change the prototypes to _System.
78 - Global variables are prepended and underscore, so mixing VAC and
79 GCC, or accessing globals from asm, take care.
80 (MSC v6.0 does this too, so it's not any uncommon practise.)
81
82 The OS/2 headers which are included are all updated to use _System.
83
84 o TCPIP headers are updated a quite a bit to match the toolkit ones
85 and to reflect the fact that the new libc does not a having common
86 handle space for files and sockets. These changes aren't 100%
87 completed yet, and usage probably will uncover some issues left in
88 there. Also for the programmer there is the following changes in
89 the apis provided:
90 - TCPV40HDRS are supported and should work like with the toolkit
91 headers. It will alias all functions to tcpip40_ editions
92 (using #defines) so we get the right imports thru -llibsocket.
93 - There is no support for sockets in select(). To do select on
94 sockets you will have to use bsdselect() or os2_select().
95 bsdselect() is only available for TCPV40HDRS. For
96 !defined(TCPV40HDRS) fd_set is in the emx/bsd format and not the
97 OS/2 tcpip v5.0 format.
98 - Socket IOCTLs are not supported by the ioctl() libc function
99 because of the separate handle space for sockets. For sockets
100 so_ioctl() and os2_ioctl() are used. os2_ioctl() is not available
101 when TCPV40HDRS is defined. According to the tcpref in v5.0
102 so_ioctl() only supports BSD ioctls.
103 - writev() and readv() also clashes with libc. For socket handles
104 use so_writev() and so_readv().
105
106 o The prefered OMF linker is now ilink. link386 will fail with an odd
107 error message if you tell gcc/g++ to make debug info. Set the
108 EMXOMFLD_LINKER environment variable to value ilink in order to use
109 ilink as OMF linker.
110 It likely that we will change the default OMF linker to ilink in an
111 later version of the GCC suite.
112
113 o .... what did we forget...
Note: See TracBrowser for help on using the repository browser.