Installation guide

You must remove calls to routines in these libraries from your
application if you want to compile it on a DIGITAL UNIX system. Also,
be sure to omit references to these libraries from the command line you
use to build the application.
7.6.2 ULTRIX BSD Compatibility Library
The DIGITAL UNIX system provides the libbsd.a library to allow you to
use library routines that are compatible with ULTRIX BSD library
routines. Table 7–7 lists the routines in the library and describes the BSD
compatibility they offer. The most significant behavior of the routines in this
library are siginterrupt() and signal(), which restart system calls
that are interrupted by signals. (The default, in compliance with the POSIX
standard, is not to restart system calls that are interrupted by signals.)
To use the BSD functions, use the D_BSD and lbsd options on the
compilation line.
Table 7–7: Routines in the ULTRIX BSD Compatibility Library
Routine Name Compatibility
int ftime(struct timeb *)
Allows your application to continue to
use the ftime function, which is not
otherwise provided on DIGITAL UNIX
systems. This feature has been made
obsolete by the gettimeofday()
function.
char *mktemp(char *)
Constructs a unique file name; expects a
string of at least six characters with
trailing ’X’ characters, and overwrites
the ’X’ characters with a unique
encoding of the process’s process
identification (PID) and a pseudorandom
number. Unlike the standard DIGITAL
UNIX mktemp(), this routine is not
thread safe.
int nice(int)
Returns a value in the range from 20 to
20. By default, the DIGITAL UNIX
system defines process priorities in the
range from 0 to 39. This is the same
range defined on System V systems.
Additionally, if the libc version of
nice() fails, errno may be set to the
same values as by the setpriority()
function.
Migrating Your ULTRIX Application to a DIGITAL UNIX System 7–37