|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T m
Length: 8014 (0x1f4e) Types: TextFile Names: »make.doc«
└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89 └─⟦ff23ba0e6⟧ »./ghostscript-1.3.tar.Z« └─⟦a24a58cd3⟧ └─⟦this⟧ »make.doc«
Copyright (C) 1989 Aladdin Enterprises. All rights reserved. Distributed by Free Software Foundation, Inc. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This file, make.doc, describes how to install Ghostscript, and how to build Ghostscript executables from source. This file applies to version 1.3 of Ghostscript. For an overview of Ghostscript and a list of the documentation files, see README. ******** ******** Installing Ghostscript ******** To install the interpreter, you need: - The interpreter executable: - On MS-DOS systems, gs.exe. - On Unix systems, gs. - The interpreter initialization files, ghost.ps and gdevs.ps. - The font initialization file, gfonts.ps. - The one font provided with Ghostscript, ugly10.cp. Currently, all the files except the executable must be in the current directory at the time you start up the interpreter. (The interpreter executable need not be in the current directory.) You do not need any of these files when using the library; however, the library currently provides no way to install fonts. This is obviously ridiculous and will be fixed in the near future. ******** ******** Building Ghostscript from source ******** Ghostscript is described by a collection of several makefiles: ghost.mak - a generic makefile used on all platforms. *.mak - the makefiles for specific platforms. You may need to edit the makefile, depending on whether you want the debugging features or 80186/80286/80386 code generation enabled: the makefiles as distributed have all these features disabled. See the "Options" section near the beginning of the relevant makefile for more information. To build the interpreter, you need all the .h and .c files included in the distribution, as well as the makefiles. ******** ******** How to build Ghostscript from source (MS-DOS version) ******** ******** Before compiling or linking, you should execute copy dos-ega.mak makefile To build Ghostscript, you need the Borland Turbo C system (version 1.5 or later): specifically, the compiler, 'make' utility, and linker. You also need either the Borland assembler (version 1.0 or later) or the Microsoft assembler (version 4.0 or later). Besides the source files and the makefiles, you need: gt.tl (the linker commands for the library test program - optional) gs.tl (the linker commands for the interpreter) cc.bat, ccna.bat (the command files for the C compiler) The command files assume that Turbo C is in a directory called \tc on the same disk as Ghostscript. cc.bat is set up for an environment where the most heavily used files are cached on RAMdisk drive d:. In particular, it will copy the following files to there if they haven't been copied already: \tc\include\stdio.h -> d:stdio.h \tc\tcc.exe -> d:tcc.exe \mc\masm.exe -> d:tasm.exe Note that this assumes you are using the Microsoft assembler. If you are using the Borland assembler, change \mc\masm to \tc\tasm. Similarly, the linker files (*.tl) assume that the library files (c0l.obj, emu.lib or fp87.lib, mathl.lib, and cl.lib) are on drive d:. The script files are set up assuming the 'large' memory model (large code and data). This is the only memory model that will work: don't try to use any other. Ghostscript will run on a standard (8088/8086) PC, except for the -T switch which assumes the use of the ENTER instruction in the standard procedure prologue. If your PC has an 80286, NEC V20, or 80186 processor, you may wish to add the -1 compiler switch to the definition of CCFLAGS in dos-ega.mak: this instructs the compiler to use a few extra instructions available on these processors. If you have an 80386 processor, you may also wish to add -DFOR80386 to CCFLAGS and /DFOR80386 to ASMFLAGS: this enables the use of 32-bit instructions in a few critical places. The .tl (link control) files do not assume that the target machine has an 80x87 coprocessor: the resulting executable will run either way, although it will run faster if an 80x87 is present. If your machine has an 80x87, you can get slightly better performance by relinking with a different set of libraries. To do this, change d:emu to d:fp87 in all of the .tl files and relink. ******** ******** How to build Ghostscript from source (Unix+X11 version) ******** ******** Before compiling or linking, you should execute cp ux-cc-x.mak makefile or cp ux-gcc-x.mak makefile You must link the name X11 (in the source directory) to an appropriate directory containing the Xlib header files. If you are using cc (rather than gcc), you need the file ccgs (a small shell script to do compilations) which must have execute permission. Ghostscript uses ANSI syntax for function definitions: because of this, when compiling with cc, it must preprocess each .c file to convert it to the older syntax defined in Kernighan and Ritchie, which is what almost all current Unix compilers (other than gcc) support. This step is automatically performed by a utility called ansi2knr, which is included in the Ghostscript distribution. The preprocessing step is included in the makefile rule for compiling .c files. ansi2knr creates a file called _temp_.c to hold the converted code. If you want to change this name for some reason, it is defined in ux-cc-x.mak. Currently Ghostscript is set up to compile and link under Sun Unix. It should compile and link properly in other Unix environments if the LDPLAT macro is redefined as empty, i.e., LDPLAT= ******** ******** A guide to the source files ******** ******** General ------- There are very few machine dependencies in Ghostscript. A few of the .c files are machine-specific. These have names of the form gp-<platform>.c specifically gp-dos.c gp-bsd.c gp-sysv.c gp-vms.c There are also some machine-specific conditionals in a few of the .h files, and in gdevmem.c. If you are going to extend Ghostscript to new machines or operating systems, you should check all the source files (both .c and .h) for ifdef's on things other than DEBUG, and you should probably count on making a new makefile and a new gp- file. Library ------- gt.c is a test driver for the library. Files beginning with gs, gx, or gz (both .c and .h), other than gs.c, are the Ghostscript library. Files beginning with gdev are device drivers or related code, also part of the library. Interpreter ----------- gs.c is the main program for the language interpreter. Files beginning with z are Ghostscript operator files. The names of the files generally follow the section headings of the operator summary in section 6.2 of the PostScript manual. .c files beginning with i, and .h files not beginning with g, are the rest of the interpreter. See the makefile for a little more information on how the files are divided functionally. There are a few files that are logically part of the interpreter, but that are potentially useful outside Ghostscript, whose names don't begin with either g, z, or i: stream.c (a stream package that is only necessary because neither Unix C nor Turbo C provides source code for their file system library), trace.c (a procedure tracing package for debugging), and utrace.c (the Unix stub for trace.c).