blob: 61bbc5ed0f145c3ecc850dcf93927f714f97fa8f [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#
Guido van Rossumf6971e21994-08-30 12:25:20 +000018# <module> ... [<sourcefile> ...] [<cpparg> ...] [<library> ...]
Guido van Rossumfba715a1994-01-02 00:26:09 +000019#
Guido van Rossumf6971e21994-08-30 12:25:20 +000020# <sourcefile> is anything ending in .c (.C, .cc, .c++ are C++ files)
Guido van Rossumfba715a1994-01-02 00:26:09 +000021# <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
Guido van Rossumf6971e21994-08-30 12:25:20 +000064array arraymodule.c # array objects
65math mathmodule.c # math library functions, e.g. sin()
66parser parsermodule.c # raw interface to the Python parser
67posix posixmodule.c # posix (UNIX) system calls
68regex regexmodule.c regexpr.c # Regular expressions, GNU Emacs style
69strop stropmodule.c # fast string operations implemented in C
70struct structmodule.c # binary structure packing/unpacking
71time timemodule.c # time operations and variables
Guido van Rossumfba715a1994-01-02 00:26:09 +000072
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 Rossumf6971e21994-08-30 12:25:20 +000078fcntl fcntlmodule.c # fcntl(2) and ioctl(2)
79pwd pwdmodule.c # pwd(3)
80grp grpmodule.c # grp(3)
81crypt cryptmodule.c # crypt(3)
82select selectmodule.c # select(2); not on ancient System V
83socket socketmodule.c # socket(2); not on ancient System V
84signal signalmodule.c # signal(2)
Guido van Rossumfba715a1994-01-02 00:26:09 +000085
86
Guido van Rossumb6775db1994-08-01 11:34:53 +000087# Some more UNIX dependent modules -- off by default, since these
88# are not supported by all UNIX systems.
89
Guido van Rossumf6971e21994-08-30 12:25:20 +000090#dbm dbmmodule.c # dbm(3) may require -lndbm or similar
91#nis nismodule.c # Sun yellow pages -- not everywhere
Guido van Rossumb6775db1994-08-01 11:34:53 +000092
93
94# Multimedia modules -- on by default.
Guido van Rossumfba715a1994-01-02 00:26:09 +000095# These represent audio samples or images as strings
96
Guido van Rossumf6971e21994-08-30 12:25:20 +000097audioop audioop.c # Operations on audio samples
98imageop imageop.c # Operations on images
99rgbimg rgbimgmodule.c # Read SGI RGB image files (but coded portably)
Guido van Rossumfba715a1994-01-02 00:26:09 +0000100
101
102# The stdwin module provides a simple, portable (between X11 and Mac)
103# windowing interface. You need to ftp the STDWIN library, e.g. from
104# ftp://ftp.cwi.nl/pub/stdwin. The STDWIN variable must point to the
105# STDWIN toplevel directory. The ARCH variable must be set to the
106# architecture identifier used to build STDWIN. NB if you combine this
107# with the gl module on an SGI machine, you should replace "-lX11" with
108# "-lX11_s".
109
110#STDWIN=/ufs/guido/src/stdwin
Guido van Rossumb6775db1994-08-01 11:34:53 +0000111#ARCH=???
Guido van Rossumf6971e21994-08-30 12:25:20 +0000112#stdwin stdwinmodule.c -I$(STDWIN)/H $(STDWIN)/Build/$(ARCH)/x11/lib/lib.a -lX11
Guido van Rossumfba715a1994-01-02 00:26:09 +0000113
114
115# The md5 module implements the RSA Data Security, Inc. MD5
116# Message-Digest Algorithm, described in RFC 1321. The necessary files
117# md5c.c and md5.h are included here.
118
Guido van Rossumf6971e21994-08-30 12:25:20 +0000119md5 md5module.c md5c.c
Guido van Rossumfba715a1994-01-02 00:26:09 +0000120
121
122# The mpz module interfaces to the GNU Multiple Precision library.
Guido van Rossumb6775db1994-08-01 11:34:53 +0000123# You need to ftp the GNU MP library.
124# The GMP variable must point to the GMP source directory.
125# This was originally written and tested against GMP 1.2. I have
126# compiled it against GMP 1.3.2 (the latest I believe) and it seems to
127# work OK, but I haven't tested it thoroughly (lacking knowledge about
128# it).
Guido van Rossumfba715a1994-01-02 00:26:09 +0000129
130#GMP=/ufs/guido/src/gmp
Guido van Rossumf6971e21994-08-30 12:25:20 +0000131#mpz mpzmodule.c -I$(GMP) $(GMP)/libgmp.a
Guido van Rossumfba715a1994-01-02 00:26:09 +0000132
133
134# SGI IRIX specific modules -- off by default.
135# Switch this on if you have an SGI machine.
136# Note that some required libraries and header files aren't always
137# installed; you may be better off switching on only 'fm' and 'gl'
138# (Font Manager and Graphics Library).
139
Guido van Rossumb6775db1994-08-01 11:34:53 +0000140# # ADD THESE FOR IRIX5:
Guido van Rossumf6971e21994-08-30 12:25:20 +0000141#al almodule.c -laudio
142#cd cdmodule.c -lcdaudio -lds # -lmediad
143#cl clmodule.c -lcl # -lawareaudio
144#fm fmmodule.c -lfm_s -lgl_s
145#gl glmodule.c -lgl_s -lX11_s
146#imgfile imgfile.c -limage -lgutil
147#sgi sgimodule.c
148#sv svmodule.c yuvconvert.c -lsvideo -lXext -lX11_s
Guido van Rossumfba715a1994-01-02 00:26:09 +0000149
150# The FORMS library, by Mark Overmars, implements user interface
151# components such as dialogs and buttons using SGI's GL and FM
152# libraries. You must ftp the FORMS library separately from
153# ftp://ftp.cs.ruu.nl/pub/SGI/FORMS. It was tested with FORMS 2.2a.
154# The FORMS variable must point to the FORMS subdirectory of the forms
155# toplevel directory.
156
157#FORMS=/ufs/guido/src/forms/FORMS
Guido van Rossumf6971e21994-08-30 12:25:20 +0000158#fl flmodule.c -I$(FORMS) $(FORMS)/libforms.a
Guido van Rossumfba715a1994-01-02 00:26:09 +0000159
160
161# SunOS specific modules -- off by default
162
Guido van Rossumf6971e21994-08-30 12:25:20 +0000163# sunaudiodev sunaudiodev.c
Guido van Rossumfba715a1994-01-02 00:26:09 +0000164
165
166# Thread module -- works on SGI IRIX and on SunOS 5.x (SOLARIS) only.
167# Note that you must have configured (and built!) Python with the
168# --with-thread option passed to the configure script for this to work.
169
Guido van Rossumf6971e21994-08-30 12:25:20 +0000170# thread threadmodule.c
Guido van Rossumfba715a1994-01-02 00:26:09 +0000171
172
Guido van Rossumb6775db1994-08-01 11:34:53 +0000173# GNN's timing module
Guido van Rossumf6971e21994-08-30 12:25:20 +0000174# timing timingmodule.c
Guido van Rossumb6775db1994-08-01 11:34:53 +0000175
176
Guido van Rossumf6971e21994-08-30 12:25:20 +0000177# Lance Ellinghouse's modules
178rotor rotormodule.c # enigma-inspired en-, decryption
179# syslog syslogmodule.c # syslog daemon interface
180# curses cursesmodule.c -lcurses -ltermcap # guess what?
Guido van Rossumb6775db1994-08-01 11:34:53 +0000181
182
183# Tommy Burnette's 'new' module (creates new empty objects of certain kinds)
Guido van Rossumf6971e21994-08-30 12:25:20 +0000184# new newmodule.c
Guido van Rossumb6775db1994-08-01 11:34:53 +0000185
186
187# John Redford's sybase module
Guido van Rossumf6971e21994-08-30 12:25:20 +0000188# sybase sybasemodule.c
Guido van Rossumb6775db1994-08-01 11:34:53 +0000189
190
191# Generic (SunOS / SVR4) dynamic loading module
Guido van Rossumf6971e21994-08-30 12:25:20 +0000192# dl dlmodule.c
Guido van Rossumb6775db1994-08-01 11:34:53 +0000193
194
195# Jack Jansen's imgformat module
Guido van Rossumf6971e21994-08-30 12:25:20 +0000196# imgformat imgformat.c
Guido van Rossumb6775db1994-08-01 11:34:53 +0000197
198
Guido van Rossum4b4c6641994-08-08 08:06:37 +0000199# Anthony Baxter's gdbm module (derived from Jack's dbm module)
200# GNU dbm(3) will require -lgdbm
Guido van Rossumf6971e21994-08-30 12:25:20 +0000201# gdbm gdbmmodule.c -I/usr/local/include -L/usr/local/lib -lgdbm
Guido van Rossumfba715a1994-01-02 00:26:09 +0000202
Guido van Rossum4b4c6641994-08-08 08:06:37 +0000203
204# Example -- included for reference only
Guido van Rossumf6971e21994-08-30 12:25:20 +0000205# xx xxmodule.c