diff options
Diffstat (limited to 'Build/source/texk/dviljk/config.h')
-rw-r--r-- | Build/source/texk/dviljk/config.h | 446 |
1 files changed, 446 insertions, 0 deletions
diff --git a/Build/source/texk/dviljk/config.h b/Build/source/texk/dviljk/config.h new file mode 100644 index 00000000000..3b60b73bca4 --- /dev/null +++ b/Build/source/texk/dviljk/config.h @@ -0,0 +1,446 @@ +/* $Id: config.h,v 2.1 1996/05/20 11:05:07 neumann Exp $ */ + +/* gcc -ansi doesn't predefine `unix', since ANSI forbids it. And AIX + generally doesn't predefine unix, who knows why. HP-UX is, of course, + also different. Apple's MacOsX is also unix-like. */ +#ifndef unix +#if defined (__unix__) || defined (_AIX) || defined (_HPUX_SOURCE) +#define unix +#elif defined (__APPLE__) && defined (__MACH__) +#define unix +#elif defined (__NetBSD__) +#define unix +#endif +#endif + +#define USEPXL + +#ifdef __riscos +/* #define RISC_USE_OSL */ /* use file functions of OSlib */ +/* #define RISC_BUFFER */ /* buffer output */ +#endif + +/* + * default font path + * can be overridden by environment variable TEXPXL + * or -a command line option + * popular choice: + * #define FONTAREA "/usr/local/lib/tex/fonts/pk" + */ +#ifndef FONTAREA +# ifdef __riscos +# define FONTAREA "TeXFonts:" +# else +# ifdef vms +# define FONTAREA "tex$pkdir:" +# else +# ifdef _AMIGA +# define FONTAREA "TeXMF:pk" +# else +# define FONTAREA "/usr/local/lib/tex/fonts/pk" +# endif +# endif +# endif +#endif + +/* if DO_SUBDIRECTORIES is specified, search to this depth */ +#ifndef MAX_SUBDIR_SEARCH_DEPTH +#define MAX_SUBDIR_SEARCH_DEPTH 10 +#endif + +/* + * if your LaserJet II P or LaserJet III or LaserJet 2000 + * complains about not enough memory, you might try to reduce + * the value below or uncomment to use the default settings + */ +#if defined (LJ2P) || defined (LJ4) +#define MAX_FONTS_PER_PAGE 255 /* maximum number of fonts per page */ +#endif + + +/* Timing is not very portable.... if you have troubles, use + * -DNO_TIMING in the Makefile + */ + +#ifdef u3b2 +#define NO_TIMING +#endif +#ifdef _AMIGA +#define NO_TIMING +#endif +#ifdef KPATHSEA +#define NO_TIMING +#define MAKETEXPK +#endif +#ifdef __riscos +#define NO_TIMING +#endif + +#ifndef NO_TIMING +#define TIMING +#endif + +/* + * per default use mktexpk in unix environments unless it is not wanted + */ +#ifdef unix +#ifndef MAKETEXPK +/* name of the program which is called to generate missing pk files + */ +#define MAKETEXPK "mktexpk" +#endif +#endif + +#ifdef _AMIGA +#ifndef MAKETEXPK +/* name of the program which is called to generate missing pk files + */ +#define MAKETEXPK "mktexpk" +#endif +#endif + +#ifdef __riscos +#ifndef MAKETEXPK +#define MAKETEXPK "mktexpk" +#endif +#endif + +#ifdef NO_MAKETEXPK +#undef MAKETEXPK +#endif + +/* + * assure that LJ2P is defined when LJ4 is defined; + * compile with support for LJ4's resident fonts + */ +#ifdef LJ4 +#define LJ2P +#define LJ_RESIDENT_FONTS +#endif + +/* + * assure that LJ2 is defined when LJ2P is defined + */ +#ifdef LJ2P +#ifndef LJ2 +#define LJ2 +#endif +#endif + +/* + * assure that LJ is defined when LJ2 of LJ4 is defined + */ +#if defined(LJ2) +#ifndef LJ +#define LJ +#endif +#endif + +/* + * assure that IBM3812 is not defined when LJ is defined + */ +#ifdef LJ +#ifdef IBM3812 +#undef IBM3812 +#endif +#endif + +#ifdef LJ_RESIDENT_FONTS +# ifndef DEFAULT_TFM_PATH +# ifdef __riscos +# define FONTAREA "TeXFonts:" +# else +# define DEFAULT_TFM_PATH "/usr/local/lib/tex/fonts" +# endif +# endif +#endif + + +#define _TRUE (bool) 1 +#define _FALSE (bool) 0 +#define UNKNOWN -1 + +#define STRSIZE 255 /* stringsize for file specifications */ + + +#ifdef __riscos +# ifndef types_H /* for compatibility with OSLib */ +typedef int bool; +# endif +#else +typedef char bool; +#endif + + +/* The smallest signed type: use `signed char' if ANSI C, `short' if + char is unsigned, otherwise `char'. */ +#ifndef SCHAR_TYPE +#if __STDC__ +#define SCHAR_TYPE signed char +#else /* not __STDC */ +#ifdef __CHAR_UNSIGNED__ +#define SCHAR_TYPE short +#else +#define SCHAR_TYPE char +#endif +#endif /* not __STDC__ */ +#endif /* not SCHAR_TYPE */ +typedef SCHAR_TYPE signed_char; + +#if !defined(u3b2) && !defined(LONG_64_BITS) +#define ARITHMETIC_RIGHT_SHIFT +#endif + +#ifndef SIZEOF_LONG +# ifdef __riscos +# define SIZEOF_LONG 8 +# endif +#endif + +#if SIZEOF_LONG > 4 +# define long4 int +#else +# define long4 long +#endif + +#ifdef __STDC__ +#define NeedFunctionPrototypes 1 +#include <stdarg.h> +#else +#define NeedFunctionPrototypes 0 +#include <varargs.h> +#endif + +#if NeedFunctionPrototypes +#define NeedVarargsPrototypes 1 +#endif + +#ifndef KPATHSEA +extern bool findfile( +#if NeedFunctionPrototypes +char path[], char n[], long4 fontmag, char name[], + bool tfm, int level +#endif + ); +#endif + + +/* + * maximal number of characters in font file + * #define LASTFNTCHAR 127 7-bit classic version + * #define LASTFNTCHAR 255 8-bit fonts + */ +#ifdef SEVENBIT +# define LASTFNTCHAR 127 +#else +# define LASTFNTCHAR 255 +#endif + + + +/* this information is needed in findfile.c and dvi2xx.c, NO CUSTOMIZATION */ +#ifdef LJ +# ifndef MFMODE300 +# define MFMODE300 "cx" /* mode definition for metafont 300dpi */ +# endif +# ifdef LJ4 +# ifndef MFMODE600 +# define MFMODE600 "ljfour" /* mode definition for metafont 600dpi */ +# endif +# else +# define MFMODE MFMODE300 /* default mode */ +# endif +#endif + +#ifdef IBM3812 +#define RESOLUTION 240 +#ifndef MFMODE +#define MFMODE "IBMThreeEightOneTwo" /* mode definition for metafont */ +#endif +#endif + +#if defined (unix) && !defined (__DJGPP__) +#define OS "Unix" +#define READ_BINARY "r" +#define WRITE_BINARY "w" +#ifndef labs +#define labs(x) abs(x) +#endif +#endif + +#ifdef MSDOS +# define OS "MS-DOS" +# define READ_BINARY "rb" +# define WRITE_BINARY "wb" +# ifdef __DJGPP__ +# include <io.h> /* for prototype of `setmode' */ +# define AssureBinary(f) setmode((f), O_BINARY) +# else +# define MSC5 /* assume Microsoft C */ +# endif +#endif +#ifdef OS2 +#define OS "OS/2" +#define READ_BINARY "rb" +#define WRITE_BINARY "wb" +#define MSC5 +#endif +#ifdef WIN32 +#define OS "Win32" +#define READ_BINARY "rb" +#define WRITE_BINARY "wb" +# include <io.h> /* for prototype of `_setmode' */ +# define AssureBinary(f) _setmode((f), _O_BINARY) +#define MSC10 +#endif + +#ifdef vms +#define OS "VMS" +#include <ssdef.h> +#include <stsdef.h> +#define ftell vms_ftell /* use some external routines, because */ +#define fseek vms_fseek /* of some bugs in the VMS run time */ +#define getchar vms_getchar /* library */ +#define getenv vms_getenv +#define ungetc vms_ungetc +#define getname vms_getname +#define READ_BINARY "rb" +#define WRITE_BINARY "wb","rfm=fix","bls=512","mrs=512" /* fixed records */ +#define labs(x) abs(x) +#endif + +#ifdef _AMIGA +#define OS "Amiga" +#define READ_BINARY "r" +#define WRITE_BINARY "w" +#ifdef __SASC +#define sys_errlist __sys_errlist +#include <stdlib.h> +#endif +#endif + +#ifdef unix +# include <stdio.h> +#endif + +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif + +#ifdef __riscos +# define OS "RISC OS" +# ifdef RISC_USE_OSL +# define READ_BINARY 0x43 /* if using fopen stuff reset to "rb", "wb" */ +# define WRITE_BINARY 0x83 +# else +# define READ_BINARY "rb" +# define WRITE_BINARY "wb" +# endif +# define ERR_STREAM stdout /* ???? */ +# else +# define ERR_STREAM stderr +#endif + +/* +#ifndef TRUE +#define TRUE 1 +#endif +#ifndef FALSE +#define FALSE 0 +#endif +*/ + + +/* Information returned by tfm_read_info. */ +typedef struct { + /* These string lengths are imposed by the TFM format. Either of these + values may be the empty string. */ + unsigned char coding_scheme[40]; + unsigned char family[20]; + + /* The second fontdimen. */ + unsigned interword; + + /* These values are what will work to select the font in PCL. If this + TFM file doesn't have the `KN' extensions (distinguishable by the + family == "HPAUTOTFM"). */ +#define SPACING_FIXED 0 +#define SPACING_PROPORTIONAL 1 + unsigned spacing; + int weight; + unsigned style; + unsigned typeface_id; + + /* TFM files can always have 256 characters, even if we're using the + old pixel format that only supports 128. The values are fix-words + scaled by the design size; i.e., straight from the TFM file. */ + long4 widths[256]; +} tfm_info_type; + +#ifdef KPATHSEA +#define BOPENCMD xfopen +#else +#define BOPENCMD fopen /* ???? */ +#endif + +/* Set up file stuff */ +#ifdef RISC_USE_OSL +#include "fromosl.h" +typedef os_f FILEPTR; +#define read_byte(fp,char) os_bget(fp,&char) +#define write_byte(fp,char) os_bput(char,fp) +#define read_multi(buf,n,s,fp) osgbpb_read(fp,(byte*)buf,(s)*(n)) +#define write_multi(buf,n,s,fp) osgbpb_write(fp,(byte*)buf,(s)*(n)) +#define BINOPEN(f) osfind_openin(READ_BINARY,f,NULL) +#define BOUTOPEN(f) osfind_openout(WRITE_BINARY,f,NULL) +#define BCLOSE(f) osfind_close(f) +#define FEOF(f) osargs_read_eof_status(f) +#define FSEEK(f,pos,whence) os_seek(f,pos,whence) +#define FTELL(f) osargs_read_ptr(f) +#define FPNULL 0 +#else +typedef FILE *FILEPTR; +#define read_byte(fp,char) char = fgetc(fp) +#define write_byte(fp,char) fputc(char,fp) +#define read_multi(buf,n,s,fp) fread(buf,n,s,fp) +#define write_multi(buf,n,s,fp) fwrite(buf,n,s,fp) +#define BINOPEN(f) BOPENCMD(f,READ_BINARY) +#define BOUTOPEN(f) BOPENCMD(f,WRITE_BINARY) +#define BCLOSE(f) fclose(f) +#define FEOF(f) feof(f) +#define FSEEK(f,pos,whence) fseek(f,pos,whence) +#define FTELL(f) ftell(f) +#define FPNULL NULL +#endif + + +#define BUFFSIZE 8192 /* ???? */ + +#ifndef SEEK_SET +# define SEEK_SET 0 +#endif +#ifndef SEEK_CUR +# define SEEK_CUR 1 +#endif +#ifndef SEEK_END +# define SEEK_END 2 +#endif + +#ifndef O_BINARY +# ifdef _O_BINARY +# define O_BINARY _O_BINARY +# else +# define O_BINARY 0 +#endif +#endif + +#if !defined (AssureBinary) && !defined (MSC5) +# define AssureBinary(f) 0 +#endif + +#ifndef HAVE_VPRINTF +#ifdef HAVE_DOPRNT +#define vfprintf(stream, message, args) _doprnt(message, args, stream) +/* If we have neither, should fall back to fprintf with fixed args. */ +#endif +#endif |