home *** CD-ROM | disk | FTP | other *** search
Makefile | 2000-10-25 | 7.2 KB | 264 lines |
- # META-NOTE: this note is different from the note in the other Makefiles!
- # NOTE: Makefile.pre.in is converted into Makefile.pre by the configure
- # script in the toplevel directory or by ../config.status.
- # Makefile.pre is converted into Makefile by running the makesetup
- # script in the source directory. Once Makefile exists, it can be
- # brought up to date by running "make Makefile". (The makesetup also
- # creates config.c from config.c.in in the source directory.)
-
- # === Variables set by makesetup ===
-
- MODOBJS= _MODOBJS_
- MODLIBS= _MODLIBS_
-
- # === Variables set by configure ===
-
- VERSION= @VERSION@
- srcdir= @srcdir@
- VPATH= @srcdir@
-
- @SET_CXX@
- CC= @CC@
- RANLIB= @RANLIB@
- AR= @AR@
-
- OPT= @OPT@
- LDFLAGS= @LDFLAGS@
- LDLAST= @LDLAST@
- SGI_ABI= @SGI_ABI@
-
- DEFS= @DEFS@
- LIBS= @LIBS@
- LIBM= @LIBM@
- LIBC= @LIBC@
-
- # Machine-dependent subdirectories
- MACHDEP= @MACHDEP@
-
- # Install prefix for architecture-independent files
- prefix= @prefix@
-
- # Install prefix for architecture-dependent files
- exec_prefix= @exec_prefix@
-
- # Executable suffix (.exe on Windows and Mac OS X)
- EXE= @EXE@
-
- # Expanded directories
- BINDIR= $(exec_prefix)/bin
- LIBDIR= $(exec_prefix)/lib
- MANDIR= $(prefix)/man
- INCLUDEDIR= $(prefix)/include
- SCRIPTDIR= $(prefix)/lib
-
- # Detailed destination directories
- BINLIBDEST= $(LIBDIR)/python$(VERSION)
- LIBDEST= $(SCRIPTDIR)/python$(VERSION)
- INCLUDEPY= $(INCLUDEDIR)/python$(VERSION)
- LIBP= $(LIBDIR)/python$(VERSION)
-
- # Symbols used for using shared libraries
- SO= @SO@
- LDSHARED= @LDSHARED@
- CCSHARED= @CCSHARED@
- LINKFORSHARED= @LINKFORSHARED@
- DESTSHARED= $(BINLIBDEST)/lib-dynload
-
- # Portable install script (configure doesn't always guess right)
- INSTALL= @srcdir@/../install-sh -c
- INSTALL_PROGRAM=${INSTALL} -m 755
- INSTALL_DATA= ${INSTALL} -m 644
- # Shared libraries must be installed with executable mode on some systems;
- # rather than figuring out exactly which, we always give them executable mode.
- # Also, making them read-only seems to be a good idea...
- INSTALL_SHARED= ${INSTALL} -m 555
-
- # === Variables that are customizable by hand or by inclusion in Setup ===
-
- LINKCC= @LINKCC@
- INCLDIR= $(srcdir)/../Include
- CONFIGINCLDIR= ..
- CFLAGS= $(OPT) -I$(INCLDIR) -I$(CONFIGINCLDIR) $(DEFS)
-
- MKDEP= mkdep
- SHELL= /bin/sh
-
- MAKESETUP= $(srcdir)/makesetup
-
- # (The makesetup script inserts all variable definitions
- # found in the Setup file just below the following line.
- # This means that the Setup file can override any of the definitions
- # given before this point, but not any given below.
- # The script insert the definitions in reverse order,
- # for the benefits of independent extensions.)
- # === Definitions added by makesetup ===
-
- # === Fixed definitions ===
-
- FIXOBJS= config.o getpath.o main.o getbuildinfo.o
- OBJS= $(MODOBJS) $(FIXOBJS)
-
- #MAINOBJ= python.o
- MAINOBJ= @MAINOBJ@
-
- SYSLIBS= $(LIBM) $(LIBC)
-
- LIBRARY= ../libpython$(VERSION).a
- LDLIBRARY= ../@LDLIBRARY@
-
- # === Rules ===
-
- all: $(OBJS)
-
- # This target is used by the master Makefile to add the objects to the library.
- # To deal with the conflict between signalmodule.o and
- # sigcheck.o+intrcheck.o, we remove the latter two if we have the former.
- add2lib: $(OBJS)
- -if test -f hassignal; \
- then echo removing sigcheck.o intrcheck.o; \
- $(AR) d $(LIBRARY) sigcheck.o intrcheck.o 2>/dev/null; \
- else echo leaving sigcheck.o intrcheck.o in; fi
- $(AR) cr $(LIBRARY) $(OBJS)
- touch add2lib
-
- # This target is used by the master Makefile to link the final binary.
- link: $(MAINOBJ)
- $(LINKCC) $(LDFLAGS) $(LINKFORSHARED) $(MAINOBJ) \
- $(LDLIBRARY) $(MODLIBS) $(LIBS) $(SYSLIBS) -o python$(EXE) $(LDLAST)
- mv python$(EXE) ../python$(EXE)
-
- clean:
- -rm -f *.o python$(EXE) core *~ [@,#]* *.old *.orig *.rej
- -rm -f add2lib hassignal
-
- clobber: clean
- -rm -f *.a tags TAGS config.c Makefile.pre
- -rm -f *.so *.sl so_locations
-
- getpath.o: getpath.c Makefile
- $(CC) -c $(CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \
- -DPREFIX='"$(prefix)"' \
- -DEXEC_PREFIX='"$(exec_prefix)"' \
- -DVERSION='"$(VERSION)"' \
- -DVPATH='"$(VPATH)"' \
- $(srcdir)/getpath.c
-
- # When the configuration changes, we remove the library, so that it
- # gets remade from scratch; this ensures to remove modules that are no
- # longer pertinent (but that were in a previous configuration).
- config.c Makefile: Makefile.pre config.c.in $(MAKESETUP)
- config.c Makefile: Setup.config Setup Setup.local
- config.c Makefile:
- -rm -rf $(LIBRARY)
- $(SHELL) $(MAKESETUP) Setup.config Setup.local Setup
-
- hassignal:
- -rm -f hassignal
- -for i in $(OBJS); do \
- if test "$$i" = "signalmodule.o"; then \
- echo yes >hassignal; break; \
- fi; \
- done
-
- Setup: $(srcdir)/Setup.in
- @if [ -f Setup ] ; then \
- echo; \
- echo "----------------------------------------------"; \
- echo "Modules/Setup.in is newer than Modules/Setup;"; \
- echo "check to make sure you have all the updates"; \
- echo "you need in your Setup file."; \
- echo "----------------------------------------------"; \
- echo; \
- else (set -x; cp $(srcdir)/Setup.in Setup); fi
-
-
- Setup.local:
- echo "# Edit this file for local setup changes" >Setup.local
-
- Makefile.pre: Makefile.pre.in ../config.status
- (cd ..; CONFIG_FILES=Modules/Makefile.pre CONFIG_HEADERS= \
- $(SHELL) config.status)
-
- depend:
- $(MKDEP) $(CFLAGS) `echo $(OBJS) | tr ' ' '\012' | \
- sed 's|\(.*\)\.o|$(srcdir)/\1.c|'`
-
- .PRECIOUS: ../python$(EXE)
-
- glmodule.c: $(srcdir)/cgen.py $(srcdir)/cstubs
- python $(srcdir)/cgen.py <$(srcdir)/cstubs >glmodule.c
-
- almodule.o: almodule.c
- arraymodule.o: arraymodule.c
- audioop.o: audioop.c
- cdmodule.o: cdmodule.c
- cgensupport.o: cgensupport.c
- clmodule.o: clmodule.c
- _codecsmodule.o: _codecsmodule.c
- dbmmodule.o: dbmmodule.c
- errnomodule.o: errnomodule.c
- fcntlmodule.o: fcntlmodule.c
- flmodule.o: flmodule.c
- fmmodule.o: fmmodule.c
- glmodule.o: glmodule.c
- imageop.o: imageop.c
- imgfile.o: imgfile.c
- main.o: main.c
- mathmodule.o: mathmodule.c
- md5c.o: md5c.c
- md5module.o: md5module.c
- mpzmodule.o: mpzmodule.c
- nismodule.o: nismodule.c
- operator.o: operator.c
- parsermodule.o: parsermodule.c
- posixmodule.o: posixmodule.c
- pwdmodule.o: pwdmodule.c
- regexmodule.o: regexmodule.c
- regexpr.o: regexpr.c
- resource.o: resource.c
- rgbimgmodule.o: rgbimgmodule.c
- rotormodule.o: rotormodule.c
- selectmodule.o: selectmodule.c
- sgimodule.o: sgimodule.c
- socketmodule.o: socketmodule.c
- stdwinmodule.o: stdwinmodule.c
- stropmodule.o: stropmodule.c
- structmodule.o: structmodule.c
- sunaudiodev.o: sunaudiodev.c
- svmodule.o: svmodule.c
- threadmodule.o: threadmodule.c
- timemodule.o: timemodule.c
- timingmodule.o: timingmodule.c
- unicodedata.o: unicodedata.c unicodedatabase.o
- unicodedatabase.o: unicodedatabase.c unicodedatabase.h
- ucnhash.o: ucnhash.c
- xxmodule.o: xxmodule.c
- yuvconvert.o: yuvconvert.c
-
- # Rules to build and install all shared modules
- sharedmods: $(SHAREDMODS)
- sharedinstall: $(DESTSHARED) $(SHAREDMODS)
- -for i in X $(SHAREDMODS); do \
- if test $$i != X; \
- then $(INSTALL_SHARED) $$i $(DESTSHARED)/$$i; \
- fi; \
- done
-
- DESTDIRS= $(exec_prefix) $(LIBDIR) $(BINLIBDEST) $(DESTSHARED)
-
- $(DESTSHARED):
- @for i in $(DESTDIRS); \
- do \
- if test ! -d $$i; then \
- echo "Creating directory $$i"; \
- mkdir $$i; \
- chmod 755 $$i; \
- else true; \
- fi; \
- done
-
- ccpython.o: ccpython.cc
- $(CXX) $(CFLAGS) -c $*.cc
-
- # Stuff is appended here by makesetup and make depend
-