Blame sgmls-1.1/vms.cfg

Packit Service 87bb26
/* vms.cfg: Configuration file for sgmls on VAX/VMS.
Packit Service 87bb26
/* For VAX/VMS V5.3 and VAX C V3.2-044.
Packit Service 87bb26
Contributed by John Lavagnino <LAV@BINAH.CC.BRANDEIS.EDU>. */
Packit Service 87bb26
Packit Service 87bb26
/* Define HAVE_EXTENDED_PRINTF if your *printf functions supports
Packit Service 87bb26
X/Open extensions; if they do, then, for example,
Packit Service 87bb26
Packit Service 87bb26
  printf("%2$s%1$s", "bar", "foo")
Packit Service 87bb26
Packit Service 87bb26
should print `foobar'.  */
Packit Service 87bb26
Packit Service 87bb26
/* #define HAVE_EXTENDED_PRINTF 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define HAVE_CAT if your system provides the X/Open message
Packit Service 87bb26
catalogue functions catopen() and catgets(), and you want to use them.
Packit Service 87bb26
An implementations of these functions is included and will be used if
Packit Service 87bb26
you don't define this.  On SunOS 4.1.1, if you do define this you
Packit Service 87bb26
should set CC=/usr/xpg2bin/cc in the makefile. */
Packit Service 87bb26
Packit Service 87bb26
/* #define HAVE_CAT 1 */
Packit Service 87bb26
Packit Service 87bb26
#ifdef __STDC__
Packit Service 87bb26
/* Define this if your compiler supports prototypes. */
Packit Service 87bb26
#define USE_PROTOTYPES 1
Packit Service 87bb26
#endif
Packit Service 87bb26
#define USE_PROTOTYPES 1
Packit Service 87bb26
Packit Service 87bb26
#ifdef __OBJECTCENTER__
Packit Service 87bb26
/* Define this if you have <varargs.h> but not <stdarg.h> */
Packit Service 87bb26
#define VARARGS 1
Packit Service 87bb26
#endif
Packit Service 87bb26
Packit Service 87bb26
#ifndef USE_PROTOTYPES
Packit Service 87bb26
/* Use VARARGS if prototypes are not supported. */
Packit Service 87bb26
#ifndef VARARGS
Packit Service 87bb26
#define VARARGS 1
Packit Service 87bb26
#endif
Packit Service 87bb26
#endif /* not USE_PROTOTYPES */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you do not have strerror(). */
Packit Service 87bb26
/* #define STRERROR_MISSING 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this unless the character testing functions in ctype.h
Packit Service 87bb26
are defined for all values representable as an unsigned char.  You do
Packit Service 87bb26
not need to define this if your system is ANSI C conformant.  You
Packit Service 87bb26
should define for old Unix systems. */
Packit Service 87bb26
/*  This has been defined for VMS because its iscntrl says that
Packit Service 87bb26
  128 through 159 are controls; SHUNCHAR CONTROLS believes that, and you
Packit Service 87bb26
  can get messages like
Packit Service 87bb26
    "Non-significant shunned character number 158 not declared UNUSED"
Packit Service 87bb26
  as a result: that's what happens with the grplvl.sgm test.  (See
Packit Service 87bb26
  sgmldecl.c for the use of iscntrl that leads to this, and Goldfarb
Packit Service 87bb26
  page 455 for the rule that's being followed.)  With this
Packit Service 87bb26
  symbol defined, the VMS version of isascii is used together with
Packit Service 87bb26
  iscntrl, and isascii is false for eight-bit characters.
Packit Service 87bb26
    The setting here also affects the form of the output: without the
Packit Service 87bb26
  isascii test the program is led to believe that some codes with the
Packit Service 87bb26
  eighth bit set are OK to put in the output without translation,
Packit Service 87bb26
  because with the eighth bit masked off they look like ordinary letters.
Packit Service 87bb26
  That happened with output from the test02.sgm test file.  See
Packit Service 87bb26
  lineout.c, uses of isprint, for the code that's involved here.
Packit Service 87bb26
                                                               JDL */
