Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 1 | # 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 Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 14 | # 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 Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 18 | # <module> ... [<sourcefile> ...] [<cpparg> ...] [<library> ...] |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 19 | # |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 20 | # <sourcefile> is anything ending in .c (.C, .cc, .c++ are C++ files) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 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 Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 31 | # |
| 32 | # Finally, if a line has the literal form |
| 33 | # |
| 34 | # *noconfig* |
| 35 | # |
| 36 | # (that is including the '*' and '*' !) then the following modules will |
| 37 | # not be included in the config.c file, nor in the list of objects to be |
| 38 | # added to the library archive, and their linker options won't be added |
| 39 | # to the linker options, but rules to create their .o files and their |
| 40 | # shared libraries will still be added to the Makefile |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 41 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 42 | # NOTE: As a standard policy, as many modules as can be supported by a |
| 43 | # platform should be present. The distribution comes with all modules |
| 44 | # enabled that are supported by most platforms and don't require you |
| 45 | # to ftp sources from elsewhere. To make this easier for SGI |
| 46 | # platforms, you can copy Setup.sgi to Setup (or edit Makefile.in.in |
| 47 | # to use Setup.sgi instead of Setup). |
| 48 | |
| 49 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 50 | # Some special rules to define PYTHONPATH. |
| 51 | # Edit the definitions below to indicate which options you are using. |
| 52 | # Don't add any whitespace or comments! |
| 53 | |
| 54 | # Don't edit this (usually) |
| 55 | DESTLIB=$(prefix)/lib/python |
| 56 | |
| 57 | # Standard enabled (tests are always available) |
| 58 | TESTPATH=:$(DESTLIB)/test |
| 59 | |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 60 | # Path for machine- or system-dependent modules (and shared libraries) |
| 61 | MACHDEPPATH=:$(DESTLIB)/$(MACHDEP) |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 62 | |
Guido van Rossum | f5e0ea8 | 1994-09-12 15:35:36 +0000 | [diff] [blame] | 63 | COREPYTHONPATH=.:$(DESTLIB)$(TESTPATH)$(MACHDEPPATH)$(STDWINPATH)$(TKPATH) |
| 64 | PYTHONPATH=$(COREPYTHONPATH) |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 65 | |
| 66 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 67 | # The modules listed here can't be built as shared libraries for |
| 68 | # various reasons; therefore they are listed here instead of in the |
| 69 | # normal order. |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 70 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 71 | # Some modules that are normally always on |
| 72 | |
| 73 | posix posixmodule.c # posix (UNIX) system calls |
| 74 | signal signalmodule.c # signal(2) |
| 75 | |
| 76 | # The SGI specific GL module |
| 77 | |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 78 | #gl glmodule.c -lgl -lX11 # Graphics Library -- SGI only |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 79 | |
| 80 | # Thread module -- works on selected systems only, e.g. SGI IRIX and |
| 81 | # on SunOS 5.x (SOLARIS) only. |
| 82 | # Note that you must have configured (and built!) Python with the |
| 83 | # --with-thread option passed to the configure script for this to work. |
| 84 | |
| 85 | #thread threadmodule.c |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 86 | |
| 87 | # Uncommenting the following line tells makesetup that all following |
| 88 | # modules are to be built as shared libraries (see above for more detail). |
| 89 | |
| 90 | #*noconfig* |
| 91 | |
| 92 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 93 | # Modules that should always be present (non UNIX dependent) |
| 94 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 95 | array arraymodule.c # array objects |
Guido van Rossum | f5e0ea8 | 1994-09-12 15:35:36 +0000 | [diff] [blame] | 96 | math mathmodule.c -lm # math library functions, e.g. sin() |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 97 | parser parsermodule.c # raw interface to the Python parser |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 98 | regex regexmodule.c regexpr.c # Regular expressions, GNU Emacs style |
| 99 | strop stropmodule.c # fast string operations implemented in C |
| 100 | struct structmodule.c # binary structure packing/unpacking |
| 101 | time timemodule.c # time operations and variables |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 102 | |
| 103 | |
| 104 | # Modules with some UNIX dependencies -- on by default. |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 105 | # (If you have a really backward UNIX, select and socket may not be |
| 106 | # supported...) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 107 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 108 | fcntl fcntlmodule.c # fcntl(2) and ioctl(2) |
| 109 | pwd pwdmodule.c # pwd(3) |
| 110 | grp grpmodule.c # grp(3) |
Guido van Rossum | d4837da | 1995-02-14 09:43:25 +0000 | [diff] [blame] | 111 | crypt cryptmodule.c # -lcrypt # crypt(3); needs -lcrypt on some systems |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 112 | select selectmodule.c # select(2); not on ancient System V |
| 113 | socket socketmodule.c # socket(2); not on ancient System V |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 114 | |
| 115 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 116 | # Some more UNIX dependent modules -- off by default, since these |
| 117 | # are not supported by all UNIX systems. |
| 118 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 119 | #dbm dbmmodule.c # dbm(3) may require -lndbm or similar |
| 120 | #nis nismodule.c # Sun yellow pages -- not everywhere |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 121 | #termios termios.c # Steen Lumholt's termios module |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 122 | |
| 123 | |
| 124 | # Multimedia modules -- on by default. |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 125 | # These represent audio samples or images as strings |
| 126 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 127 | audioop audioop.c # Operations on audio samples |
| 128 | imageop imageop.c # Operations on images |
| 129 | rgbimg rgbimgmodule.c # Read SGI RGB image files (but coded portably) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 130 | |
| 131 | |
| 132 | # The stdwin module provides a simple, portable (between X11 and Mac) |
| 133 | # windowing interface. You need to ftp the STDWIN library, e.g. from |
| 134 | # ftp://ftp.cwi.nl/pub/stdwin. The STDWIN variable must point to the |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 135 | # STDWIN toplevel directory. NB if you combine this with the gl |
| 136 | # module on an SGI IRIX 4 machine, you should replace "-lX11" with |
| 137 | # "-lX11_s". |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 138 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 139 | # Add Lib/stdwin to the default module search path: |
| 140 | |
Guido van Rossum | e4485b0 | 1994-09-07 14:32:49 +0000 | [diff] [blame] | 141 | #STDWINPATH=:$(DESTLIB)/stdwin |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 142 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 143 | # Use this for STDWIN 0.9.9 or higher: |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 144 | |
| 145 | #STDWIN=/ufs/guido/src/stdwin |
| 146 | #LIBTEXTEDIT=$(STDWIN)/$(MACHDEP)/Packs/textedit/libtextedit.a |
| 147 | #LIBX11STDWIN=$(STDWIN)/$(MACHDEP)/Ports/x11/libstdwin.a |
| 148 | #LIBALFASTDWIN=$(STDWIN)/$(MACHDEP)/Ports/alfa/libstdwin.a |
| 149 | #stdwin stdwinmodule.c -I$(STDWIN)/H $(LIBTEXTEDIT) $(LIBX11STDWIN) -lX11 |
| 150 | |
| 151 | # Or use the following for the alphanumeric version: |
| 152 | |
| 153 | #stdwin stdwinmodule.c -I$(STDWIN)/H $(LIBTEXTEDIT) $(LIBALFASTDWIN) -ltermcap |
| 154 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 155 | # Use this if you are still using stdwin 0.9.8 or older |
| 156 | |
| 157 | #STDWIN=/ufs/guido/src/stdwin |
| 158 | #ARCH=??? |
| 159 | #stdwin stdwinmodule.c -I$(STDWIN)/H $(STDWIN)/Build/$(ARCH)/x11/lib/lib.a -lX11 |
| 160 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 161 | |
| 162 | # The md5 module implements the RSA Data Security, Inc. MD5 |
| 163 | # Message-Digest Algorithm, described in RFC 1321. The necessary files |
| 164 | # md5c.c and md5.h are included here. |
| 165 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 166 | md5 md5module.c md5c.c |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 167 | |
| 168 | |
| 169 | # The mpz module interfaces to the GNU Multiple Precision library. |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 170 | # You need to ftp the GNU MP library. |
| 171 | # The GMP variable must point to the GMP source directory. |
| 172 | # This was originally written and tested against GMP 1.2. I have |
| 173 | # compiled it against GMP 1.3.2 (the latest I believe) and it seems to |
| 174 | # work OK, but I haven't tested it thoroughly (lacking knowledge about |
| 175 | # it). |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 176 | |
Guido van Rossum | c370607 | 1994-10-06 16:12:06 +0000 | [diff] [blame] | 177 | # A compatible MP library unencombered by the GPL also exists. It was |
| 178 | # posted to comp.sources.misc in volume 40 and is widely available from |
| 179 | # FTP archive sites. One URL for it is: |
| 180 | # ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/volume40/fgmp/part01.Z |
| 181 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 182 | #GMP=/ufs/guido/src/gmp |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 183 | #mpz mpzmodule.c -I$(GMP) $(GMP)/libgmp.a |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 184 | |
| 185 | |
| 186 | # SGI IRIX specific modules -- off by default. |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 187 | |
| 188 | # These module work on any SGI machine. |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 189 | |
Guido van Rossum | caffcdf | 1995-03-10 15:14:13 +0000 | [diff] [blame] | 190 | # *** gl must be enabled higher up in this file *** |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 191 | #fm fmmodule.c -lfm -lgl # Font Manager |
Guido van Rossum | 05bf280 | 1994-10-20 22:01:38 +0000 | [diff] [blame] | 192 | #sgi sgimodule.c # sgi.nap() and a few more |
| 193 | |
| 194 | # This module requires the header file |
| 195 | # /usr/people/4Dgifts/iristools/include/izoom.h |
| 196 | |
| 197 | #imgfile imgfile.c -limage -lgutil -lm # Image Processing Utilities |
| 198 | |
| 199 | |
| 200 | # These modules require the Multimedia Development Option (I think). |
| 201 | # Note that -lmediad and -lawareaudio are only present on IRIX 5 and |
| 202 | # should be taken out for IRIX 4. |
| 203 | |
| 204 | #al almodule.c -laudio # Audio Library |
| 205 | #cd cdmodule.c -lcdaudio -lds -lmediad # CD Audio Library |
| 206 | #cl clmodule.c -lcl -lawareaudio # Compression Library |
| 207 | #sv svmodule.c yuvconvert.c -lsvideo -lXext -lX11 # Starter Video |
| 208 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 209 | |
| 210 | # The FORMS library, by Mark Overmars, implements user interface |
| 211 | # components such as dialogs and buttons using SGI's GL and FM |
| 212 | # libraries. You must ftp the FORMS library separately from |
| 213 | # ftp://ftp.cs.ruu.nl/pub/SGI/FORMS. It was tested with FORMS 2.2a. |
| 214 | # The FORMS variable must point to the FORMS subdirectory of the forms |
| 215 | # toplevel directory. |
| 216 | |
| 217 | #FORMS=/ufs/guido/src/forms/FORMS |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 218 | #fl flmodule.c -I$(FORMS) $(FORMS)/libforms.a -lfm -lgl |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 219 | |
| 220 | |
| 221 | # SunOS specific modules -- off by default |
| 222 | |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 223 | #sunaudiodev sunaudiodev.c |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 224 | |
| 225 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 226 | # GNN's timing module |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 227 | |
| 228 | #timing timingmodule.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 229 | |
| 230 | |
Guido van Rossum | 524b588 | 1995-01-04 19:10:35 +0000 | [diff] [blame] | 231 | # Steen Lumholt's tkinter module. |
| 232 | # |
| 233 | # For use with plain Tk, use the first line. |
| 234 | # |
| 235 | # For use with extended Tk (i.e. if you have added extra widgets to |
| 236 | # the Tk library, such as the common "studButton" and "triButton" |
| 237 | # extensions), edit tkappinit.c, add appropriate -DWITH_... and |
| 238 | # libraries/objects to the second line, and use that. |
| 239 | # |
| 240 | # In all cases also enable the last line (TKPATH). |
Guido van Rossum | d4837da | 1995-02-14 09:43:25 +0000 | [diff] [blame] | 241 | # |
| 242 | # This was designed to build with Tk 3.6 and Tcl 7.3, but also seems |
| 243 | # to work Tk 4.0 beta. (Tkinter.py hasn't been fixed though, so for |
| 244 | # the time being Tk 3.6 is the version of choice!) |
Guido van Rossum | e4485b0 | 1994-09-07 14:32:49 +0000 | [diff] [blame] | 245 | |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 246 | # *** Use ONE of the following two lines, see previous comments *** |
Guido van Rossum | e4485b0 | 1994-09-07 14:32:49 +0000 | [diff] [blame] | 247 | #tkinter tkintermodule.c -I/usr/local/include -L/usr/local/lib -ltk -ltcl -lX11 |
| 248 | #tkinter tkintermodule.c tkappinit.c -DWITH_APPINIT -I/usr/local/include -L/usr/local/lib -ltk -ltcl -lX11 |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 249 | |
Guido van Rossum | 524b588 | 1995-01-04 19:10:35 +0000 | [diff] [blame] | 250 | # *** ALWAYS use this line as well *** |
Guido van Rossum | e4485b0 | 1994-09-07 14:32:49 +0000 | [diff] [blame] | 251 | #TKPATH=:$(DESTLIB)/tkinter |
| 252 | |
| 253 | |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 254 | # Lance Ellinghouse's modules |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 255 | |
Guido van Rossum | e4485b0 | 1994-09-07 14:32:49 +0000 | [diff] [blame] | 256 | rotor rotormodule.c # enigma-inspired encryption |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 257 | #syslog syslogmodule.c # syslog daemon interface |
| 258 | #curses cursesmodule.c -lcurses -ltermcap # guess what? |
| 259 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 260 | |
| 261 | |
| 262 | # Tommy Burnette's 'new' module (creates new empty objects of certain kinds) |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 263 | |
| 264 | #new newmodule.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 265 | |
| 266 | |
| 267 | # John Redford's sybase module |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 268 | |
| 269 | #sybase sybasemodule.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 270 | |
| 271 | |
Guido van Rossum | a3c04b0 | 1995-01-12 11:29:01 +0000 | [diff] [blame] | 272 | # Generic (SunOS / SVR4) dynamic loading module. |
| 273 | # This is not needed for dynamic loading of Python modules -- |
| 274 | # it is a highly experimental and dangerous device for calling |
| 275 | # *arbitrary* C functions in *arbitrary* shared libraries. |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 276 | |
| 277 | #dl dlmodule.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 278 | |
| 279 | |
Guido van Rossum | 4b4c664 | 1994-08-08 08:06:37 +0000 | [diff] [blame] | 280 | # Anthony Baxter's gdbm module (derived from Jack's dbm module) |
| 281 | # GNU dbm(3) will require -lgdbm |
Guido van Rossum | be9f149 | 1994-09-21 12:31:05 +0000 | [diff] [blame] | 282 | |
| 283 | #gdbm gdbmmodule.c -I/usr/local/include -L/usr/local/lib -lgdbm |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 284 | |
Guido van Rossum | 4b4c664 | 1994-08-08 08:06:37 +0000 | [diff] [blame] | 285 | |
| 286 | # Example -- included for reference only |
Guido van Rossum | f6971e2 | 1994-08-30 12:25:20 +0000 | [diff] [blame] | 287 | # xx xxmodule.c |