blob: f7b5bace3d9a09fb0ccb8fd0c0775d6f92f1e3c5 [file] [log] [blame]
Guido van Rossumb6775db1994-08-01 11:34:53 +00001# The file Setup is used by the makesetup script to construct the files
2# Makefile and config.c, from Makefile.pre and config.c.in,
3# respectively. The file Setup itself is initially copied from
4# Setup.in; once it exists it will not be overwritten, so you can edit
5# Setup to your heart's content. One possibility is to overwrite it
6# with a copy of Setup.sgi or Setup.sunos[45] before you start editing.
7# Note that Makefile.pre is created from Makefile.pre.in by the toplevel
8# configure script.
9
10# (VPATH notes: Setup and Makefile.pre are in the build directory, as
11# are Makefile and config.c; Setup.in and config.c.in are in the source
12# directory.)
13
Guido van Rossumfba715a1994-01-02 00:26:09 +000014# Each line in this file describes one or more optional modules.
15# Comment out lines to suppress modules.
16# Lines have the following structure:
17#
18# <module> ... [<objectfile> ...] [<cpparg> ...] [<library> ...]
19#
20# <objectfile> is anything ending in .o
21# <cpparg> is anything starting with -I, -D, -U or -C
22# <library> is anything ending in .a or beginning with -l or -L
23# <module> is anything else but should be a valid Python
24# identifier (letters, digits, underscores, beginning with non-digit)
25#
26# Lines can also have the form
27#
28# <name> = <value>
29#
30# which defines a Make variable definition inserted into Makefile.in
Guido van Rossumb6775db1994-08-01 11:34:53 +000031
Guido van Rossumfba715a1994-01-02 00:26:09 +000032# NOTE: As a standard policy, as many modules as can be supported by a
33# platform should be present. The distribution comes with all modules
34# enabled that are supported by most platforms and don't require you
35# to ftp sources from elsewhere. To make this easier for SGI
36# platforms, you can copy Setup.sgi to Setup (or edit Makefile.in.in
37# to use Setup.sgi instead of Setup).
38
39
Guido van Rossumb6775db1994-08-01 11:34:53 +000040# Some special rules to define PYTHONPATH.
41# Edit the definitions below to indicate which options you are using.
42# Don't add any whitespace or comments!
43
44# Don't edit this (usually)
45DESTLIB=$(prefix)/lib/python
46
47# Standard enabled (tests are always available)
48TESTPATH=:$(DESTLIB)/test
49
50# Enable this for SGI systems
51#ARCHPATH=:$(DESTLIB)/sgi
52
53# Enable this for Sun systems
54#ARCHPATH=:$(DESTLIB)/sun4
55
56# Enable this if stdwin installed
57#STDWINPATH=:$(DESTLIB)/stdwin
58
59PYTHONPATH=.:$(DESTLIB)$(TESTPATH)$(ARCHPATH)$(STDWINPATH)
60
61
Guido van Rossumfba715a1994-01-02 00:26:09 +000062# Modules that should always be present (non UNIX dependent)
63
64array arraymodule.o # array objects
65math mathmodule.o # math library functions, e.g. sin()
66parser parsermodule.o # raw interface to the Python parser
67posix posixmodule.o # posix (UNIX) system calls
68regex regexmodule.o regexpr.o # Regular expressions, GNU Emacs style
69strop stropmodule.o # fast string operations implemented in C
70struct structmodule.o # binary structure packing/unpacking
71time timemodule.o # time operations and variables
72
73
74# Modules with some UNIX dependencies -- on by default.
Guido van Rossumb6775db1994-08-01 11:34:53 +000075# (If you have a really backward UNIX, select and socket may not be
76# supported...)
Guido van Rossumfba715a1994-01-02 00:26:09 +000077
Guido van Rossumfba715a1994-01-02 00:26:09 +000078fcntl fcntlmodule.o # fcntl(2) and ioctl(2)
Guido van Rossumb6775db1994-08-01 11:34:53 +000079pwd pwdmodule.o # pwd(3)
80grp grpmodule.o # grp(3)
81crypt cryptmodule.o # crypt(3)
Guido van Rossumfba715a1994-01-02 00:26:09 +000082select selectmodule.o # select(2); not on ancient System V
83socket socketmodule.o # socket(2); not on ancient System V
84
85
Guido van Rossumb6775db1994-08-01 11:34:53 +000086# Some more UNIX dependent modules -- off by default, since these
87# are not supported by all UNIX systems.
88
89#dbm dbmmodule.o # dbm(3) may require -lndbm or similar
90#nis nismodule.o # Sun yellow pages -- not everywhere
91
92
93# Multimedia modules -- on by default.
Guido van Rossumfba715a1994-01-02 00:26:09 +000094# These represent audio samples or images as strings
95
96audioop audioopmodule.o # Operations on audio samples
97imageop imageopmodule.o # Operations on images
98rgbimg rgbimgmodule.o # Read SGI RGB image files (but coded portably)
99
100
101# The stdwin module provides a simple, portable (between X11 and Mac)
102# windowing interface. You need to ftp the STDWIN library, e.g. from
103# ftp://ftp.cwi.nl/pub/stdwin. The STDWIN variable must point to the
104# STDWIN toplevel directory. The ARCH variable must be set to the
105# architecture identifier used to build STDWIN. NB if you combine this
106# with the gl module on an SGI machine, you should replace "-lX11" with
107# "-lX11_s".
108
109#STDWIN=/ufs/guido/src/stdwin
Guido van Rossumb6775db1994-08-01 11:34:53 +0000110#ARCH=???
Guido van Rossumfba715a1994-01-02 00:26:09 +0000111#stdwin stdwinmodule.o -I$(STDWIN)/H $(STDWIN)/Build/$(ARCH)/x11/lib/lib.a -lX11
112
113
114# The md5 module implements the RSA Data Security, Inc. MD5
115# Message-Digest Algorithm, described in RFC 1321. The necessary files
116# md5c.c and md5.h are included here.
117
118md5 md5module.o md5c.o
119
120
121# The mpz module interfaces to the GNU Multiple Precision library.
Guido van Rossumb6775db1994-08-01 11:34:53 +0000122# You need to ftp the GNU MP library.
123# The GMP variable must point to the GMP source directory.
124# This was originally written and tested against GMP 1.2. I have
125# compiled it against GMP 1.3.2 (the latest I believe) and it seems to
126# work OK, but I haven't tested it thoroughly (lacking knowledge about
127# it).
Guido van Rossumfba715a1994-01-02 00:26:09 +0000128
129#GMP=/ufs/guido/src/gmp
130#mpz mpzmodule.o -I$(GMP) $(GMP)/libgmp.a
131
132
133# The rotor module (contributed by Lance Ellinghouse) implements a
134# rotor-based encryption algorithm. It is self-contained.
135
136rotor rotormodule.o
137
138
139# SGI IRIX specific modules -- off by default.
140# Switch this on if you have an SGI machine.
141# Note that some required libraries and header files aren't always
142# installed; you may be better off switching on only 'fm' and 'gl'
143# (Font Manager and Graphics Library).
144
Guido van Rossumb6775db1994-08-01 11:34:53 +0000145# # ADD THESE FOR IRIX5:
146#al almodule.o -laudio
147#cd cdmodule.o -lcdaudio -lds # -lmediad
148#cl clmodule.o -lcl # -lawareaudio
Guido van Rossumfba715a1994-01-02 00:26:09 +0000149#fm fmmodule.o -lfm_s -lgl_s
Guido van Rossumb6775db1994-08-01 11:34:53 +0000150#gl glmodule.o -lgl_s -lX11_s
151#imgfile imgfilemodule.o -limage -lgutil
Guido van Rossumfba715a1994-01-02 00:26:09 +0000152#sgi sgimodule.o
153#sv svmodule.o yuvconvert.o -lsvideo -lXext -lX11_s
154
155# The FORMS library, by Mark Overmars, implements user interface
156# components such as dialogs and buttons using SGI's GL and FM
157# libraries. You must ftp the FORMS library separately from
158# ftp://ftp.cs.ruu.nl/pub/SGI/FORMS. It was tested with FORMS 2.2a.
159# The FORMS variable must point to the FORMS subdirectory of the forms
160# toplevel directory.
161
162#FORMS=/ufs/guido/src/forms/FORMS
163#fl flmodule.o -I$(FORMS) $(FORMS)/libforms.a
164
165
166# SunOS specific modules -- off by default
167
168# sunaudiodev sunaudiodevmodule.o
169
170
171# Thread module -- works on SGI IRIX and on SunOS 5.x (SOLARIS) only.
172# Note that you must have configured (and built!) Python with the
173# --with-thread option passed to the configure script for this to work.
174
175# thread threadmodule.o
176
177
Guido van Rossumb6775db1994-08-01 11:34:53 +0000178# GNN's timing module
179# timing timingmodule.o
180
181
182# Lance Ellinghouse's signal module
183# signal signalmodule.o
184
185
186# Tommy Burnette's 'new' module (creates new empty objects of certain kinds)
187# new newmodule.o
188
189
190# John Redford's sybase module
191# sybase sybasemodule.o
192
193
194# Generic (SunOS / SVR4) dynamic loading module
195# dl dlmodule.o
196
197
198# Jack Jansen's imgformat module
199# imgformat imgformatmodule.o
200
201
202# Lance Ellinghouse's syslog module
203# syslog syslogmodule.o
204
205
Guido van Rossumfba715a1994-01-02 00:26:09 +0000206# Example -- included for reference only
207
208# xx xxmodule.o