Mercurial > cpython-lru_cache-weakref
annotate PC/make_nt.in @ 5817:48b94de85bf3 legacy-trunk
Extensive changes by AMK.
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Thu, 17 Jul 1997 16:29:42 +0000 |
| parents | 1c00640069f8 |
| children |
| rev | line source |
|---|---|
|
4208
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
1 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
2 !include <ntwin32.mak> # bring in platform specific stuff. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
3 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
4 #Fix a problem with ntwin32.mak and Visual C++ |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
5 # problem is .mak defines "link=link32" and "lib=lib32" |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
6 # Problem is MSVC linker/library manager use these environment |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
7 # variables as additional flags to link/lib |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
8 # Consequently, link warns "link32.obj not found" and similarly lib. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
9 # This has really p___ed me of. It has been very hard to get right. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
10 # The LIB variable is used by MSVC to locate system library files, and |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
11 # damn ntwin32.mak sets lib. Now although NMAKE is case sensitive, the OS' |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
12 # environment vars arent. Therefore /E option _must_ be specified for MSVC |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
13 # nmake itself is also very average :-( |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
14 # |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
15 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
16 # Damn it. Even with .pyd in the suffixes, nmake wont infer a line |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
17 # mymodule.dll: |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
18 # and run up the .c->.obj, .obj->.pyd. And with all debug turned on, all |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
19 # it says is "dont know how to make .." Damn it (probably me, but I gave up:) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
20 #.SUFFIXES : |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
21 #.SUFFIXES : .exe .dll .obj .asm .c .cpp .cxx .bas .cbl .for .pas .res .rc |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
22 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
23 # Version information. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
24 pyversion=140 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
25 pypatchlevel=b1 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
26 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
27 pythondllext=pyd |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
28 linker=$(link) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
29 libmgr=$(implib) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
30 LINK= |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
31 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
32 #cdebug = -Z7 -Od # Z7 for win32s debugging |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
33 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
34 # |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
35 # Additional common definitions |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
36 # |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
37 cinclude=/I$(pythondir)\Include |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
38 python_dll=Py$(pyversion)-$(pypatchlevel).dll |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
39 python_defs_lib=$(pythondir)\Modules\Python.lib |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
40 python_defs_exp=$(pythondir)\Modules\Python.exp |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
41 pythonopts=/DHAVE_CONFIG_H /nologo /MD /G3 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
42 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
43 #!IFDEF MSVC |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
44 # Although this is handled, it generates warning. This is to avoid them |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
45 #cc=cl |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
46 #linker=link |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
47 #libmgr=lib |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
48 #!ENDIF |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
49 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
50 !IFNDEF NODEBUG |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
51 ldebug = -debug:full -debugtype:both |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
52 !ENDIF |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
53 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
54 !ifndef BUILD_DL |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
55 cdl=/DUSE_DL_EXPORT /DWIN32_PATCH_LEVEL=\"$(pyversion)-$(pypatchlevel)\" |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
56 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
57 .c.obj: |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
58 @$(cc) $(cflags) $(ccustom) $(cdebug) $(cinclude) $(pythonopts) $(cdl) $*.c |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
59 !else |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
60 # |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
61 # Useful stuff for building DL modules under NT. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
62 # |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
63 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
64 cdl=/DUSE_DL_IMPORT |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
65 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
66 #if you have a .DEF file, define HAVE_DEF |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
67 # if you dont want precompiled headers, define PCH=0 (in your makefile, not here!) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
68 !ifndef PCH |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
69 PCH=1 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
70 !endif |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
71 !if "$(PCH)"=="1" |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
72 cpch=/YX |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
73 !else |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
74 cpch= |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
75 !endif |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
76 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
77 !ifdef HAVE_DEF |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
78 export_statements=/DEF:$*.def |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
79 !else |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
80 export_statements=/EXPORT:init$(*:module=) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
81 !endif |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
82 # Note for 'C', I use /Tp, to force as CPP - this will allow .C to define types. |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
83 .c.obj: |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
84 @echo Warning - compiling as C++ file |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
85 @$(cc) $(cdl) $(cflags) $(ccustom) $(cdebug) $(cinclude) $(cpch) $(pythonopts) /DUSE_DL_IMPORT /Tp $*.c |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
86 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
87 .cpp.obj: |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
88 @$(cc) $(cdl) $(cflags) $(ccustom) $(cdebug) $(cinclude) $(cpch) $(pythonopts) /DUSE_DL_IMPORT $*.cpp |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
89 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
90 .obj.$(pythondllext): |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
91 @link -dll -out:$*.$(pythondllext) $*.obj $(ldebug) $(export_statements) $(guilibsdll) $(lcustom) $(python_defs_lib) |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
92 |
|
1c00640069f8
Include file for users of Mark's build procedure
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
93 !endif # !BUILD_DL |
