Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 1 | # META-NOTE: this note is different from the note in the other Makefiles! |
| 2 | # NOTE: Makefile.pre.in is converted into Makefile.pre by the configure |
| 3 | # script in the toplevel directory or by ../config.status. |
| 4 | # Makefile.pre is converted into Makefile by running the makesetup |
| 5 | # script in the source directory. Once Makefile exists, it can be |
| 6 | # brought up to date by running "make Makefile". (The makesetup also |
| 7 | # creates config.c from config.c.in in the source directory.) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 8 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 9 | # === Variables set by makesetup === |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 10 | |
Guido van Rossum | 3bbc62e | 1995-01-02 19:30:30 +0000 | [diff] [blame] | 11 | MODOBJS= _MODOBJS_ |
| 12 | MODLIBS= _MODLIBS_ |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 13 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 14 | # === Variables set by configure === |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 15 | |
| 16 | srcdir= @srcdir@ |
| 17 | VPATH= @srcdir@ |
| 18 | |
| 19 | CC= @CC@ |
| 20 | RANLIB= @RANLIB@ |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 21 | AR= @AR@ |
| 22 | |
Guido van Rossum | f4449de | 1995-04-10 11:37:18 +0000 | [diff] [blame] | 23 | OPT= @OPT@ |
| 24 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 25 | DEFS= @DEFS@ |
| 26 | LIBS= @LIBS@ |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 27 | LIBM= @LIBM@ |
| 28 | LIBC= @LIBC@ |
| 29 | |
Guido van Rossum | 45a9104 | 1995-08-08 14:18:12 +0000 | [diff] [blame] | 30 | # Machine-dependent subdirectories |
| 31 | MACHDEP= @MACHDEP@ |
| 32 | |
Guido van Rossum | 3bbc62e | 1995-01-02 19:30:30 +0000 | [diff] [blame] | 33 | # Install prefix for architecture-independent files |
| 34 | prefix= @prefix@ |
| 35 | |
| 36 | # Install prefix for architecture-dependent files |
| 37 | exec_prefix= @exec_prefix@ |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 38 | |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 39 | # Symbols used for using shared libraries |
| 40 | SO= @SO@ |
| 41 | LDSHARED= @LDSHARED@ |
| 42 | CCSHARED= @CCSHARED@ |
| 43 | LINKFORSHARED= @LINKFORSHARED@ |
Guido van Rossum | 3bbc62e | 1995-01-02 19:30:30 +0000 | [diff] [blame] | 44 | DESTSHARED= $(exec_prefix)/lib/python/$(MACHDEP) |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 45 | |
Guido van Rossum | ddcb36b | 1996-05-24 21:14:44 +0000 | [diff] [blame] | 46 | # Portable install script (configure doesn't always guess right) |
| 47 | INSTALL= @srcdir@/../install-sh -c |
| 48 | INSTALL_PROGRAM=${INSTALL} |
| 49 | INSTALL_DATA= ${INSTALL} -m 644 |
| 50 | |
Guido van Rossum | 275fbe2 | 1995-09-30 17:01:49 +0000 | [diff] [blame] | 51 | # === Variables that are customizable by hand or by inclusion in Setup === |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 52 | |
Guido van Rossum | f4449de | 1995-04-10 11:37:18 +0000 | [diff] [blame] | 53 | LINKCC= $(CC) |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 54 | INCLDIR= $(srcdir)/../Include |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 55 | CFLAGS= $(OPT) -I$(INCLDIR) -I.. $(DEFS) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 56 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 57 | MKDEP= mkdep |
| 58 | SHELL= /bin/sh |
| 59 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 60 | MAKESETUP= $(srcdir)/makesetup |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 61 | |
Guido van Rossum | 275fbe2 | 1995-09-30 17:01:49 +0000 | [diff] [blame] | 62 | # (The makesetup script inserts all variable definitions found |
| 63 | # found in the Setup file just below the following line. |
| 64 | # This means that the Setup file can override any of the definitions |
| 65 | # given before this point, but not any given below. |
| 66 | # The script insert the definitions in reverse order, |
| 67 | # for the benefits of independent extensions.) |
| 68 | # === Definitions added by makesetup === |
| 69 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 70 | # === Fixed definitions === |
| 71 | |
| 72 | OBJS= $(MODOBJS) |
| 73 | |
Guido van Rossum | 37ba0bc | 1995-08-04 04:20:45 +0000 | [diff] [blame] | 74 | ADDOBJS= main.o config.o getpath.o |
| 75 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 76 | LIB= libModules.a |
| 77 | |
| 78 | MYLIBS= $(LIB) \ |
| 79 | ../Python/libPython.a \ |
| 80 | ../Objects/libObjects.a \ |
| 81 | ../Parser/libParser.a |
| 82 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 83 | SYSLIBS= $(LIBM) $(LIBC) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 84 | |
| 85 | |
| 86 | # === Rules === |
| 87 | |
Guido van Rossum | 2ce15a5 | 1994-10-20 21:59:38 +0000 | [diff] [blame] | 88 | all: $(LIB) ../python sharedmods |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 89 | |
Guido van Rossum | 087579e | 1995-01-17 16:11:29 +0000 | [diff] [blame] | 90 | $(LIB): $& $(OBJS) Makefile |
Guido van Rossum | 794b93e | 1994-08-23 13:51:25 +0000 | [diff] [blame] | 91 | -rm -f $(LIB) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 92 | $(AR) cr $(LIB) $(OBJS) |
| 93 | $(RANLIB) $(LIB) |
| 94 | |
Guido van Rossum | 37ba0bc | 1995-08-04 04:20:45 +0000 | [diff] [blame] | 95 | ../python: $(MYLIBS) $(ADDOBJS) Makefile |
| 96 | $(LINKCC) $(OPT) $(LINKFORSHARED) $(ADDOBJS) \ |
Guido van Rossum | 72824ba | 1994-08-19 12:03:04 +0000 | [diff] [blame] | 97 | $(MYLIBS) $(MODLIBS) $(LIBS) $(SYSLIBS) -o python |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 98 | mv python ../python |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 99 | |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 100 | clean: |
| 101 | -rm -f *.o python core *~ [@,#]* *.old *.orig *.rej |
| 102 | |
| 103 | clobber: clean |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 104 | -rm -f *.a tags TAGS config.c glmodule.c Makefile.pre |
Guido van Rossum | f5e0ea8 | 1994-09-12 15:35:36 +0000 | [diff] [blame] | 105 | -rm -f *.so so_locations |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 106 | |
Guido van Rossum | 37ba0bc | 1995-08-04 04:20:45 +0000 | [diff] [blame] | 107 | getpath.o: getpath.c Makefile |
| 108 | $(CC) -c $(CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ |
| 109 | $(srcdir)/getpath.c |
| 110 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 111 | config.c Makefile: Makefile.pre config.c.in $(MAKESETUP) Setup |
| 112 | $(SHELL) $(MAKESETUP) Setup |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 113 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 114 | Setup: |
| 115 | cp $(srcdir)/Setup.in Setup |
| 116 | |
| 117 | Makefile.pre: Makefile.pre.in ../config.status |
| 118 | (cd ..; CONFIG_FILES=Modules/Makefile.pre CONFIG_HEADERS= \ |
| 119 | $(SHELL) config.status) |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 120 | |
| 121 | depend: |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 122 | $(MKDEP) $(CFLAGS) `echo $(OBJS) | tr ' ' '\012' | \ |
| 123 | sed 's|\(.*\)\.o|$(srcdir)/\1.c|'` |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 124 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 125 | .PRECIOUS: ../python |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 126 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 127 | glmodule.c: $(srcdir)/cgen.py $(srcdir)/cstubs |
| 128 | python $(srcdir)/cgen.py <$(srcdir)/cstubs >glmodule.c |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 129 | |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 130 | almodule.o: almodule.c |
| 131 | arraymodule.o: arraymodule.c |
Guido van Rossum | c65a525 | 1994-08-05 13:44:50 +0000 | [diff] [blame] | 132 | audioop.o: audioop.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 133 | cdmodule.o: cdmodule.c |
| 134 | clmodule.o: clmodule.c |
| 135 | dbmmodule.o: dbmmodule.c |
| 136 | fcntlmodule.o: fcntlmodule.c |
| 137 | flmodule.o: flmodule.c |
| 138 | fmmodule.o: fmmodule.c |
| 139 | glmodule.o: glmodule.c |
Guido van Rossum | c65a525 | 1994-08-05 13:44:50 +0000 | [diff] [blame] | 140 | imageop.o: imageop.c |
| 141 | imgfile.o: imgfile.c |
Guido van Rossum | 37ba0bc | 1995-08-04 04:20:45 +0000 | [diff] [blame] | 142 | main.o: main.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 143 | mathmodule.o: mathmodule.c |
| 144 | md5c.o: md5c.c |
| 145 | md5module.o: md5module.c |
| 146 | mpzmodule.o: mpzmodule.c |
| 147 | nismodule.o: nismodule.c |
| 148 | parsermodule.o: parsermodule.c |
| 149 | posixmodule.o: posixmodule.c |
| 150 | pwdmodule.o: pwdmodule.c |
| 151 | regexmodule.o: regexmodule.c |
| 152 | regexpr.o: regexpr.c |
| 153 | rgbimgmodule.o: rgbimgmodule.c |
| 154 | rotormodule.o: rotormodule.c |
| 155 | selectmodule.o: selectmodule.c |
| 156 | sgimodule.o: sgimodule.c |
| 157 | socketmodule.o: socketmodule.c |
| 158 | stdwinmodule.o: stdwinmodule.c |
| 159 | stropmodule.o: stropmodule.c |
| 160 | structmodule.o: structmodule.c |
Guido van Rossum | c65a525 | 1994-08-05 13:44:50 +0000 | [diff] [blame] | 161 | sunaudiodev.o: sunaudiodev.c |
Guido van Rossum | b6775db | 1994-08-01 11:34:53 +0000 | [diff] [blame] | 162 | svmodule.o: svmodule.c |
| 163 | threadmodule.o: threadmodule.c |
| 164 | timemodule.o: timemodule.c |
| 165 | timingmodule.o: timingmodule.c |
| 166 | xxmodule.o: xxmodule.c |
| 167 | yuvconvert.o: yuvconvert.c |
| 168 | |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 169 | # Rules to build and install all shared modules |
| 170 | sharedmods: $(SHAREDMODS) |
Guido van Rossum | 811fbbc | 1995-01-22 00:47:59 +0000 | [diff] [blame] | 171 | sharedinstall: $(DESTSHARED) $(SHAREDMODS) |
Guido van Rossum | ddcb36b | 1996-05-24 21:14:44 +0000 | [diff] [blame] | 172 | -for i in X $(SHAREDMODS); do \ |
| 173 | if test $$i != X; \ |
| 174 | then $(INSTALL_DATA) $$i $(DESTSHARED)/$$i; \ |
| 175 | fi; \ |
| 176 | done |
Guido van Rossum | fba715a | 1994-01-02 00:26:09 +0000 | [diff] [blame] | 177 | |
Guido van Rossum | 811fbbc | 1995-01-22 00:47:59 +0000 | [diff] [blame] | 178 | $(DESTSHARED): |
Guido van Rossum | ddcb36b | 1996-05-24 21:14:44 +0000 | [diff] [blame] | 179 | mkdir $(DESTSHARED); chmod 755 $(DESTSHARED) |
Guido van Rossum | 811fbbc | 1995-01-22 00:47:59 +0000 | [diff] [blame] | 180 | |
Guido van Rossum | 7cc5abd | 1994-09-12 10:42:20 +0000 | [diff] [blame] | 181 | # Stuff is appended here by makesetup and make depend |