| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1 | # Top-level Makefile for Python | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 2 | # | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 3 | # As distributed, this file is called Makefile.pre.in; it is processed | 
 | 4 | # into the real Makefile by running the script ./configure, which | 
 | 5 | # replaces things like @spam@ with values appropriate for your system. | 
 | 6 | # This means that if you edit Makefile, your changes get lost the next | 
 | 7 | # time you run the configure script.  Ideally, you can do: | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 8 | # | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 9 | #	./configure | 
 | 10 | #	make | 
 | 11 | #	make test | 
 | 12 | #	make install | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 13 | # | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 14 | # If you have a previous version of Python installed that you don't | 
 | 15 | # want to overwrite, you can use "make altinstall" instead of "make | 
| Neil Schemenauer | 2b2681a | 2001-02-16 04:16:34 +0000 | [diff] [blame] | 16 | # install".  Refer to the "Installing" section in the README file for | 
 | 17 | # additional details. | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 18 | # | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 19 | # See also the section "Build instructions" in the README file. | 
 | 20 |  | 
 | 21 | # === Variables set by makesetup === | 
 | 22 |  | 
 | 23 | MODOBJS=        _MODOBJS_ | 
 | 24 | MODLIBS=        _MODLIBS_ | 
 | 25 |  | 
 | 26 | # === Variables set by configure | 
 | 27 | VERSION=	@VERSION@ | 
 | 28 | srcdir=		@srcdir@ | 
 | 29 | VPATH=		@srcdir@ | 
 | 30 |  | 
 | 31 | CC=		@CC@ | 
 | 32 | CXX=		@CXX@ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 33 | MAINCC=		@MAINCC@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 34 | LINKCC=		@LINKCC@ | 
 | 35 | AR=		@AR@ | 
 | 36 | RANLIB=		@RANLIB@ | 
| Martin v. Löwis | dea59e5 | 2006-01-05 10:00:36 +0000 | [diff] [blame] | 37 | SVNVERSION=	@SVNVERSION@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 38 |  | 
 | 39 | # Shell used by make (some versions default to the login shell, which is bad) | 
 | 40 | SHELL=		/bin/sh | 
 | 41 |  | 
 | 42 | # Use this to make a link between python$(VERSION) and python in $(BINDIR) | 
 | 43 | LN=		@LN@ | 
 | 44 |  | 
 | 45 | # Portable install script (configure doesn't always guess right) | 
 | 46 | INSTALL=	@INSTALL@ | 
 | 47 | INSTALL_PROGRAM=@INSTALL_PROGRAM@ | 
| Neil Schemenauer | 3f5cc20 | 2001-04-10 23:03:35 +0000 | [diff] [blame] | 48 | INSTALL_SCRIPT= @INSTALL_SCRIPT@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 49 | INSTALL_DATA=	@INSTALL_DATA@ | 
 | 50 | # Shared libraries must be installed with executable mode on some systems; | 
 | 51 | # rather than figuring out exactly which, we always give them executable mode. | 
 | 52 | # Also, making them read-only seems to be a good idea... | 
 | 53 | INSTALL_SHARED= ${INSTALL} -m 555 | 
 | 54 |  | 
 | 55 | MAKESETUP=      $(srcdir)/Modules/makesetup | 
 | 56 |  | 
 | 57 | # Compiler options | 
 | 58 | OPT=		@OPT@ | 
| Skip Montanaro | decc6a4 | 2003-01-01 20:07:49 +0000 | [diff] [blame] | 59 | BASECFLAGS=	@BASECFLAGS@ | 
| Brett Cannon | 08cd598 | 2005-04-24 22:26:38 +0000 | [diff] [blame] | 60 | CFLAGS=		$(BASECFLAGS) $(OPT) $(EXTRA_CFLAGS) | 
| Brett Cannon | 516592f | 2004-12-07 00:42:59 +0000 | [diff] [blame] | 61 | # Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to | 
 | 62 | # be able to build extension modules using the directories specified in the | 
 | 63 | # environment variables | 
| Thomas Wouters | 89d996e | 2007-09-08 17:39:28 +0000 | [diff] [blame] | 64 | CPPFLAGS=	-I. -IInclude -I$(srcdir)/Include @CPPFLAGS@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 65 | LDFLAGS=	@LDFLAGS@ | 
 | 66 | LDLAST=		@LDLAST@ | 
 | 67 | SGI_ABI=	@SGI_ABI@ | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 68 | CCSHARED=	@CCSHARED@ | 
 | 69 | LINKFORSHARED=	@LINKFORSHARED@ | 
 | 70 | # Extra C flags added for building the interpreter object files. | 
 | 71 | CFLAGSFORSHARED=@CFLAGSFORSHARED@ | 
 | 72 | # C flags used for building the interpreter object files | 
