| # The file Setup is used by the makesetup script to construct the files |
| # Makefile and config.c, from Makefile.pre and config.c.in, |
| # respectively. The file Setup itself is initially copied from |
| # Setup.in; once it exists it will not be overwritten, so you can edit |
| # Setup to your heart's content. Note that Makefile.pre is created |
| # from Makefile.pre.in by the toplevel configure script. |
| |
| # (VPATH notes: Setup and Makefile.pre are in the build directory, as |
| # are Makefile and config.c; the *.in files are in the source |
| # directory.) |
| |
| # Each line in this file describes one or more optional modules. |
| # Comment out lines to suppress modules. |
| # Lines have the following structure: |
| # |
| # <module> ... [<sourcefile> ...] [<cpparg> ...] [<library> ...] |
| # |
| # <sourcefile> is anything ending in .c (.C, .cc, .c++ are C++ files) |
| # <cpparg> is anything starting with -I, -D, -U or -C |
| # <library> is anything ending in .a or beginning with -l or -L |
| # <module> is anything else but should be a valid Python |
| # identifier (letters, digits, underscores, beginning with non-digit) |
| # |
| # Lines can also have the form |
| # |
| # <name> = <value> |
| # |
| # which defines a Make variable definition inserted into Makefile.in |
| # |
| # Finally, if a line has the literal form |
| # |
| # *noconfig* |
| # |
| # (that is including the '*' and '*' !) then the following modules will |
| # not be included in the config.c file, nor in the list of objects to be |
| # added to the library archive, and their linker options won't be added |
| # to the linker options, but rules to create their .o files and their |
| # shared libraries will still be added to the Makefile, and their |
| # names will be collected in the Make variable SHAREDMODS. This is |
| # used to build modules as shared libraries. (They must be installed |
| # using "make sharedinstall".) |
| |
| # NOTE: As a standard policy, as many modules as can be supported by a |
| # platform should be present. The distribution comes with all modules |
| # enabled that are supported by most platforms and don't require you |
| # to ftp sources from elsewhere. |
| |
| |
| # Some special rules to define PYTHONPATH. |
| # Edit the definitions below to indicate which options you are using. |
| # Don't add any whitespace or comments! |
| |
| # Don't edit this (usually) |
| DESTLIB=$(prefix)/lib/python |
| |
| # Standard enabled (tests are always available) |
| TESTPATH=:$(DESTLIB)/test |
| |
| # Path for machine- or system-dependent modules (and shared libraries) |
| MACHDEPPATH=:$(DESTLIB)/$(MACHDEP) |
| |
| COREPYTHONPATH=.:$(DESTLIB)$(TESTPATH)$(MACHDEPPATH)$(STDWINPATH)$(TKPATH) |
| PYTHONPATH=$(COREPYTHONPATH) |
| |
| |
| # The modules listed here can't be built as shared libraries for |
| # various reasons; therefore they are listed here instead of in the |
| # normal order. |
| |
| # Some modules that are normally always on: |
| |
| posix posixmodule.c # posix (UNIX) system calls |
| signal signalmodule.c # signal(2) |
| |
| # The SGI specific GL module: |
| |
| #gl glmodule.c -lgl -lX11 # Graphics Library -- SGI only |
| |
| # Thread module -- works on selected systems only, e.g. SGI IRIX and |
| # on SunOS 5.x (SOLARIS) only. |
| # Note that you must have configured (and built!) Python with the |
| # --with-thread option passed to the configure script for this to work: |
| |
| #thread threadmodule.c |
| |
| # Uncommenting the following line tells makesetup that all following |
| # modules are to be built as shared libraries (see above for more |
| # detail): |
| |
| #*noconfig* |
| |
| |
| # Modules that should always be present (non UNIX dependent): |
| |
| array arraymodule.c # array objects |
| math mathmodule.c -lm # math library functions, e.g. sin() |
| parser parsermodule.c # raw interface to the Python parser |
| regex regexmodule.c regexpr.c # Regular expressions, GNU Emacs style |
| strop stropmodule.c # fast string operations implemented in C |
| struct structmodule.c # binary structure packing/unpacking |
| time timemodule.c # time operations and variables |
| |
| |
| # Modules with some UNIX dependencies -- on by default: |
| # (If you have a really backward UNIX, select and socket may not be |
| # supported...) |
| |
| fcntl fcntlmodule.c # fcntl(2) and ioctl(2) |
| pwd pwdmodule.c # pwd(3) |
| grp grpmodule.c # grp(3) |
| crypt cryptmodule.c # -lcrypt # crypt(3); needs -lcrypt on some systems |
| select selectmodule.c # select(2); not on ancient System V |
| socket socketmodule.c # socket(2); not on ancient System V |
| |
| |
| # Some more UNIX dependent modules -- off by default, since these |
| # are not supported by all UNIX systems: |
| |
| #dbm dbmmodule.c # dbm(3) may require -lndbm or similar |
| #nis nismodule.c # Sun yellow pages -- not everywhere |
| #termios termios.c # Steen Lumholt's termios module |
| |
| |
| # Multimedia modules -- on by default. |
| # These represent audio samples or images as strings: |
| |
| audioop audioop.c # Operations on audio samples |
| imageop imageop.c # Operations on images |
| rgbimg rgbimgmodule.c # Read SGI RGB image files (but coded portably) |
| |
| |
| # The stdwin module provides a simple, portable (between X11 and Mac) |
| # windowing interface. You need to ftp the STDWIN library, e.g. from |
| # ftp://ftp.cwi.nl/pub/stdwin. (If you get it elsewhere, be sure to |
| # get version 1.0 or higher!) The STDWIN variable must point to the |
| # STDWIN toplevel directory. |
| |
| # Uncomment and edit as needed: |
| #STDWIN=/ufs/guido/src/stdwin |
| |
| # Uncomment these lines: |
| #STDWINPATH=:$(DESTLIB)/stdwin |
| #LIBTEXTEDIT=$(STDWIN)/$(MACHDEP)/Packs/textedit/libtextedit.a |
| #LIBX11STDWIN=$(STDWIN)/$(MACHDEP)/Ports/x11/libstdwin.a |
| #stdwin stdwinmodule.c -I$(STDWIN)/H $(LIBTEXTEDIT) $(LIBX11STDWIN) -lX11 |
| |
| # Use this instead of the last two lines above for alphanumeric stdwin: |
| #LIBALFASTDWIN=$(STDWIN)/$(MACHDEP)/Ports/alfa/libstdwin.a |
| #stdwin stdwinmodule.c -I$(STDWIN)/H $(LIBTEXTEDIT) $(LIBALFASTDWIN) -ltermcap |
| |
| |
| # The md5 module implements the RSA Data Security, Inc. MD5 |
| # Message-Digest Algorithm, described in RFC 1321. The necessary files |
| # md5c.c and md5.h are included here. |
| |
| md5 md5module.c md5c.c |
| |
| |
| # The mpz module interfaces to the GNU Multiple Precision library. |
| # You need to ftp the GNU MP library. |
| # The GMP variable must point to the GMP source directory. |
| # This was originally written and tested against GMP 1.2. I have |
| # compiled it against GMP 1.3.2 (the latest I believe) and it seems to |
| # work OK, but I haven't tested it thoroughly (lacking knowledge about |
| # it). |
| |
| # A compatible MP library unencombered by the GPL also exists. It was |
| # posted to comp.sources.misc in volume 40 and is widely available from |
| # FTP archive sites. One URL for it is: |
| # ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/volume40/fgmp/part01.Z |
| |
| #GMP=/ufs/guido/src/gmp |
| #mpz mpzmodule.c -I$(GMP) $(GMP)/libgmp.a |
| |
| |
| # SGI IRIX specific modules -- off by default. |
| |
| # These module work on any SGI machine: |
| |
| # *** gl must be enabled higher up in this file *** |
| #fm fmmodule.c -lfm -lgl # Font Manager |
| #sgi sgimodule.c # sgi.nap() and a few more |
| |
| # This module requires the header file |
| # /usr/people/4Dgifts/iristools/include/izoom.h: |
| |
| #imgfile imgfile.c -limage -lgutil -lm # Image Processing Utilities |
| |
| |
| # These modules require the Multimedia Development Option (I think): |
| |
| #al almodule.c -laudio # Audio Library |
| #cd cdmodule.c -lcdaudio -lds -lmediad # CD Audio Library |
| #cl clmodule.c -lcl -lawareaudio # Compression Library |
| #sv svmodule.c yuvconvert.c -lsvideo -lXext -lX11 # Starter Video |
| |
| |
| # The FORMS library, by Mark Overmars, implements user interface |
| # components such as dialogs and buttons using SGI's GL and FM |
| # libraries. You must ftp the FORMS library separately from |
| # ftp://ftp.cs.ruu.nl/pub/SGI/FORMS. It was tested with FORMS 2.2a. |
| # The FORMS variable must point to the FORMS subdirectory of the forms |
| # toplevel directory: |
| |
| #FORMS=/ufs/guido/src/forms/FORMS |
| #fl flmodule.c -I$(FORMS) $(FORMS)/libforms.a -lfm -lgl |
| |
| |
| # SunOS specific modules -- off by default: |
| |
| #sunaudiodev sunaudiodev.c |
| |
| |
| # George Neville-Neil's timing module: |
| |
| #timing timingmodule.c |
| |
| |
| # Steen Lumholt's tkinter module. |
| # |
| # For use with plain Tk, use the first line. |
| # |
| # For use with extended Tk (i.e. if you have added extra widgets to |
| # the Tk library, such as the common "studButton" and "triButton" |
| # extensions), edit tkappinit.c, add appropriate -DWITH_... and |
| # libraries/objects to the second line, and use that. |
| # |
| # In all cases also enable the last line (TKPATH). |
| # |
| # See the section "The Tk interface" in ../README for more info. |
| |
| # *** Use ONE of the following two lines, see previous comments *** |
| #tkinter tkintermodule.c -I/usr/local/include -L/usr/local/lib -ltk -ltcl -lX11 |
| #tkinter tkintermodule.c tkappinit.c -DWITH_APPINIT -I/usr/local/include -L/usr/local/lib -ltk -ltcl -lX11 |
| |
| # *** ALWAYS use this line as well *** |
| #TKPATH=:$(DESTLIB)/tkinter |
| |
| |
| # Lance Ellinghaus's modules: |
| |
| rotor rotormodule.c # enigma-inspired encryption |
| #syslog syslogmodule.c # syslog daemon interface |
| |
| |
| # Lance's curses module. This requires the System V version of |
| # curses, sometimes known as ncurses (e.g. on Linux, link with |
| # -lncurses instead of -lcurses; on SunOS 4.1.3, insert -I/usr/5include |
| # -L/usr/5lib before -lcurses). |
| |
| #curses cursesmodule.c -lcurses -ltermcap |
| |
| |
| |
| # Tommy Burnette's 'new' module (creates new empty objects of certain kinds): |
| |
| #new newmodule.c |
| |
| |
| # John Redford's sybase module (requires sybase): |
| # (Unfortunately this code is orphaned. Read the source for documentation.) |
| |
| #sybase sybasemodule.c |
| |
| |
| # Generic (SunOS / SVR4) dynamic loading module. |
| # This is not needed for dynamic loading of Python modules -- |
| # it is a highly experimental and dangerous device for calling |
| # *arbitrary* C functions in *arbitrary* shared libraries: |
| |
| #dl dlmodule.c |
| |
| |
| # Anthony Baxter's gdbm module (derived from Jack's dbm module) |
| # GNU dbm(3) will require -lgdbm: |
| |
| #gdbm gdbmmodule.c -I/usr/local/include -L/usr/local/lib -lgdbm |
| |
| |
| # Berkeley DB interface. |
| # |
| # This requires the Berkeley DB code, see |
| # ftp://ftp.cs.berkeley.edu/pub/4bsd/db.1.85.tar.gz |
| # |
| # Edit the variables DB and DBPORT to point to the db top directory |
| # and the subdirectory of PORT where you built it. |
| |
| #DB=/depot/sundry/src/db.1.85/ |
| #DBPORT=$(DB)/PORT/sunos.5.2 |
| #bsddb bsddbmodule.o -I$(DB)/include -I$(DBPORT) $(DBPORT)/libdb.a |
| |
| |
| |
| # Andy Bensky's "environment" module (contains putenv()) |
| #environment environment.c |
| |
| # David Wayne Williams' soundex module |
| #soundex soundex.c |
| |
| # Objective-C (incomplete!!!) |
| #objc.c |
| |
| # Helper module for various ascii-encoders |
| binascii binasciimodule.c |
| |
| |
| # Example -- included for reference only: |
| # xx xxmodule.c |