DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T m

⟦df4b65c27⟧ TextFile

    Length: 8014 (0x1f4e)
    Types: TextFile
    Names: »make.doc«

Derivation

└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89
    └─⟦ff23ba0e6⟧ »./ghostscript-1.3.tar.Z« 
        └─⟦a24a58cd3⟧ 
            └─⟦this⟧ »make.doc« 

TextFile

   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).