List of new features in SCO 2.3 Dev Sys

Ross Oliver rosso at sco.COM
Tue Feb 28 09:00:44 AEST 1989


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.



More information about the Comp.unix.xenix mailing list