rosso@sco.COM (Ross Oliver) (02/28/89)
Here are some highlights of changes and additions to the SCO XENIX 2.3.0 Development System: C Compiler: The 286 compiler is now Microsoft C 5.1. The 386 compiler is Microsoft C 4.81. Highlights of the new capabilities include: - Support for "compact" memory model - ANSI preprocessor functions of stringizing and token pasting - Function prototypes See the chapter titled "Converting from Previous Versions of the Compiler" in the C User's Guide for a complete list of differences. COFF support: ld(CP) can link COFF object modules into XENIX binaries. The nm(CP) utility and the xlist(S) and nlist(S) library functions now understand COFF symbol tables. The size(CP), strip(CP), hdr(CP), and fixhdr(C) utilities understand only enough COFF to output a sensible error message if you try to invoke them on a COFF object module or executable. ar(CP) will accept an optional "-" before its arguments, and understands AT&T portable archives. cpp(CP) is the UNIX 5.3 version. ld(CP) now has a maximum number of segments of 8192. The maximum number of libraries on a command line has been raised to 1024. lex(CP) is now an 80386 binary, therefore imposing fewer limits on the maximum sizes of tables adjustable using command line options. make(CP) was built from UNIX 5.3 source, with SCO XENIX modifications. It understands both XENIX archives and AT&T portable archive format. masm(CP) is now version 5.0. New features include: - Full support for 80386 instruction set. - Optional directive to have MASM automatically generate segment definitions. - Significant speed and space performance improvements. - Ability to generate symbolic information for debuggers. For a complete list of new features, see the "New Features" chapter of the Macro Assembler User's Guide. nm(CP) now automatically calculates the size of an executable's symbol table, and allocates adequate space for sorting. This will eliminate previous problems of nm not having sufficient sorting space. prof(CP) has a new command line option, -s, to specify the maximum number of symbols. yacc(CP) now has command line options to adjust the maximum size of the following internal tables: number of actions per rule, optimizer space, number of states, number of rules, number of nonterminal symbols, number of identifiers and literals, number of lookahead sets and number of working sets. These options should eliminate problems with yacc running out of resources. The following utilities are now 80386 binaries, but are otherwise unchanged: asx, cb, diff, strings, strip, admin, bdiff, cdc, comb, cref, ctags, cxref, delta, dosld, get, help (sccs), m4, mkstr, prs, ratfor, rmchg, rmdel, sact, sccsdiff, spline, unget, val, xref, and xstr. Libraries: - The termcap curses library has been completely updated. The library on the distribution is now the same one used in all SCO applications. Many bugs have been fixed. New features added include terminfo-style keypad and attribute fuctions, user-definable attributes, a window dumping fuction to aid in implementing screen printing, and hooks to allow applications programmers to provide their own character output mapping functions. - The terminfo curses library is the UNIX 5.3 library. - The select() library function has been added. - An event library has been added to use event queues for handling mouse and keyboard input. - The math library has been ported from UNIX 5.3. The math library will use the extended functions of an 80387 math coprocessor if one is present. - The dial(S) function has been modified to work with the HDB UUCP dialing scheme. - Advisory file locking is now available. A compile-time option allows the programmer to specify advisory locking (-La) for SVID conformance, or mandatory locking (-Lm) for backward compatibility with releases of SCO XENIX previous to 2.3. - Libraries are provided to support the 286 compact model (one text segment with multiple data segments). - toupper(S) and tolower(S) are now functions in libc by default. A #define can force the usage of the corresponding macros in <ctype.h>. - The libdir library (-ldir) has been added, and contains the UNIX 5.2 compatible versions of opendir(), closedir(), readdir(), seekdir(), and telldir(). Documentation: - The C User's Guide and C Language Reference have been adopted from the Microsoft C 5.0 documentation. New material includes chapters on working with memory models, using compiler optimization, writing portable programs, and an expanded section on compatibility with assembly language. - A section has been added to the C Library Guide on using the event library for mouse and keyboard input. - The Masm 5.0 reference manual is included. - The Device Driver Writer's Guide has been completely reorganized and rewritten. New information on 386-specific kernel functions and DMA access has been added. - Many new example programs have been added to the System Services section of the Programmer's Reference.
ag@crash.cts.com (Keith Gabryelski) (03/02/89)
In article <1738@viscous.sco.COM> uunet!rosso (Ross Oliver) writes: >Here are some highlights of changes and additions to the SCO XENIX >2.3.0 Development System: > > - The select() library function has been added. Also, the System V Release 3 signal stuff has been added -- including software signals [ssignal()], sigset(), sigrelse(), sigignore(), sighold(), and sigpause(). These new signal routines (specifically sigpause()) do not have the problems my posted patches to the 2.1 dev sys/os had. Also, `cc' outputs (more) reasonable error messages (a big thing for me). The documentation is on par with the 2.3 OS docs. That is, compared with earlier SCO documentation, fantastic. I give it two `thumbs up'. Pax, Keith -- Keith Gabryelski UUCP: {cbosgd, hplabs!hp-sdd, sdcsvax, nosc}!crash!ag ARPA: crash!ag@nosc.mil INET: ag@crash.CTS.COM
davidsen@steinmetz.ge.com (William E. Davidsen Jr) (03/03/89)
In article <3877@crash.cts.com> ag@crash.CTS.COM (Keith Gabryelski) writes: | Also, `cc' outputs (more) reasonable error messages (a big thing for me). Have they fixed it not to output the name of the program it's compiling when there's only one? Why must they be different than pcc in that respect? All my toys to check the output of a make file for bugs say "ah, ha! Here's a line I didn't expect!" -- bill davidsen (wedu@ge-crd.arpa) {uunet | philabs}!steinmetz!crdos1!davidsen "Stupidity, like virtue, is its own reward" -me
ked@garnet.berkeley.edu (Earl H. Kinmonth) (03/03/89)
In article <13295@steinmetz.ge.com> davidsen@crdos1.UUCP (bill davidsen) writes: >In article <3877@crash.cts.com> ag@crash.CTS.COM (Keith Gabryelski) writes: > >| Also, `cc' outputs (more) reasonable error messages (a big thing for me). And, what about lint? The output of lint under 2.2 bears no relation to what is claimed in the documentation and still less relation to any format that might lend itself to use with an "error" like message insertion program. By the way, why are prototypes claimed as "new" feature for 2.3? The 2.2 compiler supports them! The problem is that the header files don't have them, and as a recent posting pointed out, the 2.2 documentation does not bother to tell you that the compiler is capable of generating prototypes (for your source code).
chip@vector.UUCP (Chip Rosenthal) (03/04/89)
In article <1738@viscous.sco.COM> uunet!rosso (Ross Oliver) writes: >2.3.0 Development System: > - toupper(S) and tolower(S) are now functions in libc by default. A #define > can force the usage of the corresponding macros in <ctype.h>. I'm curious as to whether this is a SysVism or an SCOism. These have always been quoted as classic examples of macros with side effects. -- Chip Rosenthal chip@vector.UUCP | Choke me in the shallow water Dallas Semiconductor 214-450-5337 | before I get too deep.
rick@pcrat.UUCP (Rick Richardson) (03/05/89)
In article <711@vector.UUCP> chip@vector.UUCP (Chip Rosenthal) writes: >> - toupper(S) and tolower(S) are now functions in libc by default. A #define >I'm curious as to whether this is a SysVism or an SCOism. I think this is an internationalization (what a word!). Something says to me that ctype's are now selectable as an environment option. -- Rick Richardson | JetRoff "di"-troff to LaserJet Postprocessor|uunet!pcrat!dry2 PC Research,Inc.| Mail: uunet!pcrat!jetroff; For anon uucp do:|for Dhrystone 2 uunet!pcrat!rick| uucp jetroff!~jetuucp/file_list ~nuucp/. |submission forms. jetroff Wk2200-0300,Sa,Su ACU {2400,PEP} 12013898963 "" \d\r\d ogin: jetuucp
kory@avatar.UUCP (Kory Hamzeh) (03/06/89)
In article <13295@steinmetz.ge.com>, davidsen@steinmetz.ge.com (William E. Davidsen Jr) writes: > Have they fixed it not to output the name of the program it's > compiling when there's only one? Why must they be different than pcc in Have you tried setting the environment variable QUIETCC to any non-blank value? I shuts up my cc. --kory -- ------------------------------------------------------------------------------- Kory Hamzeh UUCP: ..!uunet!psivax!quad1!avatar!kory INTERNET: avatar!kory@quad.com