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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
98213604f941 Added gdbm plugins
Jack Jansen <jack.jansen@cwi.nl>
parents: 4519
diff changeset
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
6b337ec92bd0 Added calldll module
Jack Jansen <jack.jansen@cwi.nl>
parents: 5078
diff changeset
148 ":PlugIns:calldll.ppc.µ",
5715
37635eea3bcc Added zlib
Jack Jansen <jack.jansen@cwi.nl>
parents: 5435
diff changeset
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
98213604f941 Added gdbm plugins
Jack Jansen <jack.jansen@cwi.nl>
parents: 4519
diff changeset
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
37635eea3bcc Added zlib
Jack Jansen <jack.jansen@cwi.nl>
parents: 5435
diff changeset
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