Mercurial > cpython-lru_cache-weakref
annotate Mac/scripts/fullbuild.py @ 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 | 37635eea3bcc |
| children | 253e11b61106 |
| rev | line source |
|---|---|
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
1 # |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
2 # fullbuild creates everything that needs to be created before a |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
3 # distribution can be made, and puts it all in the right place. |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
4 # |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
5 # It expects the projects to be in the places where Jack likes them: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
6 # in directories named like 'build.macppc.shared'. That is fixable, |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
7 # however. |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
8 # |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
9 # NOTE: You should proably make a copy of python with which to execute this |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
10 # script, rebuilding running programs does not work... |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
11 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
12 import os |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
13 import sys |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
14 import macfs |
|
3408
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
15 import MacOS |
|
3502
61894ba571f5
Changed to allow the user to do partial builds
Jack Jansen <jack.jansen@cwi.nl>
parents:
3462
diff
changeset
|
16 import EasyDialogs |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
17 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
18 import addpack |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
19 import aetools |
|
3408
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
20 import AppleEvents |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
21 from Metrowerks_Shell_Suite import Metrowerks_Shell_Suite |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
22 from Required_Suite import Required_Suite |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
23 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
24 import Res |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
25 import Dlg |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
26 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
27 import mkapplet |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
28 import cfmfile |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
29 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
30 # Dialog resource. Note that the item numbers should correspond |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
31 # to those in the DITL resource. Also note that the order is important: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
32 # things are built in this order, so there should be no forward dependencies. |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
33 DIALOG_ID = 512 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
34 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
35 I_OK=1 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
36 I_CANCEL=2 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
37 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
38 I_PPC_CORE=3 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
39 I_PPC_PLUGINS=4 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
40 I_PPC_EXTENSIONS=5 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
41 I_68K_CORE=6 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
42 I_68K_PLUGINS=7 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
43 I_68K_EXTENSIONS=8 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
44 I_PPC_FULL=9 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
45 I_PPC_SMALL=10 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
46 I_68K_FULL=11 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
47 I_68K_SMALL=12 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
48 I_FAT=13 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
49 I_APPLETS=14 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
50 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
51 N_BUTTONS=15 |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
52 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
53 class MwShell(aetools.TalkTo, Metrowerks_Shell_Suite, Required_Suite): |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
54 pass |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
55 |
|
3502
61894ba571f5
Changed to allow the user to do partial builds
Jack Jansen <jack.jansen@cwi.nl>
parents:
3462
diff
changeset
|
56 RUNNING=[] |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
57 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
58 def buildmwproject(top, creator, projects): |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
59 """Build projects with an MW compiler""" |
|
4324
1afcd1cd333b
Use auto-start functionality of aetools.TalkTo and aetools.Error for
Jack Jansen <jack.jansen@cwi.nl>
parents:
4167
diff
changeset
|
60 mgr = MwShell(creator, start=1) |
|
3408
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
61 mgr.send_timeout = AppleEvents.kNoTimeOut |
|
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
62 |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
63 for file in projects: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
64 file = os.path.join(top, file) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
65 fss = macfs.FSSpec(file) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
66 print 'Building', file |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
67 mgr.open(fss) |
|
3408
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
68 try: |
|
397e6d53a7ad
- AppleEvent timeout set to infinite
Jack Jansen <jack.jansen@cwi.nl>
parents:
3185
diff
changeset
|
69 mgr.Make_Project() |
|
4324
1afcd1cd333b
Use auto-start functionality of aetools.TalkTo and aetools.Error for
Jack Jansen <jack.jansen@cwi.nl>
parents:
4167
diff
changeset
|
70 except aetools.Error, arg: |
|
1afcd1cd333b
Use auto-start functionality of aetools.TalkTo and aetools.Error for
Jack Jansen <jack.jansen@cwi.nl>
parents:
4167
diff
changeset
|
71 print '** Failed:', arg |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
72 mgr.Close_Project() |
|
3502
61894ba571f5
Changed to allow the user to do partial builds
Jack Jansen <jack.jansen@cwi.nl>
parents:
3462
diff
changeset
|
73 ## mgr.quit() |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
74 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
75 def buildapplet(top, dummy, list): |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
76 """Create python applets""" |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
77 template = mkapplet.findtemplate() |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
78 for src in list: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
79 if src[-3:] != '.py': |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
80 raise 'Should end in .py', src |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
81 base = os.path.basename(src) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
82 dst = os.path.join(top, base)[:-3] |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
83 src = os.path.join(top, src) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
84 try: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
85 os.unlink(dst) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
86 except os.error: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
87 pass |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
88 print 'Building applet', dst |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
89 mkapplet.process(template, src, dst) |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
90 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
91 def buildfat(top, dummy, list): |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
92 """Build fat binaries""" |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
93 for dst, src1, src2 in list: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
94 dst = os.path.join(top, dst) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
95 src1 = os.path.join(top, src1) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
96 src2 = os.path.join(top, src2) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
97 print 'Building fat binary', dst |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
98 cfmfile.mergecfmfiles((src1, src2), dst) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
99 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
100 def handle_dialog(): |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
101 """Handle selection dialog, return list of selected items""" |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
102 d = Dlg.GetNewDialog(DIALOG_ID, -1) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
103 d.SetDialogDefaultItem(I_OK) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
104 d.SetDialogCancelItem(I_CANCEL) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
105 results = [0]*N_BUTTONS |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
106 while 1: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
107 n = Dlg.ModalDialog(None) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
108 if n == I_OK: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
109 break |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
110 if n == I_CANCEL: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
111 return [] |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
112 if n < len(results): |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
113 results[n] = (not results[n]) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
114 tp, h, rect = d.GetDialogItem(n) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
115 h.as_Control().SetControlValue(results[n]) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
116 rv = [] |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
117 for i in range(len(results)): |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
118 if results[i]: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
119 rv.append(i) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
120 return rv |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
121 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
122 # |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
123 # The build instructions. Entries are (routine, arg, list-of-files) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
124 # XXXX We could also include the builds for stdwin and such here... |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
125 BUILD_DICT = { |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
126 I_PPC_CORE : (buildmwproject, "CWIE", [ |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
127 ":build.macppc.shared:PythonCorePPC.µ", |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
128 ":build.macppc.shared:PythonPPC.µ", |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
129 ":build.macppc.shared:PythonAppletPPC.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
130 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
131 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
132 I_68K_CORE : (buildmwproject, "CWIE", [ |
|
4058
21b28dcfa865
Adapted for cfm68k, new names and split off of qt.
Jack Jansen <jack.jansen@cwi.nl>
parents:
3933
diff
changeset
|
133 ":build.mac68k.shared:PythonCoreCFM68K.µ", |
|
21b28dcfa865
Adapted for cfm68k, new names and split off of qt.
Jack Jansen <jack.jansen@cwi.nl>
parents:
3933
diff
changeset
|
134 ":build.mac68k.shared:PythonCFM68K.µ", |
|
21b28dcfa865
Adapted for cfm68k, new names and split off of qt.
Jack Jansen <jack.jansen@cwi.nl>
parents:
3933
diff
changeset
|
135 ":build.mac68k.shared:PythonAppletCFM68K.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
136 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
137 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
138 I_PPC_PLUGINS : (buildmwproject, "CWIE", [ |
|
5435
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
139 ":PlugIns:toolboxmodules.ppc.µ", # First: used by others |
|
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
140 ":PlugIns:qtmodules.ppc.µ", |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
141 ":PlugIns:ctb.ppc.µ", |
| 4814 | 142 ":PlugIns:gdbm.ppc.µ", |
|
4913
9e2c3c6d4fa1
Added icglue modules and (optionally) NumPy and PIL extensions
Jack Jansen <jack.jansen@cwi.nl>
parents:
4814
diff
changeset
|
143 ":PlugIns:icglue.ppc.µ", |
|
4058
21b28dcfa865
Adapted for cfm68k, new names and split off of qt.
Jack Jansen <jack.jansen@cwi.nl>
parents:
3933
diff
changeset
|
144 ":PlugIns:imgmodules.ppc.µ", |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
145 ":PlugIns:macspeech.ppc.µ", |
|
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
146 ":PlugIns:waste.ppc.µ", |
|
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
147 ":PlugIns:_tkinter.ppc.µ", |
| 5144 | 148 ":PlugIns:calldll.ppc.µ", |
| 5715 | 149 ":PlugIns:zlib.ppc.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
150 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
151 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
152 I_68K_PLUGINS : (buildmwproject, "CWIE", [ |
|
5435
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
153 ":PlugIns:toolboxmodules.CFM68K.µ", # First: used by others |
|
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
154 ":PlugIns:qtmodules.CFM68K.µ", |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
155 ":PlugIns:ctb.CFM68K.µ", |
| 4814 | 156 ":PlugIns:gdbm.CFM68K.µ", |
|
4913
9e2c3c6d4fa1
Added icglue modules and (optionally) NumPy and PIL extensions
Jack Jansen <jack.jansen@cwi.nl>
parents:
4814
diff
changeset
|
157 ":PlugIns:icglue.CFM68K.µ", |
|
4471
122c8fdfe4ef
Build imgmodules.cfm68k too
Jack Jansen <jack.jansen@cwi.nl>
parents:
4324
diff
changeset
|
158 ":PlugIns:imgmodules.CFM68K.µ", |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
159 ":PlugIns:waste.CFM68K.µ", |
|
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
160 ":PlugIns:_tkinter.CFM68K.µ", |
| 5715 | 161 ":PlugIns:zlib.CFM68K.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
162 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
163 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
164 I_68K_FULL : (buildmwproject, "CWIE", [ |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
165 ":build.mac68k.stand:Python68K.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
166 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
167 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
168 I_68K_SMALL : (buildmwproject, "CWIE", [ |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
169 ":build.mac68k.stand:Python68Ksmall.µ", |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
170 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
171 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
172 I_PPC_FULL : (buildmwproject, "CWIE", [ |
|
4125
0b73c31bab90
Fixed names of vairous plugins to build, added a couple and added
Jack Jansen <jack.jansen@cwi.nl>
parents:
4058
diff
changeset
|
173 ":build.macppc.stand:PythonStandalone.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
174 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
175 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
176 I_PPC_SMALL : (buildmwproject, "CWIE", [ |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
177 ":build.macppc.stand:PythonStandSmall.µ", |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
178 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
179 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
180 I_PPC_EXTENSIONS : (buildmwproject, "CWIE", [ |
|
4913
9e2c3c6d4fa1
Added icglue modules and (optionally) NumPy and PIL extensions
Jack Jansen <jack.jansen@cwi.nl>
parents:
4814
diff
changeset
|
181 ":Extensions:Imaging:_imaging.ppc.µ", |
|
5078
7f4b32e86545
Added _tkinter modules in Image extension
Jack Jansen <jack.jansen@cwi.nl>
parents:
4913
diff
changeset
|
182 ":Extensions:Imaging:_tkinter.ppc.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
183 ":Extensions:NumPy:numpymodules.ppc.µ", |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
184 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
185 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
186 I_68K_EXTENSIONS : (buildmwproject, "CWIE", [ |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
187 ":Extensions:Imaging:_imaging.CFM68K.µ", |
|
5078
7f4b32e86545
Added _tkinter modules in Image extension
Jack Jansen <jack.jansen@cwi.nl>
parents:
4913
diff
changeset
|
188 ":Extensions:Imaging:_tkinter.CFM68K.µ", |
|
4913
9e2c3c6d4fa1
Added icglue modules and (optionally) NumPy and PIL extensions
Jack Jansen <jack.jansen@cwi.nl>
parents:
4814
diff
changeset
|
189 ":Extensions:NumPy:numpymodules.CFM68K.µ", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
190 ]), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
191 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
192 I_APPLETS : (buildapplet, None, [ |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
193 ":Mac:scripts:EditPythonPrefs.py", |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
194 ":Mac:scripts:mkapplet.py", |
|
3185
c056f685c081
Adapted to CW7, added MkPluginAlises
Jack Jansen <jack.jansen@cwi.nl>
parents:
3063
diff
changeset
|
195 ":Mac:scripts:MkPluginAliases.py" |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
196 ]), |
|
3502
61894ba571f5
Changed to allow the user to do partial builds
Jack Jansen <jack.jansen@cwi.nl>
parents:
3462
diff
changeset
|
197 |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
198 I_FAT : (buildfat, None, [ |
|
5435
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
199 (":PythonFAT", ":build.macppc.shared:PythonPPC", |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
200 ":build.mac68k.shared:PythonCFM68K"), |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
201 (":PythonApplet", ":build.macppc.shared:PythonAppletPPC", |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
202 ":build.mac68k.shared:PythonAppletCFM68K") |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
203 ]) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
204 } |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
205 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
206 def main(): |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
207 try: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
208 h = Res.OpenResFile('fullbuild.rsrc') |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
209 except Res.Error: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
210 pass # Assume we already have acces to our own resource |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
211 |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
212 dir, ok = macfs.GetDirectory('Python source folder:') |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
213 if not ok: |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
214 sys.exit(0) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
215 dir = dir.as_pathname() |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
216 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
217 todo = handle_dialog() |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
218 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
219 instructions = [] |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
220 for i in todo: |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
221 instructions.append(BUILD_DICT[i]) |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
222 |
|
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
223 for routine, arg, list in instructions: |
|
5435
591c6420f11d
- toolboxmodules built first (others depend on it)
Jack Jansen <jack.jansen@cwi.nl>
parents:
5420
diff
changeset
|
224 routine(dir, arg, list) |
|
5420
014ea9d72d03
- Use cfmfile to (finally) implement building fat Pythons
Jack Jansen <jack.jansen@cwi.nl>
parents:
5144
diff
changeset
|
225 |
|
3063
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
226 print "All done!" |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
227 sys.exit(1) |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
228 |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
229 if __name__ == '__main__': |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
230 main() |
|
b333f16fb419
Build appplications, libraries and applets according to builtin
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
231 |