| Mark Hammond | 8235ea1 | 2002-07-19 06:55:41 +0000 | [diff] [blame] | 73 | PY_CFLAGS=	$(CFLAGS) $(CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 74 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 75 |  | 
 | 76 | # Machine-dependent subdirectories | 
 | 77 | MACHDEP=	@MACHDEP@ | 
 | 78 |  | 
 | 79 | # Install prefix for architecture-independent files | 
 | 80 | prefix=		@prefix@ | 
 | 81 |  | 
 | 82 | # Install prefix for architecture-dependent files | 
 | 83 | exec_prefix=	@exec_prefix@ | 
 | 84 |  | 
| Thomas Wouters | bca5480 | 2007-09-10 19:32:14 +0000 | [diff] [blame] | 85 | # Install prefix for data files | 
 | 86 | datarootdir=    @datarootdir@ | 
 | 87 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 88 | # Expanded directories | 
 | 89 | BINDIR=		$(exec_prefix)/bin | 
 | 90 | LIBDIR=		$(exec_prefix)/lib | 
| Martin v. Löwis | d429ab6 | 2001-08-02 06:20:20 +0000 | [diff] [blame] | 91 | MANDIR=		@mandir@ | 
 | 92 | INCLUDEDIR=	@includedir@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 93 | CONFINCLUDEDIR=	$(exec_prefix)/include | 
 | 94 | SCRIPTDIR=	$(prefix)/lib | 
 | 95 |  | 
 | 96 | # Detailed destination directories | 
 | 97 | BINLIBDEST=	$(LIBDIR)/python$(VERSION) | 
 | 98 | LIBDEST=	$(SCRIPTDIR)/python$(VERSION) | 
 | 99 | INCLUDEPY=	$(INCLUDEDIR)/python$(VERSION) | 
 | 100 | CONFINCLUDEPY=	$(CONFINCLUDEDIR)/python$(VERSION) | 
 | 101 | LIBP=		$(LIBDIR)/python$(VERSION) | 
 | 102 |  | 
 | 103 | # Symbols used for using shared libraries | 
 | 104 | SO=		@SO@ | 
 | 105 | LDSHARED=	@LDSHARED@ | 
| Neil Schemenauer | 75e3389 | 2001-02-16 03:36:53 +0000 | [diff] [blame] | 106 | BLDSHARED=	@BLDSHARED@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 107 | DESTSHARED=	$(BINLIBDEST)/lib-dynload | 
 | 108 |  | 
 | 109 | # Executable suffix (.exe on Windows and Mac OS X) | 
| Neil Schemenauer | cf9926c | 2001-02-27 18:50:56 +0000 | [diff] [blame] | 110 | EXE=		@EXEEXT@ | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 111 | BUILDEXE=	@BUILDEXEEXT@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 112 |  | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 113 | # Short name and location for Mac OS X Python framework | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 114 | UNIVERSALSDK=@UNIVERSALSDK@ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 115 | PYTHONFRAMEWORK=	@PYTHONFRAMEWORK@ | 
 | 116 | PYTHONFRAMEWORKDIR=	@PYTHONFRAMEWORKDIR@ | 
 | 117 | PYTHONFRAMEWORKPREFIX=	@PYTHONFRAMEWORKPREFIX@ | 
 | 118 | PYTHONFRAMEWORKINSTALLDIR= @PYTHONFRAMEWORKINSTALLDIR@ | 
| Jack Jansen | 6b08a40 | 2004-06-03 12:41:45 +0000 | [diff] [blame] | 119 | # Deployment target selected during configure, to be checked | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 120 | # by distutils. The export statement is needed to ensure that the | 
 | 121 | # deployment target is active during build. | 
 | 122 | MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@ | 
 | 123 | @EXPORT_MACOSX_DEPLOYMENT_TARGET@export MACOSX_DEPLOYMENT_TARGET | 
 | 124 |  | 
| Bob Ippolito | 7026a0a | 2005-03-28 23:23:47 +0000 | [diff] [blame] | 125 | # Options to enable prebinding (for fast startup prior to Mac OS X 10.3) | 
 | 126 | OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 127 |  | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 128 | # Environment to run shared python without installed libraries | 
 | 129 | RUNSHARED=       @RUNSHARED@ | 
 | 130 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 131 | # Modes for directories, executables and data files created by the | 
 | 132 | # install process.  Default to user-only-writable for all file types. | 
 | 133 | DIRMODE=	755 | 
 | 134 | EXEMODE=	755 | 
 | 135 | FILEMODE=	644 | 
 | 136 |  | 
| Neil Schemenauer | 64b1b68 | 2001-03-22 00:32:32 +0000 | [diff] [blame] | 137 | # configure script arguments | 
 | 138 | CONFIG_ARGS=	@CONFIG_ARGS@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 139 |  | 
 | 140 |  | 
 | 141 | # Subdirectories with code | 
 | 142 | SRCDIRS= 	@SRCDIRS@ | 
 | 143 |  | 
 | 144 | # Other subdirectories | 
 | 145 | SUBDIRSTOO=	Include Lib Misc Demo | 
 | 146 |  | 
 | 147 | # Files and directories to be distributed | 
| Martin v. Löwis | 4f1cd8b | 2001-07-26 13:41:06 +0000 | [diff] [blame] | 148 | CONFIGFILES=	configure configure.in acconfig.h pyconfig.h.in Makefile.pre.in | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 149 | DISTFILES=	README ChangeLog $(CONFIGFILES) | 
 | 150 | DISTDIRS=	$(SUBDIRS) $(SUBDIRSTOO) Ext-dummy | 
 | 151 | DIST=		$(DISTFILES) $(DISTDIRS) | 
 | 152 |  | 
 | 153 |  | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 154 | LIBRARY=	@LIBRARY@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 155 | LDLIBRARY=      @LDLIBRARY@ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 156 | BLDLIBRARY=     @BLDLIBRARY@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 157 | DLLLIBRARY=	@DLLLIBRARY@ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 158 | LDLIBRARYDIR=   @LDLIBRARYDIR@ | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 159 | INSTSONAME=	@INSTSONAME@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 160 |  | 
 | 161 |  | 
 | 162 | LIBS=		@LIBS@ | 
 | 163 | LIBM=		@LIBM@ | 
 | 164 | LIBC=		@LIBC@ | 
 | 165 | SYSLIBS=	$(LIBM) $(LIBC) | 
| Martin v. Löwis | f90ae20 | 2002-06-11 06:22:31 +0000 | [diff] [blame] | 166 | SHLIBS=		@SHLIBS@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 167 |  | 
| Martin v. Löwis | 2d7e264 | 2002-04-05 16:50:53 +0000 | [diff] [blame] | 168 | THREADOBJ=	@THREADOBJ@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 169 | DLINCLDIR=	@DLINCLDIR@ | 
 | 170 | DYNLOADFILE=	@DYNLOADFILE@ | 
| Jack Jansen | c49e5b7 | 2001-06-19 15:00:23 +0000 | [diff] [blame] | 171 | MACHDEP_OBJS=	@MACHDEP_OBJS@ | 
| Christian Heimes | 32fbe59 | 2007-11-12 15:01:33 +0000 | [diff] [blame] | 172 | LIBOBJDIR=	Python/ | 
 | 173 | LIBOBJS=	@LIBOBJS@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 174 |  | 
| Neil Schemenauer | cf9926c | 2001-02-27 18:50:56 +0000 | [diff] [blame] | 175 | PYTHON=		python$(EXE) | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 176 | BUILDPYTHON=	python$(BUILDEXE) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 177 |  | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 178 | # The task to run while instrument when building the profile-opt target | 
| Benjamin Peterson | f10a79a | 2008-10-11 00:49:57 +0000 | [diff] [blame] | 179 | PROFILE_TASK=	$(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck | 
 | 180 | #PROFILE_TASK=	$(srcdir)/Lib/test/regrtest.py | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 181 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 182 | # === Definitions added by makesetup === | 
 | 183 |  | 
 | 184 |  | 
 | 185 | ########################################################################## | 
 | 186 | # Modules | 
 | 187 | MODULE_OBJS=	\ | 
 | 188 | 		Modules/config.o \ | 
 | 189 | 		Modules/getpath.o \ | 
| Neil Schemenauer | 9c63e6d | 2001-08-29 23:44:38 +0000 | [diff] [blame] | 190 | 		Modules/main.o \ | 
 | 191 | 		Modules/gcmodule.o | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 192 |  | 
 | 193 | # Used of signalmodule.o is not available | 
 | 194 | SIGNAL_OBJS=	@SIGNAL_OBJS@ | 
 | 195 |  | 
 | 196 |  | 
 | 197 | ########################################################################## | 
 | 198 | # Grammar | 
| Neil Schemenauer | 7cd124c | 2001-02-27 02:19:16 +0000 | [diff] [blame] | 199 | GRAMMAR_H=	$(srcdir)/Include/graminit.h | 
 | 200 | GRAMMAR_C=	$(srcdir)/Python/graminit.c | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 201 | GRAMMAR_INPUT=	$(srcdir)/Grammar/Grammar | 
 | 202 |  | 
 | 203 |  | 
 | 204 | ########################################################################## | 
 | 205 | # Parser | 
| Neil Schemenauer | cf9926c | 2001-02-27 18:50:56 +0000 | [diff] [blame] | 206 | PGEN=		Parser/pgen$(EXE) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 207 |  | 
 | 208 | POBJS=		\ | 
 | 209 | 		Parser/acceler.o \ | 
 | 210 | 		Parser/grammar1.o \ | 
 | 211 | 		Parser/listnode.o \ | 
 | 212 | 		Parser/node.o \ | 
 | 213 | 		Parser/parser.o \ | 
 | 214 | 		Parser/parsetok.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 215 | 		Parser/bitset.o \ | 
| Guido van Rossum | d3ab37f | 2003-04-17 14:55:42 +0000 | [diff] [blame] | 216 | 		Parser/metagrammar.o \ | 
 | 217 | 		Parser/firstsets.o \ | 
 | 218 | 		Parser/grammar.o \ | 
 | 219 | 		Parser/pgen.o | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 220 |  | 
| Martin v. Löwis | 00f1e3f | 2002-08-04 17:29:52 +0000 | [diff] [blame] | 221 | PARSER_OBJS=	$(POBJS) Parser/myreadline.o Parser/tokenizer.o | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 222 |  | 
 | 223 | PGOBJS=		\ | 
| Neil Schemenauer | fd1030e | 2002-04-22 03:05:25 +0000 | [diff] [blame] | 224 | 		Objects/obmalloc.o \ | 
| Guido van Rossum | f227252 | 2001-12-04 03:54:08 +0000 | [diff] [blame] | 225 | 		Python/mysnprintf.o \ | 
| Martin v. Löwis | 00f1e3f | 2002-08-04 17:29:52 +0000 | [diff] [blame] | 226 | 		Parser/tokenizer_pgen.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 227 | 		Parser/printgrammar.o \ | 
 | 228 | 		Parser/pgenmain.o | 
 | 229 |  | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 230 | PARSER_HEADERS= \ | 
 | 231 | 		Parser/parser.h \ | 
 | 232 | 		Parser/tokenizer.h | 
 | 233 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 234 | PGENOBJS=	$(PGENMAIN) $(POBJS) $(PGOBJS) | 
 | 235 |  | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 236 | ########################################################################## | 
 | 237 | # AST | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 238 | AST_H_DIR=	$(srcdir)/Include | 
 | 239 | AST_H=		$(AST_H_DIR)/Python-ast.h | 
 | 240 | AST_C_DIR=	$(srcdir)/Python | 
 | 241 | AST_C=		$(AST_C_DIR)/Python-ast.c | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 242 | AST_ASDL=	$(srcdir)/Parser/Python.asdl | 
 | 243 |  | 
 | 244 | ASDLGEN_FILES=	$(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py | 
 | 245 | # XXX Note that a build now requires Python exist before the build starts | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 246 | ASDLGEN=	$(srcdir)/Parser/asdl_c.py | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 247 |  | 
 | 248 | ########################################################################## | 
 | 249 | # Python | 
 | 250 | PYTHON_OBJS=	\ | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 251 | 		Python/_warnings.o \ | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 252 | 		Python/Python-ast.o \ | 
 | 253 | 		Python/asdl.o \ | 
 | 254 | 		Python/ast.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 255 | 		Python/bltinmodule.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 256 | 		Python/ceval.o \ | 
 | 257 | 		Python/compile.o \ | 
 | 258 | 		Python/codecs.o \ | 
 | 259 | 		Python/errors.o \ | 
 | 260 | 		Python/frozen.o \ | 
 | 261 | 		Python/frozenmain.o \ | 
| Jeremy Hylton | 4db62b1 | 2001-02-27 19:07:02 +0000 | [diff] [blame] | 262 | 		Python/future.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 263 | 		Python/getargs.o \ | 
 | 264 | 		Python/getcompiler.o \ | 
 | 265 | 		Python/getcopyright.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 266 | 		Python/getplatform.o \ | 
 | 267 | 		Python/getversion.o \ | 
 | 268 | 		Python/graminit.o \ | 
 | 269 | 		Python/import.o \ | 
 | 270 | 		Python/importdl.o \ | 
 | 271 | 		Python/marshal.o \ | 
 | 272 | 		Python/modsupport.o \ | 
 | 273 | 		Python/mystrtoul.o \ | 
| Marc-André Lemburg | e5006eb | 2001-07-31 13:24:44 +0000 | [diff] [blame] | 274 | 		Python/mysnprintf.o \ | 
| Thomas Wouters | 00ee7ba | 2006-08-21 19:07:27 +0000 | [diff] [blame] | 275 | 		Python/peephole.o \ | 
| Neal Norwitz | adb69fc | 2005-12-17 20:54:49 +0000 | [diff] [blame] | 276 | 		Python/pyarena.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 277 | 		Python/pyfpe.o \ | 
| Christian Heimes | 53876d9 | 2008-04-19 00:31:39 +0000 | [diff] [blame] | 278 | 		Python/pymath.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 279 | 		Python/pystate.o \ | 
 | 280 | 		Python/pythonrun.o \ | 
 | 281 | 		Python/structmember.o \ | 
| Jeremy Hylton | cb17ae8 | 2001-02-09 22:22:18 +0000 | [diff] [blame] | 282 | 		Python/symtable.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 283 | 		Python/sysmodule.o \ | 
 | 284 | 		Python/traceback.o \ | 
 | 285 | 		Python/getopt.o \ | 
| Christian Heimes | 99170a5 | 2007-12-19 02:07:34 +0000 | [diff] [blame] | 286 | 		Python/pystrcmp.o \ | 
| Martin v. Löwis | 737ea82 | 2004-06-08 18:52:54 +0000 | [diff] [blame] | 287 | 		Python/pystrtod.o \ | 
| Eric Smith | 8c66326 | 2007-08-25 02:26:07 +0000 | [diff] [blame] | 288 | 		Python/formatter_unicode.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 289 | 		Python/$(DYNLOADFILE) \ | 
| Christian Heimes | 32fbe59 | 2007-11-12 15:01:33 +0000 | [diff] [blame] | 290 | 		$(LIBOBJS) \ | 
| Jack Jansen | c49e5b7 | 2001-06-19 15:00:23 +0000 | [diff] [blame] | 291 | 		$(MACHDEP_OBJS) \ | 
| Martin v. Löwis | 2d7e264 | 2002-04-05 16:50:53 +0000 | [diff] [blame] | 292 | 		$(THREADOBJ) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 293 |  | 
 | 294 |  | 
 | 295 | ########################################################################## | 
 | 296 | # Objects | 
 | 297 | OBJECT_OBJS=	\ | 
 | 298 | 		Objects/abstract.o \ | 
| Guido van Rossum | 77f6a65 | 2002-04-03 22:41:51 +0000 | [diff] [blame] | 299 | 		Objects/boolobject.o \ | 
| Gregory P. Smith | 60d241f | 2007-10-16 06:31:30 +0000 | [diff] [blame] | 300 | 		Objects/bytes_methods.o \ | 
| Christian Heimes | 2c9c7a5 | 2008-05-26 13:42:13 +0000 | [diff] [blame] | 301 | 		Objects/bytearrayobject.o \ | 
| Guido van Rossum | 4dfe8a1 | 2006-04-22 23:28:04 +0000 | [diff] [blame] | 302 | 		Objects/bytesobject.o \ | 
| Jeremy Hylton | fbd849f | 2001-01-25 20:04:14 +0000 | [diff] [blame] | 303 | 		Objects/cellobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 304 | 		Objects/classobject.o \ | 
 | 305 | 		Objects/cobject.o \ | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 306 | 		Objects/codeobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 307 | 		Objects/complexobject.o \ | 
| Tim Peters | 6d6c1a3 | 2001-08-02 04:15:00 +0000 | [diff] [blame] | 308 | 		Objects/descrobject.o \ | 
| Guido van Rossum | 7dab242 | 2002-04-26 19:40:56 +0000 | [diff] [blame] | 309 | 		Objects/enumobject.o \ | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 310 | 		Objects/exceptions.o \ | 
| Martin v. Löwis | e440e47 | 2004-06-01 15:22:42 +0000 | [diff] [blame] | 311 | 		Objects/genobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 312 | 		Objects/fileobject.o \ | 
 | 313 | 		Objects/floatobject.o \ | 
 | 314 | 		Objects/frameobject.o \ | 
 | 315 | 		Objects/funcobject.o \ | 
| Guido van Rossum | 59d1d2b | 2001-04-20 19:13:02 +0000 | [diff] [blame] | 316 | 		Objects/iterobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 317 | 		Objects/listobject.o \ | 
 | 318 | 		Objects/longobject.o \ | 
 | 319 | 		Objects/dictobject.o \ | 
| Travis E. Oliphant | b99f762 | 2007-08-18 11:21:56 +0000 | [diff] [blame] | 320 | 		Objects/memoryobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 321 | 		Objects/methodobject.o \ | 
 | 322 | 		Objects/moduleobject.o \ | 
 | 323 | 		Objects/object.o \ | 
| Tim Peters | 1221c0a | 2002-03-23 00:20:15 +0000 | [diff] [blame] | 324 | 		Objects/obmalloc.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 325 | 		Objects/rangeobject.o \ | 
| Raymond Hettinger | a690a99 | 2003-11-16 16:17:49 +0000 | [diff] [blame] | 326 |                 Objects/setobject.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 327 | 		Objects/sliceobject.o \ | 
| Guido van Rossum | 98bf58f | 2001-10-18 20:34:25 +0000 | [diff] [blame] | 328 | 		Objects/structseq.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 329 | 		Objects/tupleobject.o \ | 
 | 330 | 		Objects/typeobject.o \ | 
| Georg Brandl | 52d168a | 2008-01-07 18:10:24 +0000 | [diff] [blame] | 331 | 		Objects/unicodeobject.o \ | 
 | 332 | 		Objects/unicodectype.o \ | 
 | 333 | 		Objects/weakrefobject.o | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 334 |  | 
 | 335 |  | 
 | 336 | ########################################################################## | 
 | 337 | # objects that get linked into the Python library | 
 | 338 | LIBRARY_OBJS=	\ | 
| Neil Schemenauer | 1882182 | 2001-01-27 21:42:38 +0000 | [diff] [blame] | 339 | 		Modules/getbuildinfo.o \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 340 | 		$(PARSER_OBJS) \ | 
 | 341 | 		$(OBJECT_OBJS) \ | 
 | 342 | 		$(PYTHON_OBJS) \ | 
 | 343 | 		$(MODULE_OBJS) \ | 
 | 344 | 		$(SIGNAL_OBJS) \ | 
 | 345 | 		$(MODOBJS) | 
 | 346 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 347 | ######################################################################### | 
 | 348 | # Rules | 
 | 349 |  | 
 | 350 | # Default target | 
| Guido van Rossum | 8ce8a78 | 2007-11-01 19:42:39 +0000 | [diff] [blame] | 351 | all:		build_all | 
 | 352 | build_all:	$(BUILDPYTHON) oldsharedmods sharedmods | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 353 |  | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 354 | # Compile a binary with gcc profile guided optimization. | 
 | 355 | profile-opt: | 
 | 356 | 	@echo "Building with support for profile generation:" | 
 | 357 | 	$(MAKE) clean | 
 | 358 | 	$(MAKE) build_all_generate_profile | 
 | 359 | 	@echo "Running benchmark to generate profile data:" | 
 | 360 | 	$(MAKE) profile-removal | 
 | 361 | 	$(MAKE) run_profile_task | 
 | 362 | 	@echo "Rebuilding with profile guided optimizations:" | 
 | 363 | 	$(MAKE) clean | 
 | 364 | 	$(MAKE) build_all_use_profile | 
 | 365 |  | 
 | 366 | build_all_generate_profile: | 
 | 367 | 	$(MAKE) all CFLAGS="$(CFLAGS) -fprofile-generate" LIBS="$(LIBS) -lgcov" | 
 | 368 |  | 
 | 369 | run_profile_task: | 
 | 370 | 	./$(BUILDPYTHON) $(PROFILE_TASK) | 
 | 371 |  | 
 | 372 | build_all_use_profile: | 
 | 373 | 	$(MAKE) all CFLAGS="$(CFLAGS) -fprofile-use" | 
 | 374 |  | 
| Georg Brandl | b533e26 | 2008-05-25 18:19:30 +0000 | [diff] [blame] | 375 | coverage: | 
 | 376 | 	@echo "Building with support for coverage checking:" | 
 | 377 | 	$(MAKE) clean | 
 | 378 | 	$(MAKE) all CFLAGS="$(CFLAGS) -O0 -pg -fprofile-arcs -ftest-coverage" LIBS="$(LIBS) -lgcov" | 
 | 379 |  | 
 | 380 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 381 | # Build the interpreter | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 382 | $(BUILDPYTHON):	Modules/python.o $(LIBRARY) $(LDLIBRARY) | 
| Fred Drake | a1a84e7 | 2001-03-06 05:52:16 +0000 | [diff] [blame] | 383 | 		$(LINKCC) $(LDFLAGS) $(LINKFORSHARED) -o $@ \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 384 | 			Modules/python.o \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 385 | 			$(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 386 |  | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 387 | platform: $(BUILDPYTHON) | 
| Guido van Rossum | 452bf51 | 2007-02-09 05:32:43 +0000 | [diff] [blame] | 388 | 	$(RUNSHARED) ./$(BUILDPYTHON) -E -c 'import sys ; from distutils.util import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 389 |  | 
 | 390 |  | 
 | 391 | # Build the shared modules | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 392 | sharedmods: $(BUILDPYTHON) | 
| Thomas Wouters | 89f507f | 2006-12-13 04:49:30 +0000 | [diff] [blame] | 393 | 	@case $$MAKEFLAGS in \ | 
| Christian Heimes | 1af737c | 2008-01-23 08:24:23 +0000 | [diff] [blame] | 394 | 	*s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 395 | 	*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ | 
| Guido van Rossum | 1140cb2 | 2001-09-12 18:59:25 +0000 | [diff] [blame] | 396 | 	esac | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 397 |  | 
 | 398 | # Build static library | 
| Guido van Rossum | 4e6a7a6 | 2001-04-09 22:23:22 +0000 | [diff] [blame] | 399 | # avoid long command lines, same as LIBRARY_OBJS | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 400 | $(LIBRARY): $(LIBRARY_OBJS) | 
 | 401 | 	-rm -f $@ | 
| Neil Schemenauer | 1882182 | 2001-01-27 21:42:38 +0000 | [diff] [blame] | 402 | 	$(AR) cr $@ Modules/getbuildinfo.o | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 403 | 	$(AR) cr $@ $(PARSER_OBJS) | 
 | 404 | 	$(AR) cr $@ $(OBJECT_OBJS) | 
 | 405 | 	$(AR) cr $@ $(PYTHON_OBJS) | 
 | 406 | 	$(AR) cr $@ $(MODULE_OBJS) $(SIGNAL_OBJS) | 
 | 407 | 	$(AR) cr $@ $(MODOBJS) | 
 | 408 | 	$(RANLIB) $@ | 
 | 409 |  | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 410 | libpython$(VERSION).so: $(LIBRARY_OBJS) | 
| Martin v. Löwis | bc12262 | 2003-06-14 13:11:24 +0000 | [diff] [blame] | 411 | 	if test $(INSTSONAME) != $(LDLIBRARY); then \ | 
| Benjamin Peterson | ae5360b | 2008-09-08 23:05:23 +0000 | [diff] [blame] | 412 | 		$(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ | 
| Martin v. Löwis | 45ec95d | 2003-03-30 15:37:33 +0000 | [diff] [blame] | 413 | 		$(LN) -f $(INSTSONAME) $@; \ | 
| Georg Brandl | b1441c7 | 2009-01-03 22:33:39 +0000 | [diff] [blame] | 414 | 	else \ | 
| Benjamin Peterson | ae5360b | 2008-09-08 23:05:23 +0000 | [diff] [blame] | 415 | 		$(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ | 
| Martin v. Löwis | 45ec95d | 2003-03-30 15:37:33 +0000 | [diff] [blame] | 416 | 	fi | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 417 |  | 
| Georg Brandl | b1441c7 | 2009-01-03 22:33:39 +0000 | [diff] [blame] | 418 | libpython$(VERSION).dylib: $(LIBRARY_OBJS) | 
 | 419 | 	 $(CC) -dynamiclib -Wl,-single_module $(LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(VERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ | 
 | 420 | 		  | 
 | 421 |  | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 422 | libpython$(VERSION).sl: $(LIBRARY_OBJS) | 
| Benjamin Peterson | ae5360b | 2008-09-08 23:05:23 +0000 | [diff] [blame] | 423 | 	$(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 424 |  | 
| Jack Jansen | ea0c382 | 2002-08-01 21:57:49 +0000 | [diff] [blame] | 425 | # This rule is here for OPENSTEP/Rhapsody/MacOSX. It builds a temporary | 
 | 426 | # minimal framework (not including the Lib directory and such) in the current | 
 | 427 | # directory. | 
| Christian Heimes | 81ee3ef | 2008-05-04 22:42:01 +0000 | [diff] [blame] | 428 | RESSRCDIR=Mac/Resources/framework | 
| Jack Jansen | ea0c382 | 2002-08-01 21:57:49 +0000 | [diff] [blame] | 429 | $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \ | 
 | 430 | 		$(LIBRARY) \ | 
| Christian Heimes | 81ee3ef | 2008-05-04 22:42:01 +0000 | [diff] [blame] | 431 | 		$(RESSRCDIR)/Info.plist | 
| Jack Jansen | 246debb | 2002-02-12 21:30:53 +0000 | [diff] [blame] | 432 | 	$(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION) | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 433 | 	if test "${UNIVERSALSDK}"; then \ | 
| Georg Brandl | fcaf910 | 2008-07-16 02:17:56 +0000 | [diff] [blame] | 434 | 		$(CC) -o $(LDLIBRARY) @UNIVERSAL_ARCH_FLAGS@ -dynamiclib \ | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 435 | 			-isysroot "${UNIVERSALSDK}" \ | 
 | 436 | 			-all_load $(LIBRARY) -Wl,-single_module \ | 
| Christian Heimes | 81ee3ef | 2008-05-04 22:42:01 +0000 | [diff] [blame] | 437 | 			-install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK) \ | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 438 | 			-compatibility_version $(VERSION) \ | 
 | 439 | 			-current_version $(VERSION); \ | 
 | 440 |         else \ | 
| Guido van Rossum | b5a755e | 2007-07-18 18:15:48 +0000 | [diff] [blame] | 441 | 		/usr/bin/libtool -o $(LDLIBRARY) -dynamic $(OTHER_LIBTOOL_OPT) $(LIBRARY) \ | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 442 | 			@LIBTOOL_CRUFT@ ;\ | 
 | 443 | 	fi | 
| Jack Jansen | ea0c382 | 2002-08-01 21:57:49 +0000 | [diff] [blame] | 444 | 	$(INSTALL) -d -m $(DIRMODE)  \ | 
 | 445 | 		$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj | 
 | 446 | 	$(INSTALL_DATA) $(RESSRCDIR)/Info.plist \ | 
 | 447 | 		$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/Info.plist | 
| Jack Jansen | c736b8d | 2002-08-04 21:17:20 +0000 | [diff] [blame] | 448 | 	$(LN) -fsn $(VERSION) $(PYTHONFRAMEWORKDIR)/Versions/Current | 
| Jack Jansen | b36687a | 2004-07-16 08:43:47 +0000 | [diff] [blame] | 449 | 	$(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(PYTHONFRAMEWORKDIR)/$(PYTHONFRAMEWORK) | 
| Jack Jansen | c736b8d | 2002-08-04 21:17:20 +0000 | [diff] [blame] | 450 | 	$(LN) -fsn Versions/Current/Headers $(PYTHONFRAMEWORKDIR)/Headers | 
 | 451 | 	$(LN) -fsn Versions/Current/Resources $(PYTHONFRAMEWORKDIR)/Resources | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 452 |  | 
| Jason Tishler | 3076559 | 2003-09-04 11:04:06 +0000 | [diff] [blame] | 453 | # This rule builds the Cygwin Python DLL and import library if configured | 
 | 454 | # for a shared core library; otherwise, this rule is a noop. | 
 | 455 | $(DLLLIBRARY) libpython$(VERSION).dll.a: $(LIBRARY_OBJS) | 
 | 456 | 	if test -n "$(DLLLIBRARY)"; then \ | 
| Benjamin Peterson | ae5360b | 2008-09-08 23:05:23 +0000 | [diff] [blame] | 457 | 		$(LDSHARED) $(LDFLAGS) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ | 
 | 458 | 			$(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \ | 
| Jason Tishler | 3076559 | 2003-09-04 11:04:06 +0000 | [diff] [blame] | 459 | 	else true; \ | 
 | 460 | 	fi | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 461 |  | 
 | 462 |  | 
 | 463 | oldsharedmods: $(SHAREDMODS) | 
 | 464 |  | 
 | 465 |  | 
 | 466 | Makefile Modules/config.c: Makefile.pre \ | 
 | 467 | 				$(srcdir)/Modules/config.c.in \ | 
 | 468 | 				$(MAKESETUP) \ | 
 | 469 | 				Modules/Setup.config \ | 
 | 470 | 				Modules/Setup \ | 
 | 471 | 				Modules/Setup.local | 
 | 472 | 	$(SHELL) $(MAKESETUP) -c $(srcdir)/Modules/config.c.in \ | 
 | 473 | 				-s Modules \ | 
 | 474 | 				Modules/Setup.config \ | 
 | 475 | 				Modules/Setup.local \ | 
 | 476 | 				Modules/Setup | 
 | 477 | 	@mv config.c Modules | 
 | 478 | 	@echo "The Makefile was updated, you may need to re-run make." | 
 | 479 |  | 
 | 480 |  | 
 | 481 | Modules/Setup: $(srcdir)/Modules/Setup.dist | 
 | 482 | 	@if test -f Modules/Setup; then \ | 
 | 483 | 		echo "-----------------------------------------------"; \ | 
 | 484 | 		echo "Modules/Setup.dist is newer than Modules/Setup;"; \ | 
 | 485 | 		echo "check to make sure you have all the updates you"; \ | 
 | 486 | 		echo "need in your Modules/Setup file."; \ | 
| Alexandre Vassalotti | eca20b6 | 2008-05-16 02:54:33 +0000 | [diff] [blame] | 487 | 		echo "Usually, copying Modules/Setup.dist to Modules/Setup will work."; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 488 | 		echo "-----------------------------------------------"; \ | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 489 | 	fi | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 490 |  | 
 | 491 | ############################################################################ | 
 | 492 | # Special rules for object files | 
 | 493 |  | 
| Martin v. Löwis | dea59e5 | 2006-01-05 10:00:36 +0000 | [diff] [blame] | 494 | Modules/getbuildinfo.o: $(PARSER_OBJS) \ | 
 | 495 | 		$(OBJECT_OBJS) \ | 
 | 496 | 		$(PYTHON_OBJS) \ | 
 | 497 | 		$(MODULE_OBJS) \ | 
 | 498 | 		$(SIGNAL_OBJS) \ | 
 | 499 | 		$(MODOBJS) \ | 
 | 500 | 		$(srcdir)/Modules/getbuildinfo.c | 
| Thomas Wouters | 89f507f | 2006-12-13 04:49:30 +0000 | [diff] [blame] | 501 | 	$(CC) -c $(PY_CFLAGS) -DSVNVERSION=\"`LC_ALL=C $(SVNVERSION)`\" -o $@ $(srcdir)/Modules/getbuildinfo.c | 
| Andrew M. Kuchling | 03184e2 | 2001-01-26 22:52:45 +0000 | [diff] [blame] | 502 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 503 | Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 504 | 	$(CC) -c $(PY_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ | 
 | 505 | 		-DPREFIX='"$(prefix)"' \ | 
 | 506 | 		-DEXEC_PREFIX='"$(exec_prefix)"' \ | 
 | 507 | 		-DVERSION='"$(VERSION)"' \ | 
 | 508 | 		-DVPATH='"$(VPATH)"' \ | 
| Sjoerd Mullender | 30be870 | 2001-01-29 09:39:14 +0000 | [diff] [blame] | 509 | 		-o $@ $(srcdir)/Modules/getpath.c | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 510 |  | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 511 | Modules/python.o: $(srcdir)/Modules/python.c | 
 | 512 | 	$(MAINCC) -c $(PY_CFLAGS) -o $@ $(srcdir)/Modules/python.c | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 513 |  | 
 | 514 |  | 
 | 515 | $(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT) | 
| Guido van Rossum | 8ce8a78 | 2007-11-01 19:42:39 +0000 | [diff] [blame] | 516 | 		-@$(INSTALL) -d Include | 
| Neil Schemenauer | 7cd124c | 2001-02-27 02:19:16 +0000 | [diff] [blame] | 517 | 		-$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 518 |  | 
 | 519 | $(PGEN):	$(PGENOBJS) | 
| Martin v. Löwis | 6702d8a | 2003-07-13 10:10:42 +0000 | [diff] [blame] | 520 | 		$(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 521 |  | 
 | 522 | Parser/grammar.o:	$(srcdir)/Parser/grammar.c \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 523 | 				$(srcdir)/Include/token.h \ | 
 | 524 | 				$(srcdir)/Include/grammar.h | 
 | 525 | Parser/metagrammar.o:	$(srcdir)/Parser/metagrammar.c | 
 | 526 |  | 
| Martin v. Löwis | 00f1e3f | 2002-08-04 17:29:52 +0000 | [diff] [blame] | 527 | Parser/tokenizer_pgen.o:	$(srcdir)/Parser/tokenizer.c | 
 | 528 |  | 
| Thomas Wouters | fc7bb8c | 2007-01-15 15:49:28 +0000 | [diff] [blame] | 529 | Parser/pgenmain.o:	$(srcdir)/Include/parsetok.h | 
 | 530 |  | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 531 | $(AST_H): $(AST_ASDL) $(ASDLGEN_FILES) | 
 | 532 | 	$(ASDLGEN) -h $(AST_H_DIR) $(AST_ASDL) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 533 |  | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 534 | $(AST_C): $(AST_ASDL) $(ASDLGEN_FILES) | 
 | 535 | 	$(ASDLGEN) -c $(AST_C_DIR) $(AST_ASDL) | 
| Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 536 |  | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 537 | Python/compile.o Python/symtable.o: $(GRAMMAR_H) $(AST_H) | 
| Neil Schemenauer | 4041774 | 2001-02-27 02:45:36 +0000 | [diff] [blame] | 538 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 539 | Python/getplatform.o: $(srcdir)/Python/getplatform.c | 
| Mark Hammond | 8235ea1 | 2002-07-19 06:55:41 +0000 | [diff] [blame] | 540 | 		$(CC) -c $(PY_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -o $@ $(srcdir)/Python/getplatform.c | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 541 |  | 
 | 542 | Python/importdl.o: $(srcdir)/Python/importdl.c | 
| Mark Hammond | 8235ea1 | 2002-07-19 06:55:41 +0000 | [diff] [blame] | 543 | 		$(CC) -c $(PY_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 544 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 545 | Objects/unicodectype.o:	$(srcdir)/Objects/unicodectype.c \ | 
 | 546 | 				$(srcdir)/Objects/unicodetype_db.h | 
 | 547 |  | 
| Christian Heimes | da99683 | 2008-03-22 18:37:22 +0000 | [diff] [blame] | 548 | BYTESTR_DEPS = \ | 
| Neal Norwitz | 22c6542 | 2008-03-24 05:03:36 +0000 | [diff] [blame] | 549 | 		$(srcdir)/Include/bytes_methods.h \ | 
| Christian Heimes | da99683 | 2008-03-22 18:37:22 +0000 | [diff] [blame] | 550 | 		$(srcdir)/Objects/stringlib/count.h \ | 
 | 551 | 		$(srcdir)/Objects/stringlib/ctype.h \ | 
 | 552 | 		$(srcdir)/Objects/stringlib/eq.h \ | 
 | 553 | 		$(srcdir)/Objects/stringlib/fastsearch.h \ | 
 | 554 | 		$(srcdir)/Objects/stringlib/find.h \ | 
 | 555 | 		$(srcdir)/Objects/stringlib/partition.h \ | 
 | 556 | 		$(srcdir)/Objects/stringlib/stringdefs.h \ | 
 | 557 | 		$(srcdir)/Objects/stringlib/string_format.h \ | 
 | 558 | 		$(srcdir)/Objects/stringlib/transmogrify.h \ | 
 | 559 | 		$(srcdir)/Objects/stringlib/unicodedefs.h \ | 
| Eric Smith | 5807c41 | 2008-05-11 21:00:57 +0000 | [diff] [blame] | 560 | 		$(srcdir)/Objects/stringlib/localeutil.h | 
| Gregory P. Smith | 60d241f | 2007-10-16 06:31:30 +0000 | [diff] [blame] | 561 |  | 
| Benjamin Peterson | 9ae3220 | 2009-01-13 21:53:28 +0000 | [diff] [blame] | 562 | Objects/bytesobject.o: $(srcdir)/Objects/bytesobject.c $(BYTESTR_DEPS) | 
| Gregory P. Smith | 60d241f | 2007-10-16 06:31:30 +0000 | [diff] [blame] | 563 |  | 
| Benjamin Peterson | 9ae3220 | 2009-01-13 21:53:28 +0000 | [diff] [blame] | 564 | Objects/bytearrayobject.o: $(srcdir)/Objects/bytearrayobject.c $(BYTESTR_DEPS)  | 
| Gregory P. Smith | 60d241f | 2007-10-16 06:31:30 +0000 | [diff] [blame] | 565 |  | 
| Eric Smith | 8c66326 | 2007-08-25 02:26:07 +0000 | [diff] [blame] | 566 | Objects/unicodeobject.o: $(srcdir)/Objects/unicodeobject.c \ | 
| Benjamin Peterson | b197fec | 2009-01-13 22:25:18 +0000 | [diff] [blame] | 567 | 				$(BYTESTR_DEPS) \ | 
 | 568 | 				$(srcdir)/Objects/stringlib/formatter.h | 
| Eric Smith | 8c66326 | 2007-08-25 02:26:07 +0000 | [diff] [blame] | 569 |  | 
 | 570 | Python/formatter_unicode.o: $(srcdir)/Python/formatter_unicode.c \ | 
| Benjamin Peterson | b197fec | 2009-01-13 22:25:18 +0000 | [diff] [blame] | 571 | 				$(BYTESTR_DEPS) | 
| Eric Smith | 8c66326 | 2007-08-25 02:26:07 +0000 | [diff] [blame] | 572 |  | 
 | 573 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 574 | ############################################################################ | 
 | 575 | # Header files | 
 | 576 |  | 
| Neil Schemenauer | f65e500 | 2001-01-25 20:07:50 +0000 | [diff] [blame] | 577 | PYTHON_HEADERS= \ | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 578 | 		Include/Python-ast.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 579 | 		Include/Python.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 580 | 		Include/abstract.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 581 | 		Include/asdl.h \ | 
 | 582 | 		Include/ast.h \ | 
 | 583 | 		Include/bitset.h \ | 
| Guido van Rossum | 77f6a65 | 2002-04-03 22:41:51 +0000 | [diff] [blame] | 584 | 		Include/boolobject.h \ | 
| Christian Heimes | f78b1c6 | 2007-12-02 16:52:32 +0000 | [diff] [blame] | 585 | 		Include/bytes_methods.h \ | 
| Christian Heimes | 2c9c7a5 | 2008-05-26 13:42:13 +0000 | [diff] [blame] | 586 | 		Include/bytearrayobject.h \ | 
| Guido van Rossum | 4dfe8a1 | 2006-04-22 23:28:04 +0000 | [diff] [blame] | 587 | 		Include/bytesobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 588 | 		Include/cellobject.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 589 | 		Include/ceval.h \ | 
 | 590 | 		Include/classobject.h \ | 
 | 591 | 		Include/cobject.h \ | 
| Jeremy Hylton | 3e0055f | 2005-10-20 19:59:25 +0000 | [diff] [blame] | 592 | 		Include/code.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 593 | 		Include/codecs.h \ | 
 | 594 | 		Include/compile.h \ | 
 | 595 | 		Include/complexobject.h \ | 
| Tim Peters | 6d6c1a3 | 2001-08-02 04:15:00 +0000 | [diff] [blame] | 596 | 		Include/descrobject.h \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 597 | 		Include/dictobject.h \ | 
| Guido van Rossum | 7dab242 | 2002-04-26 19:40:56 +0000 | [diff] [blame] | 598 | 		Include/enumobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 599 | 		Include/errcode.h \ | 
 | 600 | 		Include/eval.h \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 601 | 		Include/fileobject.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 602 | 		Include/floatobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 603 | 		Include/frameobject.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 604 | 		Include/funcobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 605 | 		Include/genobject.h \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 606 | 		Include/import.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 607 | 		Include/intrcheck.h \ | 
 | 608 | 		Include/iterobject.h \ | 
 | 609 | 		Include/listobject.h \ | 
| Christian Heimes | f78b1c6 | 2007-12-02 16:52:32 +0000 | [diff] [blame] | 610 | 		Include/longintrepr.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 611 | 		Include/longobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 612 | 		Include/marshal.h \ | 
| Travis E. Oliphant | b99f762 | 2007-08-18 11:21:56 +0000 | [diff] [blame] | 613 | 		Include/memoryobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 614 | 		Include/metagrammar.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 615 | 		Include/methodobject.h \ | 
 | 616 | 		Include/modsupport.h \ | 
 | 617 | 		Include/moduleobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 618 | 		Include/node.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 619 | 		Include/object.h \ | 
 | 620 | 		Include/objimpl.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 621 | 		Include/opcode.h \ | 
 | 622 | 		Include/osdefs.h \ | 
| Thomas Wouters | fc7bb8c | 2007-01-15 15:49:28 +0000 | [diff] [blame] | 623 | 		Include/parsetok.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 624 | 		Include/patchlevel.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 625 | 		Include/pgen.h \ | 
 | 626 | 		Include/pgenheaders.h \ | 
| Neal Norwitz | adb69fc | 2005-12-17 20:54:49 +0000 | [diff] [blame] | 627 | 		Include/pyarena.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 628 | 		Include/pydebug.h \ | 
 | 629 | 		Include/pyerrors.h \ | 
 | 630 | 		Include/pyfpe.h \ | 
| Christian Heimes | 53876d9 | 2008-04-19 00:31:39 +0000 | [diff] [blame] | 631 | 		Include/pymath.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 632 | 		Include/pygetopt.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 633 | 		Include/pymem.h \ | 
 | 634 | 		Include/pyport.h \ | 
 | 635 | 		Include/pystate.h \ | 
| Christian Heimes | 99170a5 | 2007-12-19 02:07:34 +0000 | [diff] [blame] | 636 | 		Include/pystrcmp.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 637 | 		Include/pystrtod.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 638 | 		Include/pythonrun.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 639 | 		Include/pythread.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 640 | 		Include/rangeobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 641 | 		Include/setobject.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 642 | 		Include/sliceobject.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 643 | 		Include/structmember.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 644 | 		Include/structseq.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 645 | 		Include/symtable.h \ | 
 | 646 | 		Include/sysmodule.h \ | 
 | 647 | 		Include/traceback.h \ | 
 | 648 | 		Include/tupleobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 649 | 		Include/ucnhash.h \ | 
| Guido van Rossum | 427ce80 | 2001-09-18 02:40:21 +0000 | [diff] [blame] | 650 | 		Include/unicodeobject.h \ | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 651 | 		Include/warnings.h \ | 
| Fred Drake | 502ed82 | 2001-10-05 21:56:02 +0000 | [diff] [blame] | 652 | 		Include/weakrefobject.h \ | 
| Georg Brandl | 86def6c | 2008-01-21 20:36:10 +0000 | [diff] [blame] | 653 | 		pyconfig.h \ | 
 | 654 | 		$(PARSER_HEADERS) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 655 |  | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 656 | $(LIBRARY_OBJS) $(MODOBJS) Modules/python.o: $(PYTHON_HEADERS) | 
| Neil Schemenauer | f65e500 | 2001-01-25 20:07:50 +0000 | [diff] [blame] | 657 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 658 |  | 
 | 659 | ###################################################################### | 
 | 660 |  | 
 | 661 | # Test the interpreter (twice, once without .pyc files, once with) | 
| Skip Montanaro | c9803ab | 2003-05-06 16:17:27 +0000 | [diff] [blame] | 662 | # In the past, we've had problems where bugs in the marshalling or | 
 | 663 | # elsewhere caused bytecode read from .pyc files to behave differently | 
 | 664 | # than bytecode generated directly from a .py source file.  Sometimes | 
 | 665 | # the bytecode read from a .pyc file had the bug, somtimes the directly | 
 | 666 | # generated bytecode.  This is sometimes a very shy bug needing a lot of | 
 | 667 | # sample data. | 
 | 668 |  | 
| Neal Norwitz | df43165 | 2006-02-22 07:24:06 +0000 | [diff] [blame] | 669 | TESTOPTS=	-l $(EXTRATESTOPTS) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 670 | TESTPROG=	$(srcdir)/Lib/test/regrtest.py | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 671 | TESTPYTHON=	$(RUNSHARED) ./$(BUILDPYTHON) -E -bb | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 672 | test:		all platform | 
| Guido van Rossum | cd81ea1 | 2001-03-01 00:36:53 +0000 | [diff] [blame] | 673 | 		-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f | 
| Neil Schemenauer | 7d4bb9f | 2001-07-23 16:30:27 +0000 | [diff] [blame] | 674 | 		-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) | 
 | 675 | 		$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 676 |  | 
| Skip Montanaro | 446ad71 | 2003-05-06 15:30:20 +0000 | [diff] [blame] | 677 | testall:	all platform | 
 | 678 | 		-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f | 
| Thomas Wouters | d2d2915 | 2008-01-25 23:21:16 +0000 | [diff] [blame] | 679 | 		$(TESTPYTHON) $(srcdir)/Lib/compileall.py | 
| Christian Heimes | 905a904 | 2007-11-21 02:51:50 +0000 | [diff] [blame] | 680 | 		-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f | 
| Skip Montanaro | 446ad71 | 2003-05-06 15:30:20 +0000 | [diff] [blame] | 681 | 		-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall | 
 | 682 | 		$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall | 
 | 683 |  | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 684 | #  Run the unitests for both architectures in a Universal build on OSX | 
 | 685 | #  Must be run on an Intel box. | 
 | 686 | testuniversal:	all platform | 
 | 687 | 		if [ `arch` != 'i386' ];then \ | 
 | 688 | 			echo "This can only be used on OSX/i386" ;\ | 
 | 689 | 			exit 1 ;\ | 
 | 690 | 		fi | 
 | 691 | 		-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f | 
 | 692 | 		-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall | 
 | 693 | 		$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 694 | 		$(RUNSHARED) /usr/libexec/oah/translate ./$(BUILDPYTHON) -E $(TESTPROG) $(TESTOPTS) -uall | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 695 |  | 
 | 696 |  | 
| Martin v. Löwis | bfa8bd7 | 2006-03-13 10:59:32 +0000 | [diff] [blame] | 697 | # Like testall, but with a single pass only | 
| Thomas Wouters | 89d996e | 2007-09-08 17:39:28 +0000 | [diff] [blame] | 698 | # run an optional script to include some information about the build environment | 
| Martin v. Löwis | bfa8bd7 | 2006-03-13 10:59:32 +0000 | [diff] [blame] | 699 | buildbottest:	all platform | 
| Thomas Wouters | 89d996e | 2007-09-08 17:39:28 +0000 | [diff] [blame] | 700 | 		-@if which pybuildbot.identify >/dev/null 2>&1; then \ | 
 | 701 | 			pybuildbot.identify "CC='$(CC)'" "CXX='$(CXX)'"; \ | 
 | 702 | 		fi | 
| Martin v. Löwis | bfa8bd7 | 2006-03-13 10:59:32 +0000 | [diff] [blame] | 703 | 		$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall -rw | 
 | 704 |  | 
| Jeremy Hylton | 2a850d9 | 2001-02-01 19:51:28 +0000 | [diff] [blame] | 705 | QUICKTESTOPTS=	$(TESTOPTS) -x test_thread test_signal test_strftime \ | 
| Fred Drake | 042f313 | 2001-02-02 03:03:33 +0000 | [diff] [blame] | 706 | 		test_unicodedata test_re test_sre test_select test_poll \ | 
| Guido van Rossum | 33d2689 | 2007-08-05 15:29:28 +0000 | [diff] [blame] | 707 | 		test_struct test_zlib | 
| Jeremy Hylton | 2a850d9 | 2001-02-01 19:51:28 +0000 | [diff] [blame] | 708 | quicktest:	all platform | 
| Guido van Rossum | cd81ea1 | 2001-03-01 00:36:53 +0000 | [diff] [blame] | 709 | 		-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f | 
| Neil Schemenauer | 7d4bb9f | 2001-07-23 16:30:27 +0000 | [diff] [blame] | 710 | 		-$(TESTPYTHON) $(TESTPROG) $(QUICKTESTOPTS) | 
 | 711 | 		$(TESTPYTHON) $(TESTPROG) $(QUICKTESTOPTS) | 
| Jeremy Hylton | 2a850d9 | 2001-02-01 19:51:28 +0000 | [diff] [blame] | 712 |  | 
| Barry Warsaw | 4211925 | 2001-03-03 04:14:21 +0000 | [diff] [blame] | 713 | MEMTESTOPTS=    $(QUICKTESTOPTS) -x test_dl test___all__ test_fork1 \ | 
 | 714 | 		test_longexp | 
 | 715 | memtest:	all platform | 
 | 716 | 		-rm -f $(srcdir)/Lib/test/*.py[co] | 
| Neil Schemenauer | 7d4bb9f | 2001-07-23 16:30:27 +0000 | [diff] [blame] | 717 | 		-$(TESTPYTHON) $(TESTPROG) $(MEMTESTOPTS) | 
 | 718 | 		$(TESTPYTHON) $(TESTPROG) $(MEMTESTOPTS) | 
| Barry Warsaw | 4211925 | 2001-03-03 04:14:21 +0000 | [diff] [blame] | 719 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 720 | # Install everything | 
| Guido van Rossum | dc21db3 | 2008-04-07 18:37:41 +0000 | [diff] [blame] | 721 | fullinstall:	@FRAMEWORKINSTALLFIRST@ altinstall bininstall maninstall @FRAMEWORKINSTALLLAST@ | 
 | 722 |  | 
 | 723 | # "make install" is an alias for "make altinstall" since we never want to | 
 | 724 | # overwrite Python 2.x. | 
 | 725 | install:	altinstall | 
| Guido van Rossum | 6d4df9b | 2008-05-08 17:53:56 +0000 | [diff] [blame] | 726 | 		@echo "* Note: not installed as 'python'." | 
 | 727 | 		@echo "* Use 'make fullinstall' to install as 'python'." | 
 | 728 | 		@echo "* However, 'make fullinstall' is discouraged," | 
 | 729 | 		@echo "* as it will clobber your Python 2.x installation." | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 730 |  | 
 | 731 | # Install almost everything without disturbing previous versions | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 732 | altinstall:	@FRAMEWORKALTINSTALLFIRST@ altbininstall libinstall inclinstall libainstall \ | 
 | 733 |                 sharedinstall oldsharedinstall @FRAMEWORKALTINSTALLLAST@ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 734 |  | 
 | 735 | # Install shared libraries enabled by Setup | 
 | 736 | DESTDIRS=	$(exec_prefix) $(LIBDIR) $(BINLIBDEST) $(DESTSHARED) | 
 | 737 |  | 
 | 738 | oldsharedinstall: $(DESTSHARED) $(SHAREDMODS) | 
 | 739 | 		@for i in X $(SHAREDMODS); do \ | 
| Neil Schemenauer | ac95977 | 2001-02-06 14:50:27 +0000 | [diff] [blame] | 740 | 		  if test $$i != X; then \ | 
 | 741 | 		    echo $(INSTALL_SHARED) $$i $(DESTSHARED)/`basename $$i`; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 742 | 		    $(INSTALL_SHARED) $$i $(DESTDIR)$(DESTSHARED)/`basename $$i`; \ | 
| Neil Schemenauer | ac95977 | 2001-02-06 14:50:27 +0000 | [diff] [blame] | 743 | 		  fi; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 744 | 		done | 
 | 745 |  | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 746 | $(DESTSHARED): | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 747 | 		@for i in $(DESTDIRS); \ | 
 | 748 | 		do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 749 | 			if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 750 | 				echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 751 | 				$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 752 | 			else    true; \ | 
 | 753 | 			fi; \ | 
 | 754 | 		done | 
 | 755 |  | 
 | 756 |  | 
 | 757 | # Install the interpreter (by creating a hard link to python$(VERSION)) | 
 | 758 | bininstall:	altbininstall | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 759 | 	-if test -f $(DESTDIR)$(BINDIR)/$(PYTHON) -o -h $(DESTDIR)$(BINDIR)/$(PYTHON); \ | 
 | 760 | 	then rm -f $(DESTDIR)$(BINDIR)/$(PYTHON); \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 761 | 	else true; \ | 
 | 762 | 	fi | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 763 | 	(cd $(DESTDIR)$(BINDIR); $(LN) python$(VERSION)$(EXE) $(PYTHON)) | 
| Thomas Wouters | 89d996e | 2007-09-08 17:39:28 +0000 | [diff] [blame] | 764 | 	-rm -f $(DESTDIR)$(BINDIR)/python-config | 
 | 765 | 	(cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-config python-config) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 766 |  | 
 | 767 | # Install the interpreter with $(VERSION) affixed | 
 | 768 | # This goes into $(exec_prefix) | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 769 | altbininstall:	$(BUILDPYTHON) | 
| Martin v. Löwis | d8a20d2 | 2002-05-08 08:59:59 +0000 | [diff] [blame] | 770 | 	@for i in $(BINDIR) $(LIBDIR); \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 771 | 	do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 772 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 773 | 			echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 774 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 775 | 		else	true; \ | 
 | 776 | 		fi; \ | 
 | 777 | 	done | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 778 | 	$(INSTALL_PROGRAM) $(BUILDPYTHON) $(DESTDIR)$(BINDIR)/python$(VERSION)$(EXE) | 
| Georg Brandl | b1441c7 | 2009-01-03 22:33:39 +0000 | [diff] [blame] | 779 | 	if test -f $(LDLIBRARY); then \ | 
| Georg Brandl | 1f01deb | 2009-01-03 22:47:39 +0000 | [diff] [blame] | 780 | 		if test -n "$(DLLLIBRARY)" ; then \ | 
 | 781 | 			$(INSTALL_SHARED) $(DLLLIBRARY) $(DESTDIR)$(BINDIR); \ | 
| Jason Tishler | c0f1e77 | 2002-07-29 16:18:23 +0000 | [diff] [blame] | 782 | 		else \ | 
| Georg Brandl | b1441c7 | 2009-01-03 22:33:39 +0000 | [diff] [blame] | 783 | 			$(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(LIBDIR)/$(INSTSONAME); \ | 
 | 784 | 			if test $(LDLIBRARY) != $(INSTSONAME); then \ | 
 | 785 | 				(cd $(DESTDIR)$(LIBDIR); $(LN) -sf $(INSTSONAME) $(LDLIBRARY)) \ | 
| Martin v. Löwis | e3be860 | 2003-11-18 19:54:20 +0000 | [diff] [blame] | 786 | 			fi \ | 
| Jason Tishler | c0f1e77 | 2002-07-29 16:18:23 +0000 | [diff] [blame] | 787 | 		fi; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 788 | 	else	true; \ | 
 | 789 | 	fi | 
 | 790 |  | 
 | 791 | # Install the manual page | 
 | 792 | maninstall: | 
 | 793 | 	@for i in $(MANDIR) $(MANDIR)/man1; \ | 
 | 794 | 	do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 795 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 796 | 			echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 797 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 798 | 		else	true; \ | 
 | 799 | 		fi; \ | 
 | 800 | 	done | 
 | 801 | 	$(INSTALL_DATA) $(srcdir)/Misc/python.man \ | 
| Benjamin Peterson | 1a6e0d0 | 2008-10-25 15:49:17 +0000 | [diff] [blame] | 802 | 		$(DESTDIR)$(MANDIR)/man1/python$(VERSION).1 | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 803 |  | 
 | 804 | # Install the library | 
 | 805 | PLATDIR=	plat-$(MACHDEP) | 
| Jack Jansen | 83f898c | 2002-12-30 22:23:40 +0000 | [diff] [blame] | 806 | EXTRAPLATDIR= @EXTRAPLATDIR@ | 
 | 807 | MACHDEPS=	$(PLATDIR) $(EXTRAPLATDIR) | 
| Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 808 | XMLLIBSUBDIRS=  xml xml/dom xml/etree xml/parsers xml/sax | 
| Georg Brandl | 6e47a33 | 2008-05-17 19:15:58 +0000 | [diff] [blame] | 809 | LIBSUBDIRS=	tkinter site-packages test test/output test/data \ | 
| Anthony Baxter | 1e2bd5b | 2004-07-12 09:25:18 +0000 | [diff] [blame] | 810 | 		test/decimaltestdata \ | 
| Fred Drake | 0e474a8 | 2007-10-11 18:01:43 +0000 | [diff] [blame] | 811 | 		encodings \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 812 | 		email email/mime email/test email/test/data \ | 
| Brett Cannon | 35af8d4 | 2008-05-26 18:56:21 +0000 | [diff] [blame] | 813 | 		html json json/tests http dbm xmlrpc \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 814 | 		sqlite3 sqlite3/test \ | 
| Jeremy Hylton | 1afc169 | 2008-06-18 20:49:58 +0000 | [diff] [blame] | 815 | 		logging bsddb bsddb/test csv wsgiref urllib \ | 
| Alexandre Vassalotti | e9f305f | 2008-05-16 04:39:54 +0000 | [diff] [blame] | 816 | 		lib2to3 lib2to3/fixes lib2to3/pgen2 lib2to3/tests \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 817 | 		ctypes ctypes/test ctypes/macholib idlelib idlelib/Icons \ | 
| Fred Drake | e612c8e | 2005-01-19 06:24:58 +0000 | [diff] [blame] | 818 | 		distutils distutils/command distutils/tests $(XMLLIBSUBDIRS) \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 819 | 		setuptools setuptools/command setuptools/tests setuptools.egg-info \ | 
| Benjamin Peterson | 6bf2d6b | 2008-06-20 02:54:41 +0000 | [diff] [blame] | 820 | 		multiprocessing multiprocessing/dummy \ | 
| Fred Drake | e612c8e | 2005-01-19 06:24:58 +0000 | [diff] [blame] | 821 | 		curses $(MACHDEPS) | 
| Guido van Rossum | 8ce8a78 | 2007-11-01 19:42:39 +0000 | [diff] [blame] | 822 | libinstall:	build_all $(srcdir)/Lib/$(PLATDIR) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 823 | 	@for i in $(SCRIPTDIR) $(LIBDEST); \ | 
 | 824 | 	do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 825 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 826 | 			echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 827 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 828 | 		else	true; \ | 
 | 829 | 		fi; \ | 
 | 830 | 	done | 
 | 831 | 	@for d in $(LIBSUBDIRS); \ | 
 | 832 | 	do \ | 
 | 833 | 		a=$(srcdir)/Lib/$$d; \ | 
 | 834 | 		if test ! -d $$a; then continue; else true; fi; \ | 
 | 835 | 		b=$(LIBDEST)/$$d; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 836 | 		if test ! -d $(DESTDIR)$$b; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 837 | 			echo "Creating directory $$b"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 838 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$b; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 839 | 		else	true; \ | 
 | 840 | 		fi; \ | 
 | 841 | 	done | 
| Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 842 | 	@for i in $(srcdir)/Lib/*.py $(srcdir)/Lib/*.doc $(srcdir)/Lib/*.egg-info ; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 843 | 	do \ | 
 | 844 | 		if test -x $$i; then \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 845 | 			$(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \ | 
| Neil Schemenauer | 3f5cc20 | 2001-04-10 23:03:35 +0000 | [diff] [blame] | 846 | 			echo $(INSTALL_SCRIPT) $$i $(LIBDEST); \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 847 | 		else \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 848 | 			$(INSTALL_DATA) $$i $(DESTDIR)$(LIBDEST); \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 849 | 			echo $(INSTALL_DATA) $$i $(LIBDEST); \ | 
 | 850 | 		fi; \ | 
 | 851 | 	done | 
 | 852 | 	@for d in $(LIBSUBDIRS); \ | 
 | 853 | 	do \ | 
 | 854 | 		a=$(srcdir)/Lib/$$d; \ | 
 | 855 | 		if test ! -d $$a; then continue; else true; fi; \ | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 856 | 		if test `ls $$a | wc -l` -lt 1; then continue; fi; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 857 | 		b=$(LIBDEST)/$$d; \ | 
 | 858 | 		for i in $$a/*; \ | 
 | 859 | 		do \ | 
 | 860 | 			case $$i in \ | 
 | 861 | 			*CVS) ;; \ | 
 | 862 | 			*.py[co]) ;; \ | 
 | 863 | 			*.orig) ;; \ | 
 | 864 | 			*~) ;; \ | 
 | 865 | 			*) \ | 
 | 866 | 				if test -d $$i; then continue; fi; \ | 
 | 867 | 				if test -x $$i; then \ | 
| Neil Schemenauer | 3f5cc20 | 2001-04-10 23:03:35 +0000 | [diff] [blame] | 868 | 				    echo $(INSTALL_SCRIPT) $$i $$b; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 869 | 				    $(INSTALL_SCRIPT) $$i $(DESTDIR)$$b; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 870 | 				else \ | 
 | 871 | 				    echo $(INSTALL_DATA) $$i $$b; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 872 | 				    $(INSTALL_DATA) $$i $(DESTDIR)$$b; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 873 | 				fi;; \ | 
 | 874 | 			esac; \ | 
 | 875 | 		done; \ | 
 | 876 | 	done | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 877 | 	$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt | 
| Guido van Rossum | 827bfd0 | 2007-07-15 13:12:42 +0000 | [diff] [blame] | 878 | 	-PYTHONPATH=$(DESTDIR)$(LIBDEST)  $(RUNSHARED) \ | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 879 | 		./$(BUILDPYTHON) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ | 
| Martin v. Löwis | 975302d | 2003-06-21 13:26:28 +0000 | [diff] [blame] | 880 | 		-d $(LIBDEST) -f \ | 
| Neal Norwitz | 892a33f | 2005-10-04 04:32:42 +0000 | [diff] [blame] | 881 | 		-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST) | 
| Guido van Rossum | 827bfd0 | 2007-07-15 13:12:42 +0000 | [diff] [blame] | 882 | 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 883 | 		./$(BUILDPYTHON) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ | 
| Martin v. Löwis | 975302d | 2003-06-21 13:26:28 +0000 | [diff] [blame] | 884 | 		-d $(LIBDEST) -f \ | 
| Neal Norwitz | 892a33f | 2005-10-04 04:32:42 +0000 | [diff] [blame] | 885 | 		-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST) | 
| Hye-Shik Chang | 0e5e6c7 | 2004-03-18 07:51:27 +0000 | [diff] [blame] | 886 | 	-PYTHONPATH=$(DESTDIR)$(LIBDEST)  $(RUNSHARED) \ | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 887 | 		./$(BUILDPYTHON) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ | 
| Martin v. Löwis | 975302d | 2003-06-21 13:26:28 +0000 | [diff] [blame] | 888 | 		-d $(LIBDEST)/site-packages -f \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 889 | 		-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages | 
| Hye-Shik Chang | 0e5e6c7 | 2004-03-18 07:51:27 +0000 | [diff] [blame] | 890 | 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ | 
| Georg Brandl | e1b5ac6 | 2008-06-04 13:06:58 +0000 | [diff] [blame] | 891 | 		./$(BUILDPYTHON) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ | 
| Martin v. Löwis | 975302d | 2003-06-21 13:26:28 +0000 | [diff] [blame] | 892 | 		-d $(LIBDEST)/site-packages -f \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 893 | 		-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages | 
| Martin v. Löwis | 3faa84f | 2008-03-22 00:07:09 +0000 | [diff] [blame] | 894 | 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ | 
| Martin v. Löwis | 4fe5ed8 | 2008-08-01 14:15:22 +0000 | [diff] [blame] | 895 | 		./$(BUILDPYTHON) -Wi -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 896 |  | 
 | 897 | # Create the PLATDIR source directory, if one wasn't distributed.. | 
 | 898 | $(srcdir)/Lib/$(PLATDIR): | 
 | 899 | 	mkdir $(srcdir)/Lib/$(PLATDIR) | 
 | 900 | 	cp $(srcdir)/Lib/plat-generic/regen $(srcdir)/Lib/$(PLATDIR)/regen | 
 | 901 | 	export PATH; PATH="`pwd`:$$PATH"; \ | 
 | 902 | 	export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 903 | 	export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \ | 
| Jack Jansen | 0d15366 | 2001-12-19 09:24:40 +0000 | [diff] [blame] | 904 | 	export EXE; EXE="$(BUILDEXE)"; \ | 
| Benjamin Peterson | fce25a7 | 2008-12-30 18:05:46 +0000 | [diff] [blame] | 905 | 	cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 906 |  | 
 | 907 | # Install the include files | 
 | 908 | INCLDIRSTOMAKE=$(INCLUDEDIR) $(CONFINCLUDEDIR) $(INCLUDEPY) $(CONFINCLUDEPY) | 
 | 909 | inclinstall: | 
 | 910 | 	@for i in $(INCLDIRSTOMAKE); \ | 
 | 911 | 	do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 912 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 913 | 			echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 914 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 915 | 		else	true; \ | 
 | 916 | 		fi; \ | 
 | 917 | 	done | 
 | 918 | 	@for i in $(srcdir)/Include/*.h; \ | 
 | 919 | 	do \ | 
 | 920 | 		echo $(INSTALL_DATA) $$i $(INCLUDEPY); \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 921 | 		$(INSTALL_DATA) $$i $(DESTDIR)$(INCLUDEPY); \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 922 | 	done | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 923 | 	$(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 924 |  | 
 | 925 | # Install the library and miscellaneous stuff needed for extending/embedding | 
 | 926 | # This goes into $(exec_prefix) | 
 | 927 | LIBPL=		$(LIBP)/config | 
 | 928 | libainstall:	all | 
 | 929 | 	@for i in $(LIBDIR) $(LIBP) $(LIBPL); \ | 
 | 930 | 	do \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 931 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 932 | 			echo "Creating directory $$i"; \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 933 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 934 | 		else	true; \ | 
 | 935 | 		fi; \ | 
 | 936 | 	done | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 937 | 	@if test -d $(LIBRARY); then :; else \ | 
| Jack Jansen | 127e56e | 2001-09-11 14:41:54 +0000 | [diff] [blame] | 938 | 		if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ | 
| Jason Tishler | c0f1e77 | 2002-07-29 16:18:23 +0000 | [diff] [blame] | 939 | 			if test "$(SO)" = .dll; then \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 940 | 				$(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \ | 
| Jason Tishler | c0f1e77 | 2002-07-29 16:18:23 +0000 | [diff] [blame] | 941 | 			else \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 942 | 				$(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ | 
 | 943 | 				$(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ | 
| Jason Tishler | c0f1e77 | 2002-07-29 16:18:23 +0000 | [diff] [blame] | 944 | 			fi; \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 945 | 		else \ | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 946 | 			echo Skip install of $(LIBRARY) - use make frameworkinstall; \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 947 | 		fi; \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 948 | 	fi | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 949 | 	$(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 950 | 	$(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 951 | 	$(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in | 
 | 952 | 	$(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile | 
 | 953 | 	$(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup | 
 | 954 | 	$(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local | 
 | 955 | 	$(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config | 
 | 956 | 	$(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup | 
 | 957 | 	$(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 958 | 	# Substitution happens here, as the completely-expanded BINDIR | 
 | 959 | 	# is not available in configure | 
| Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 960 | 	sed -e "s,@EXENAME@,$(BINDIR)/python$(VERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config | 
 | 961 | 	$(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(VERSION)-config | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 962 | 	rm python-config | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 963 | 	@if [ -s Modules/python.exp -a \ | 
 | 964 | 		"`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \ | 
 | 965 | 		echo; echo "Installing support files for building shared extension modules on AIX:"; \ | 
 | 966 | 		$(INSTALL_DATA) Modules/python.exp		\ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 967 | 				$(DESTDIR)$(LIBPL)/python.exp;		\ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 968 | 		echo; echo "$(LIBPL)/python.exp";		\ | 
| Neil Schemenauer | 3f5cc20 | 2001-04-10 23:03:35 +0000 | [diff] [blame] | 969 | 		$(INSTALL_SCRIPT) $(srcdir)/Modules/makexp_aix	\ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 970 | 				$(DESTDIR)$(LIBPL)/makexp_aix;		\ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 971 | 		echo "$(LIBPL)/makexp_aix";			\ | 
| Neil Schemenauer | 3f5cc20 | 2001-04-10 23:03:35 +0000 | [diff] [blame] | 972 | 		$(INSTALL_SCRIPT) $(srcdir)/Modules/ld_so_aix	\ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 973 | 				$(DESTDIR)$(LIBPL)/ld_so_aix;		\ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 974 | 		echo "$(LIBPL)/ld_so_aix";			\ | 
 | 975 | 		echo; echo "See Misc/AIX-NOTES for details.";	\ | 
 | 976 | 	else true; \ | 
 | 977 | 	fi | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 978 |  | 
 | 979 | # Install the dynamically loadable modules | 
 | 980 | # This goes into $(exec_prefix) | 
 | 981 | sharedinstall: | 
| Martin v. Löwis | 1142de3 | 2002-03-29 16:28:31 +0000 | [diff] [blame] | 982 | 	$(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \ | 
 | 983 | 	   	--prefix=$(prefix) \ | 
| Guido van Rossum | b33e789 | 2001-10-17 06:26:53 +0000 | [diff] [blame] | 984 | 		--install-scripts=$(BINDIR) \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 985 | 		--install-platlib=$(DESTSHARED) \ | 
 | 986 | 		--root=/$(DESTDIR) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 987 |  | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 988 | # Here are a couple of targets for MacOSX again, to install a full | 
 | 989 | # framework-based Python. frameworkinstall installs everything, the | 
 | 990 | # subtargets install specific parts. Much of the actual work is offloaded to | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 991 | # the Makefile in Mac | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 992 | # | 
| Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 993 | # | 
 | 994 | # This target is here for backward compatiblity, previous versions of Python | 
 | 995 | # hadn't integrated framework installation in the normal install process. | 
 | 996 | frameworkinstall: install | 
| Guido van Rossum | ed2f725 | 2002-08-09 19:18:25 +0000 | [diff] [blame] | 997 |  | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 998 | # On install, we re-make the framework | 
 | 999 | # structure in the install location, /Library/Frameworks/ or the argument to | 
 | 1000 | # --enable-framework. If --enable-framework has been specified then we have | 
 | 1001 | # automatically set prefix to the location deep down in the framework, so we | 
 | 1002 | # only have to cater for the structural bits of the framework. | 
 | 1003 |  | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1004 | frameworkinstallframework: frameworkinstallstructure install frameworkinstallmaclib | 
 | 1005 |  | 
 | 1006 | frameworkinstallstructure:	$(LDLIBRARY) | 
| Jack Jansen | 127e56e | 2001-09-11 14:41:54 +0000 | [diff] [blame] | 1007 | 	@if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 1008 | 		echo Not configured with --enable-framework; \ | 
| Jack Jansen | 127e56e | 2001-09-11 14:41:54 +0000 | [diff] [blame] | 1009 | 		exit 1; \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 1010 | 	else true; \ | 
 | 1011 | 	fi | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1012 | 	@for i in $(prefix)/Resources/English.lproj $(prefix)/lib; do\ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 1013 | 		if test ! -d $(DESTDIR)$$i; then \ | 
| Jack Jansen | 9592fe9 | 2003-05-25 22:01:32 +0000 | [diff] [blame] | 1014 | 			echo "Creating directory $(DESTDIR)$$i"; \ | 
 | 1015 | 			$(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ | 
| Jack Jansen | b6e9cad | 2001-08-15 01:26:28 +0000 | [diff] [blame] | 1016 | 		else	true; \ | 
 | 1017 | 		fi; \ | 
 | 1018 | 	done | 
| Jack Jansen | 9592fe9 | 2003-05-25 22:01:32 +0000 | [diff] [blame] | 1019 | 	$(LN) -fsn include/python$(VERSION) $(DESTDIR)$(prefix)/Headers | 
| Benjamin Peterson | 4c29b47 | 2008-07-01 14:42:51 +0000 | [diff] [blame] | 1020 | 	sed 's/%VERSION%/'"`$(RUNSHARED) ./$(BUILDPYTHON) -c 'import platform; print(platform.python_version())'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist | 
| Jack Jansen | 9592fe9 | 2003-05-25 22:01:32 +0000 | [diff] [blame] | 1021 | 	$(LN) -fsn $(VERSION) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/Current | 
| Christian Heimes | 81ee3ef | 2008-05-04 22:42:01 +0000 | [diff] [blame] | 1022 | 	$(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/$(PYTHONFRAMEWORK) | 
| Jack Jansen | 9592fe9 | 2003-05-25 22:01:32 +0000 | [diff] [blame] | 1023 | 	$(LN) -fsn Versions/Current/Headers $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Headers | 
 | 1024 | 	$(LN) -fsn Versions/Current/Resources $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Resources | 
| Jack Jansen | 4735b23 | 2003-06-20 20:36:53 +0000 | [diff] [blame] | 1025 | 	$(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(PYTHONFRAMEWORKPREFIX)/$(LDLIBRARY) | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 1026 |  | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1027 | # This installs Mac/Lib into the framework | 
| Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 1028 | # Install a number of symlinks to keep software that expects a normal unix | 
 | 1029 | # install (which includes python-config) happy. | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1030 | frameworkinstallmaclib: | 
| Christian Heimes | 81ee3ef | 2008-05-04 22:42:01 +0000 | [diff] [blame] | 1031 | 	ln -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config/libpython$(VERSION).a" | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1032 |  | 
 | 1033 | # This installs the IDE, the Launcher and other apps into /Applications | 
 | 1034 | frameworkinstallapps: | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 1035 | 	cd Mac && $(MAKE) installapps DESTDIR="$(DESTDIR)" | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1036 |  | 
| Georg Brandl | fcaf910 | 2008-07-16 02:17:56 +0000 | [diff] [blame] | 1037 | frameworkinstallapps4way: | 
 | 1038 | 	cd Mac && $(MAKE) installapps4way DESTDIR="$(DESTDIR)" | 
 | 1039 |  | 
| Jack Jansen | cb4321e | 2002-08-09 00:18:21 +0000 | [diff] [blame] | 1040 | # This install the unix python and pythonw tools in /usr/local/bin | 
 | 1041 | frameworkinstallunixtools: | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 1042 | 	cd Mac && $(MAKE) installunixtools DESTDIR="$(DESTDIR)" | 
 | 1043 |  | 
| Georg Brandl | fcaf910 | 2008-07-16 02:17:56 +0000 | [diff] [blame] | 1044 | frameworkinstallunixtools4way: | 
 | 1045 | 	cd Mac && $(MAKE) installunixtools4way DESTDIR="$(DESTDIR)" | 
 | 1046 |  | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 1047 | frameworkaltinstallunixtools: | 
 | 1048 | 	cd Mac && $(MAKE) altinstallunixtools DESTDIR="$(DESTDIR)" | 
| Jack Jansen | 0b06be7 | 2002-06-21 14:48:38 +0000 | [diff] [blame] | 1049 |  | 
| Georg Brandl | fcaf910 | 2008-07-16 02:17:56 +0000 | [diff] [blame] | 1050 | frameworkaltinstallunixtools4way: | 
 | 1051 | 	cd Mac && $(MAKE) altinstallunixtools4way DESTDIR="$(DESTDIR)" | 
 | 1052 |  | 
| Jack Jansen | a1b7758 | 2003-06-19 22:35:20 +0000 | [diff] [blame] | 1053 | # This installs the Demos and Tools into the applications directory. | 
 | 1054 | # It is not part of a normal frameworkinstall | 
 | 1055 | frameworkinstallextras: | 
| Mark Dickinson | 09027aa | 2008-12-18 19:49:35 +0000 | [diff] [blame] | 1056 | 	cd Mac && $(MAKE) installextras DESTDIR="$(DESTDIR)" | 
| Jack Jansen | a1b7758 | 2003-06-19 22:35:20 +0000 | [diff] [blame] | 1057 |  | 
| Skip Montanaro | decc6a4 | 2003-01-01 20:07:49 +0000 | [diff] [blame] | 1058 | # This installs a few of the useful scripts in Tools/scripts | 
 | 1059 | scriptsinstall: | 
| Martin v. Löwis | 01f4311 | 2003-01-03 20:39:29 +0000 | [diff] [blame] | 1060 | 	SRCDIR=$(srcdir) $(RUNSHARED) \ | 
| Skip Montanaro | decc6a4 | 2003-01-01 20:07:49 +0000 | [diff] [blame] | 1061 | 	./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py install \ | 
 | 1062 | 	--prefix=$(prefix) \ | 
| Martin v. Löwis | 3b8ee08 | 2003-05-11 20:25:35 +0000 | [diff] [blame] | 1063 | 	--install-scripts=$(BINDIR) \ | 
 | 1064 | 	--root=/$(DESTDIR) | 
| Skip Montanaro | decc6a4 | 2003-01-01 20:07:49 +0000 | [diff] [blame] | 1065 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1066 | # Build the toplevel Makefile | 
 | 1067 | Makefile.pre: Makefile.pre.in config.status | 
 | 1068 | 	CONFIG_FILES=Makefile.pre CONFIG_HEADERS= $(SHELL) config.status | 
 | 1069 | 	$(MAKE) -f Makefile.pre Makefile | 
 | 1070 |  | 
| Neil Schemenauer | 64b1b68 | 2001-03-22 00:32:32 +0000 | [diff] [blame] | 1071 | # Run the configure script. | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1072 | config.status:	$(srcdir)/configure | 
| Neil Schemenauer | 64b1b68 | 2001-03-22 00:32:32 +0000 | [diff] [blame] | 1073 | 	$(SHELL) $(srcdir)/configure $(CONFIG_ARGS) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1074 |  | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 1075 | .PRECIOUS: config.status $(BUILDPYTHON) Makefile Makefile.pre | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1076 |  | 
 | 1077 | # Some make's put the object file in the current directory | 
 | 1078 | .c.o: | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 1079 | 	$(CC) -c $(PY_CFLAGS) -o $@ $< | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1080 |  | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 1081 | # Run reindent on the library | 
 | 1082 | reindent: | 
| Christian Heimes | fd66e51 | 2008-01-29 12:18:50 +0000 | [diff] [blame] | 1083 | 	./$(BUILDPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 1084 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1085 | # Rerun configure with the same options as it was run last time, | 
 | 1086 | # provided the config.status script exists | 
 | 1087 | recheck: | 
 | 1088 | 	$(SHELL) config.status --recheck | 
 | 1089 | 	$(SHELL) config.status | 
 | 1090 |  | 
| Martin v. Löwis | 4f1cd8b | 2001-07-26 13:41:06 +0000 | [diff] [blame] | 1091 | # Rebuild the configure script from configure.in; also rebuild pyconfig.h.in | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1092 | autoconf: | 
 | 1093 | 	(cd $(srcdir); autoconf) | 
 | 1094 | 	(cd $(srcdir); autoheader) | 
 | 1095 |  | 
 | 1096 | # Create a tags file for vi | 
 | 1097 | tags:: | 
 | 1098 | 	cd $(srcdir); \ | 
 | 1099 | 	ctags -w -t Include/*.h; \ | 
 | 1100 | 	for i in $(SRCDIRS); do ctags -w -t -a $$i/*.[ch]; \ | 
 | 1101 | 	done; \ | 
| Guido van Rossum | c948966 | 2002-02-28 19:26:08 +0000 | [diff] [blame] | 1102 | 	sort -o tags tags | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1103 |  | 
 | 1104 | # Create a tags file for GNU Emacs | 
 | 1105 | TAGS:: | 
 | 1106 | 	cd $(srcdir); \ | 
 | 1107 | 	etags Include/*.h; \ | 
 | 1108 | 	for i in $(SRCDIRS); do etags -a $$i/*.[ch]; done | 
 | 1109 |  | 
 | 1110 | # Sanitation targets -- clean leaves libraries, executables and tags | 
 | 1111 | # files, which clobber removes those as well | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 1112 | pycremoval: | 
 | 1113 | 	find $(srcdir) -name '*.py[co]' -exec rm -f {} ';' | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1114 |  | 
| Guido van Rossum | 77b5e33 | 2007-08-29 23:24:02 +0000 | [diff] [blame] | 1115 | rmtestturds: | 
 | 1116 | 	-rm -f *BAD *GOOD *SKIPPED | 
 | 1117 | 	-rm -rf OUT | 
 | 1118 | 	-rm -f *.TXT | 
 | 1119 | 	-rm -f *.txt | 
 | 1120 | 	-rm -f gb-18030-2000.xml | 
 | 1121 |  | 
| Guido van Rossum | 8188e63 | 2007-08-29 23:48:29 +0000 | [diff] [blame] | 1122 | docclean: | 
 | 1123 | 	-rm -rf Doc/build | 
 | 1124 | 	-rm -rf Doc/tools/sphinx Doc/tools/pygments Doc/tools/docutils | 
 | 1125 |  | 
| Guido van Rossum | 5420bc3 | 2007-08-29 23:35:30 +0000 | [diff] [blame] | 1126 | clean: pycremoval | 
| Neil Schemenauer | c5cfcb4 | 2001-02-19 04:35:11 +0000 | [diff] [blame] | 1127 | 	find . -name '*.o' -exec rm -f {} ';' | 
| Guido van Rossum | cd0ed97 | 2001-04-14 17:57:07 +0000 | [diff] [blame] | 1128 | 	find . -name '*.s[ol]' -exec rm -f {} ';' | 
| Thomas Wouters | 49fd7fa | 2006-04-21 10:40:58 +0000 | [diff] [blame] | 1129 | 	find $(srcdir)/build -name 'fficonfig.h' -exec rm -f {} ';' || true | 
 | 1130 | 	find $(srcdir)/build -name 'fficonfig.py' -exec rm -f {} ';' || true | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1131 |  | 
| Christian Heimes | 33fe809 | 2008-04-13 13:53:33 +0000 | [diff] [blame] | 1132 | profile-removal: | 
 | 1133 | 	find . -name '*.gc??' -exec rm -f {} ';' | 
 | 1134 |  | 
 | 1135 | clobber: clean profile-removal | 
| Jack Jansen | 1999ef4 | 2001-12-06 21:47:20 +0000 | [diff] [blame] | 1136 | 	-rm -f $(BUILDPYTHON) $(PGEN) $(LIBRARY) $(LDLIBRARY) $(DLLLIBRARY) \ | 
| Guido van Rossum | cd0ed97 | 2001-04-14 17:57:07 +0000 | [diff] [blame] | 1137 | 		tags TAGS \ | 
| Guido van Rossum | 7cb32ae | 2001-08-17 15:32:31 +0000 | [diff] [blame] | 1138 | 		config.cache config.log pyconfig.h Modules/config.c | 
| Guido van Rossum | 1d88c59 | 2001-06-06 17:51:57 +0000 | [diff] [blame] | 1139 | 	-rm -rf build platform | 
| Jack Jansen | c609689 | 2003-02-27 23:19:46 +0000 | [diff] [blame] | 1140 | 	-rm -rf $(PYTHONFRAMEWORKDIR) | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1141 |  | 
 | 1142 | # Make things extra clean, before making a distribution: | 
 | 1143 | # remove all generated files, even Makefile[.pre] | 
| Neal Norwitz | 1a196b5 | 2006-01-03 01:38:53 +0000 | [diff] [blame] | 1144 | # Keep configure and Python-ast.[ch], it's possible they can't be generated | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1145 | distclean: clobber | 
| Martin v. Löwis | dea59e5 | 2006-01-05 10:00:36 +0000 | [diff] [blame] | 1146 | 	-rm -f core Makefile Makefile.pre config.status \ | 
| Neil Schemenauer | 7ac954b | 2001-01-26 16:14:41 +0000 | [diff] [blame] | 1147 | 		Modules/Setup Modules/Setup.local Modules/Setup.config | 
| Neil Schemenauer | e0d4357 | 2001-02-03 17:16:29 +0000 | [diff] [blame] | 1148 | 	find $(srcdir) '(' -name '*.fdc' -o -name '*~' \ | 
 | 1149 | 			   -o -name '[@,#]*' -o -name '*.old' \ | 
 | 1150 | 			   -o -name '*.orig' -o -name '*.rej' \ | 
 | 1151 | 			   -o -name '*.bak' ')' \ | 
 | 1152 | 			   -exec rm -f {} ';' | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1153 |  | 
 | 1154 | # Check for smelly exported symbols (not starting with Py/_Py) | 
 | 1155 | smelly: all | 
 | 1156 | 	nm -p $(LIBRARY) | \ | 
 | 1157 | 		sed -n "/ [TDB] /s/.* //p" | grep -v "^_*Py" | sort -u; \ | 
 | 1158 |  | 
 | 1159 | # Find files with funny names | 
 | 1160 | funny: | 
| Guido van Rossum | 77b5e33 | 2007-08-29 23:24:02 +0000 | [diff] [blame] | 1161 | 	find $(DISTDIRS) \ | 
 | 1162 | 		-name .svn -prune \ | 
 | 1163 | 		-o -type d \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1164 | 		-o -name '*.[chs]' \ | 
 | 1165 | 		-o -name '*.py' \ | 
 | 1166 | 		-o -name '*.doc' \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1167 | 		-o -name '*.dat' \ | 
 | 1168 | 		-o -name '*.el' \ | 
 | 1169 | 		-o -name '*.fd' \ | 
 | 1170 | 		-o -name '*.in' \ | 
| Guido van Rossum | 77b5e33 | 2007-08-29 23:24:02 +0000 | [diff] [blame] | 1171 | 		-o -name '*.gif' \ | 
 | 1172 | 		-o -name '*.txt' \ | 
 | 1173 | 		-o -name '*.xml' \ | 
 | 1174 | 		-o -name '*.xbm' \ | 
 | 1175 | 		-o -name '*.xpm' \ | 
 | 1176 | 		-o -name '*.uue' \ | 
 | 1177 | 		-o -name '*.decTest' \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1178 | 		-o -name '*,[vpt]' \ | 
 | 1179 | 		-o -name 'Setup' \ | 
 | 1180 | 		-o -name 'Setup.*' \ | 
| Guido van Rossum | 77b5e33 | 2007-08-29 23:24:02 +0000 | [diff] [blame] | 1181 | 		-o -name regen \ | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1182 | 		-o -name README \ | 
 | 1183 | 		-o -name Makefile \ | 
 | 1184 | 		-o -name ChangeLog \ | 
 | 1185 | 		-o -name Repository \ | 
 | 1186 | 		-o -name Root \ | 
 | 1187 | 		-o -name Entries \ | 
 | 1188 | 		-o -name Tag \ | 
 | 1189 | 		-o -name tags \ | 
 | 1190 | 		-o -name TAGS \ | 
 | 1191 | 		-o -name .cvsignore \ | 
 | 1192 | 		-o -name MANIFEST \ | 
 | 1193 | 		-o -print | 
 | 1194 |  | 
| Christian Heimes | ada8c3b | 2008-03-18 18:26:33 +0000 | [diff] [blame] | 1195 | # Perform some verification checks on any modified files. | 
| Brett Cannon | a741ebf | 2008-09-05 23:01:27 +0000 | [diff] [blame] | 1196 | patchcheck: | 
| Georg Brandl | fcaf910 | 2008-07-16 02:17:56 +0000 | [diff] [blame] | 1197 | 	$(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/patchcheck.py | 
| Christian Heimes | ada8c3b | 2008-03-18 18:26:33 +0000 | [diff] [blame] | 1198 |  | 
| Guido van Rossum | 9454ad7 | 2001-08-18 21:08:22 +0000 | [diff] [blame] | 1199 | # Dependencies | 
 | 1200 |  | 
| Martin v. Löwis | 06f15bb | 2001-12-02 13:02:32 +0000 | [diff] [blame] | 1201 | Python/thread.o: @THREADHEADERS@ | 
| Guido van Rossum | 9454ad7 | 2001-08-18 21:08:22 +0000 | [diff] [blame] | 1202 |  | 
| Guido van Rossum | d4f7da3 | 2002-10-10 15:04:04 +0000 | [diff] [blame] | 1203 | # Declare targets that aren't real files | 
| Guido van Rossum | 8ce8a78 | 2007-11-01 19:42:39 +0000 | [diff] [blame] | 1204 | .PHONY: all build_all sharedmods oldsharedmods test quicktest memtest | 
| Guido van Rossum | d4f7da3 | 2002-10-10 15:04:04 +0000 | [diff] [blame] | 1205 | .PHONY: install altinstall oldsharedinstall bininstall altbininstall | 
 | 1206 | .PHONY: maninstall libinstall inclinstall libainstall sharedinstall | 
 | 1207 | .PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure | 
 | 1208 | .PHONY: frameworkinstallmaclib frameworkinstallapps frameworkinstallunixtools | 
| Thomas Wouters | 73e5a5b | 2006-06-08 15:35:45 +0000 | [diff] [blame] | 1209 | .PHONY: frameworkaltinstallunixtools recheck autoconf clean clobber distclean  | 
| Brett Cannon | 16512cd | 2008-10-06 22:48:11 +0000 | [diff] [blame] | 1210 | .PHONY: smelly funny patchcheck | 
| Guido van Rossum | d4f7da3 | 2002-10-10 15:04:04 +0000 | [diff] [blame] | 1211 |  | 
| Neil Schemenauer | 85515ad | 2001-01-24 17:11:43 +0000 | [diff] [blame] | 1212 | # IF YOU PUT ANYTHING HERE IT WILL GO AWAY |