Packit Service 87bb26
#define USE_ISASCII 1
Packit Service 87bb26
Packit Service 87bb26
/* Define this if your system provides the BSD style string operations
Packit Service 87bb26
rather than ANSI C ones (eg bcopy() rather than memcpy(), and index()
Packit Service 87bb26
rather than strchr()). */
Packit Service 87bb26
/* #define BSD_STRINGS 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have getopt(). */
Packit Service 87bb26
/* #define HAVE_GETOPT 1 */
Packit Service 87bb26
Packit Service 87bb26
/*  Much VMSish stuff here.
Packit Service 87bb26
    Not sure what a good default path is: the one here's just a
Packit Service 87bb26
   guess.  The unix.cfg default was:
Packit Service 87bb26
Packit Service 87bb26
   #define DEFAULT_PATH "/usr/local/lib/sgml/%O/%C/%T:%N.%X:%N.%D"
Packit Service 87bb26
Packit Service 87bb26
   which is better in that it uses elements from the formal
Packit Service 87bb26
   identifier rather than the parameter entity name.
Packit Service 87bb26
    FILE_SEP variables set to comma rather than colon: colon can appear
Packit Service 87bb26
   in a filename, and comma is the usual thing on VMS to separate
Packit Service 87bb26
   directories in a pathlist.
Packit Service 87bb26
    In MIN_DAT_SUBS we map slashes to dashes, since % is not a legal
Packit Service 87bb26
   VMS filename character. */
Packit Service 87bb26
Packit Service 87bb26
#define PATH_FILE_SEP ','
Packit Service 87bb26
#define DEFAULT_PATH "sgml_public:%N.%C"
Packit Service 87bb26
#define PATH_ENV_VAR "SGML_PATH"
Packit Service 87bb26
#define SYSID_FILE_SEP ','
Packit Service 87bb26
#define MIN_DAT_SUBS_FROM " /"
Packit Service 87bb26
#define MIN_DAT_SUBS_TO   "_-"
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have access(). */
Packit Service 87bb26
/*  VMS has access(), but it's one of those half-implemented functions
Packit Service 87bb26
   in the run-time library: it checks only UIC protection and not
Packit Service 87bb26
   ACLs, in VAX C V3.2-044.  So it's better to use the replacement
Packit Service 87bb26
   code provided in entgen.c that just tries to open the file. */
Packit Service 87bb26
/* #define HAVE_ACCESS 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have <unistd.h>. */
Packit Service 87bb26
/* #define HAVE_UNISTD_H 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have waitpid(). */
Packit Service 87bb26
/* #define HAVE_WAITPID 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this to omit tracing functions */
Packit Service 87bb26
/* #define FINAL 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this you want support for subdocuments.  This is implemented
Packit Service 87bb26
using features that are not part of Standard C. */
Packit Service 87bb26
/* Turned off on VMS: the unixproc.c and portproc.c approaches both
Packit Service 87bb26
  sort of work, but there are problems getting the output of the
Packit Service 87bb26
  subprocess to go the same place as the main process output.
Packit Service 87bb26
  Decided I didn't need this enough to mess with it for now.  JDL */
Packit Service 87bb26
/* #define SUPPORT_SUBDOC 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if your system is POSIX.1 (ISO 9945-1:1990) compliant. */
Packit Service 87bb26
/* #define POSIX 1 */
Packit Service 87bb26
Packit Service 87bb26
/* POSIX.1 compliant systems will certainly have access(), <unistd.h>,
Packit Service 87bb26
and waitpid(). */
Packit Service 87bb26
#ifdef POSIX
Packit Service 87bb26
#ifndef HAVE_ACCESS
Packit Service 87bb26
#define HAVE_ACCESS 1
Packit Service 87bb26
#endif
Packit Service 87bb26
#ifndef HAVE_UNISTD_H
Packit Service 87bb26
#define HAVE_UNISTD_H 1
Packit Service 87bb26
#endif
Packit Service 87bb26
#ifndef HAVE_WAITPID
Packit Service 87bb26
#define HAVE_WAITPID 1
Packit Service 87bb26
#endif
Packit Service 87bb26
#endif /* POSIX */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have the vfork() system call. */
Packit Service 87bb26
#define HAVE_VFORK 1
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you have <vfork.h>. */
Packit Service 87bb26
/* #define HAVE_VFORK_H 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you don't have <stdlib.h> */
Packit Service 87bb26
/* #define STDLIB_H_MISSING 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you don't have <stddef.h> */
Packit Service 87bb26
/* #define STDDEF_H_MISSING 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you don't have remove(); unlink() will be used instead. */
Packit Service 87bb26
/* #define REMOVE_MISSING 1 */
Packit Service 87bb26
Packit Service 87bb26
/* Define this if you don't have raise(); kill() will be used instead. */
Packit Service 87bb26
#define RAISE_MISSING 1
Packit Service 87bb26
Packit Service 87bb26
/* Universal pointer type. */
Packit Service 87bb26
/* Use this if your compiler doesn't fully support void * */
Packit Service 87bb26
/* typedef char *UNIV; */
Packit Service 87bb26
/* Otherwise use this */
Packit Service 87bb26
typedef void *UNIV;
Packit Service 87bb26
Packit Service 87bb26
/*  VAX C V3.2-044 rejects the following typedef for some reason.
Packit Service 87bb26
   But the #define seems to work. */
Packit Service 87bb26
/* typedef void VOID; */            /* void as a function return type */
Packit Service 87bb26
#define VOID void
Packit Service 87bb26
Packit Service 87bb26
/* If you don't have an ANSI C conformant <limits.h>, define
Packit Service 87bb26
CHAR_SIGNED as 1 or 0 according to whether the `char' type is signed.
Packit Service 87bb26
The <limits.h> on some versions of System Release V 3.2 is not ANSI C
Packit Service 87bb26
conformant: the value of CHAR_MIN is 0 even though the `char' type is
Packit Service 87bb26
signed. */
Packit Service 87bb26
Packit Service 87bb26
/* #define CHAR_SIGNED 1 */
Packit Service 87bb26
/* #define CHAR_SIGNED 0 */
Packit Service 87bb26
#ifndef CHAR_SIGNED
Packit Service 87bb26
#include <limits.h>
Packit Service 87bb26
#if CHAR_MIN < 0
Packit Service 87bb26
#define CHAR_SIGNED 1
Packit Service 87bb26
#else
Packit Service 87bb26
#define CHAR_SIGNED 0
Packit Service 87bb26
#endif
Packit Service 87bb26
#endif /* not CHAR_SIGNED */
Packit Service 87bb26
Packit Service 87bb26
/* Assume the system character set is ISO Latin-1. */
Packit Service 87bb26
#include "latin1.h"
Packit Service 87bb26
Packit Service 87bb26
/*  Stuff for use in main.c to remove VMS device, directory, extension,
Packit Service 87bb26
   and version number from error messages.
Packit Service 87bb26
    We don't need PROG_FOLD, which does upper-to-lower-case folding,
Packit Service 87bb26
   because VMS does it already. */
Packit Service 87bb26
Packit Service 87bb26
#define PROG_PREFIX "]:"
Packit Service 87bb26
#define PROG_STRIP_EXTENSION 1
Packit Service 87bb26
Packit Service 87bb26
/* Define VMS exit codes.
Packit Service 87bb26
     stdlib.h is here because it defines its own EXIT_SUCCESS and
Packit Service 87bb26
   EXIT_FAILURE, which are just 0 and 2; we want nice values that
Packit Service 87bb26
   don't trigger VMS messages like
Packit Service 87bb26
	%NONAME-E-NOMSG, Message number 00000002
Packit Service 87bb26
     So we run stdlib.h here and then redefine these exit codes
Packit Service 87bb26
   afterwards. */
Packit Service 87bb26
Packit Service 87bb26
#ifdef VMS
Packit Service 87bb26
#  pragma nostandard
Packit Service 87bb26
#  include stdlib
Packit Service 87bb26
#  include ssdef
Packit Service 87bb26
#  include stsdef
Packit Service 87bb26
#  pragma standard
Packit Service 87bb26
#  define EXIT_SUCCESS		SS$_NORMAL
Packit Service 87bb26
#  define EXIT_FAILURE		(STS$K_SEVERE | STS$M_INHIB_MSG)
Packit Service 87bb26
#endif
Packit Service 87bb26
Packit Service 87bb26
/* Odd VMS include file for process functions (system, execvp). */
Packit Service 87bb26
Packit Service 87bb26
#ifdef VMS
Packit Service 87bb26
# ifdef SUPPORT_SUBDOC
Packit Service 87bb26
#  pragma nostandard
Packit Service 87bb26
#  include processes
Packit Service 87bb26
#  pragma standard
Packit Service 87bb26
# endif
Packit Service 87bb26
#endif