annotate Mac/scripts/genpluginprojects.py @ 18557:7461348d99da legacy-trunk

Added Mlte module (which, to my surprise, is available for classic ppc as well).
author Jack Jansen <jack.jansen@cwi.nl>
date Fri, 13 Jul 2001 20:57:47 +0000
parents 295acc0755f0
children 0ab8f937ff66
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1 import mkcwproject
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
2 import sys
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 import os
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
4 import string
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
6 PROJECTDIR = os.path.join(sys.prefix, ":Mac:Build")
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
7 MODULEDIRS = [ # Relative to projectdirs
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
8 "::Modules:%s",
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
9 "::Modules",
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
10 ":::Modules",
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
11 ]
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
12
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
13 # Global variable to control forced rebuild (otherwise the project is only rebuilt
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
14 # when it is changed)
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
15 FORCEREBUILD=0
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
16
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
17 def relpath(base, path):
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
18 """Turn abs path into path relative to another. Only works for 2 abs paths
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
19 both pointing to folders"""
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
20 if not os.path.isabs(base) or not os.path.isabs(path):
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
21 raise 'Absolute paths only'
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
22 if base[-1] == ':':
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
23 base = base[:-1]
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
24 basefields = string.split(base, os.sep)
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
25 pathfields = string.split(path, os.sep)
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
26 commonfields = len(os.path.commonprefix((basefields, pathfields)))
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
27 basefields = basefields[commonfields:]
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
28 pathfields = pathfields[commonfields:]
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
29 pathfields = ['']*(len(basefields)+1) + pathfields
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
30 rv = string.join(pathfields, os.sep)
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
31 return rv
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
32
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
33 def genpluginproject(architecture, module,
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34 project=None, projectdir=None,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
35 sources=[], sourcedirs=[],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
36 libraries=[], extradirs=[],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
37 extraexportsymbols=[]):
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
38 if architecture == "all":
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
39 # For the time being we generate two project files. Not as nice as
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
40 # a single multitarget project, but easier to implement for now.
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
41 genpluginproject("ppc", module, project, projectdir, sources, sourcedirs,
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
42 libraries, extradirs, extraexportsymbols)
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
43 genpluginproject("carbon", module, project, projectdir, sources, sourcedirs,
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
44 libraries, extradirs, extraexportsymbols)
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
45 return
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
46 templatename = "template-%s" % architecture
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
47 targetname = "%s.%s" % (module, architecture)
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
48 dllname = "%s.%s.slb" % (module, architecture)
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
49 if not project:
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
50 if architecture != "ppc":
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
51 project = "%s.%s.mcp"%(module, architecture)
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
52 else:
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
53 project = "%s.mcp"%module
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
54 if not projectdir:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
55 projectdir = PROJECTDIR
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
56 if not sources:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
57 sources = [module + 'module.c']
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
58 if not sourcedirs:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
59 for moduledir in MODULEDIRS:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
60 if '%' in moduledir:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
61 moduledir = moduledir % module
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
62 fn = os.path.join(projectdir, os.path.join(moduledir, sources[0]))
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
63 if os.path.exists(fn):
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
64 moduledir, sourcefile = os.path.split(fn)
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
65 sourcedirs = [relpath(projectdir, moduledir)]
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
66 sources[0] = sourcefile
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
67 break
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
68 else:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
69 print "Warning: %s: sourcefile not found: %s"%(module, sources[0])
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
70 sourcedirs = []
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
71 if architecture == "carbon":
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
72 prefixname = "mwerks_carbonplugin_config.h"
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
73 else:
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
74 prefixname = "mwerks_plugin_config.h"
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
75 dict = {
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
76 "sysprefix" : relpath(projectdir, sys.prefix),
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
77 "sources" : sources,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
78 "extrasearchdirs" : sourcedirs + extradirs,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
79 "libraries": libraries,
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
80 "mac_outputdir" : "::Plugins",
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
81 "extraexportsymbols" : extraexportsymbols,
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
82 "mac_targetname" : targetname,
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
83 "mac_dllname" : dllname,
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
84 "prefixname" : prefixname,
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
85 }
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
86 mkcwproject.mkproject(os.path.join(projectdir, project), module, dict,
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
87 force=FORCEREBUILD, templatename=templatename)
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
88
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
89 def genallprojects(force=0):
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
90 global FORCEREBUILD
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
91 FORCEREBUILD = force
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
92 # Standard Python modules
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
93 genpluginproject("all", "pyexpat",
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
94 sources=["pyexpat.c"],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
95 libraries=["libexpat.ppc.lib"],
15675
93a575bba09f Changed the search path for pyexpat to include all of the expat folder.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15519
diff changeset
96 extradirs=["::::expat:*"])
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
97 genpluginproject("all", "zlib",
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
98 libraries=["zlib.ppc.Lib"],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
99 extradirs=["::::imglibs:zlib:mac", "::::imglibs:zlib"])
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
100 genpluginproject("all", "gdbm",
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
101 libraries=["gdbm.ppc.gusi.lib"],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
102 extradirs=["::::gdbm:mac", "::::gdbm"])
16566
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
103 genpluginproject("all", "_weakref", sources=["_weakref.c"])
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
104 genpluginproject("all", "_symtable", sources=["symtablemodule.c"])
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
105 genpluginproject("all", "_testcapi")
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
106
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
107 # bgen-generated Toolbox modules
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
108 genpluginproject("ppc", "App", libraries=["AppearanceLib"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
109 genpluginproject("carbon", "App")
17850
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
110 ## genpluginproject("ppc", "Cm",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
111 ## libraries=["QuickTimeLib"],
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
112 ## extraexportsymbols=[
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
113 ## "CmpObj_New",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
114 ## "CmpObj_Convert",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
115 ## "CmpInstObj_New",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
116 ## "CmpInstObj_Convert",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
117 ## ])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
118 ## genpluginproject("carbon", "Cm",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
119 ## extraexportsymbols=[
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
120 ## "CmpObj_New",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
121 ## "CmpObj_Convert",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
122 ## "CmpInstObj_New",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
123 ## "CmpInstObj_Convert",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
124 ## ])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
125 genpluginproject("ppc", "Cm", libraries=["QuickTimeLib"])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
126 genpluginproject("carbon", "Cm")
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
127 genpluginproject("all", "Fm")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
128 genpluginproject("ppc", "Help")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
129 genpluginproject("ppc", "Icn", libraries=["IconServicesLib"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
130 genpluginproject("carbon", "Icn")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
131 genpluginproject("all", "List")
17850
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
132 ## genpluginproject("ppc", "Qt", libraries=["QuickTimeLib", "Cm.ppc.slb", "Qdoffs.ppc.slb"],
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
133 ## extradirs=["::Plugins"])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
134 genpluginproject("ppc", "Qt", libraries=["QuickTimeLib"])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
135 ## genpluginproject("carbon", "Qt", libraries=["Cm.carbon.slb", "Qdoffs.carbon.slb"],
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
136 ## extradirs=["::Plugins"])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
137 genpluginproject("carbon", "Qt")
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
138 ## genpluginproject("all", "Qdoffs",
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
139 ## extraexportsymbols=["GWorldObj_New", "GWorldObj_Convert"])
295a2f4927ab Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16566
diff changeset
140 genpluginproject("all", "Qdoffs")
16213
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
141 genpluginproject("all", "Scrap")
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
142 genpluginproject("ppc", "Snd", libraries=["SoundLib"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
143 genpluginproject("carbon", "Snd")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
144 genpluginproject("all", "Sndihooks", sources=[":snd:Sndihooks.c"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
145 genpluginproject("ppc", "TE", libraries=["DragLib"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
146 genpluginproject("carbon", "TE")
18557
7461348d99da Added Mlte module (which, to my surprise, is available for classic ppc as well).
Jack Jansen <jack.jansen@cwi.nl>
parents: 18290
diff changeset
147 genpluginproject("ppc", "Mlte", libraries=["Textension"])
7461348d99da Added Mlte module (which, to my surprise, is available for classic ppc as well).
Jack Jansen <jack.jansen@cwi.nl>
parents: 18290
diff changeset
148 genpluginproject("carbon", "Mlte")
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
149
18557
7461348d99da Added Mlte module (which, to my surprise, is available for classic ppc as well).
Jack Jansen <jack.jansen@cwi.nl>
parents: 18290
diff changeset
150 # Carbon Only?
18290
295acc0755f0 Added CF module build and project generation (carbon only).
Jack Jansen <jack.jansen@cwi.nl>
parents: 17850
diff changeset
151 genpluginproject("carbon", "CF")
295acc0755f0 Added CF module build and project generation (carbon only).
Jack Jansen <jack.jansen@cwi.nl>
parents: 17850
diff changeset
152
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
153 # Other Mac modules
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
154 genpluginproject("all", "calldll", sources=["calldll.c"])
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
155 genpluginproject("all", "ColorPicker")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
156 genpluginproject("ppc", "Printing")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
157 genpluginproject("ppc", "waste",
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
158 sources=[
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
159 "wastemodule.c",
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
160 'WEAccessors.c', 'WEBirthDeath.c', 'WEDebug.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
161 'WEDrawing.c', 'WEFontTables.c', 'WEHighLevelEditing.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
162 'WEICGlue.c', 'WEInlineInput.c', 'WELineLayout.c', 'WELongCoords.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
163 'WELowLevelEditing.c', 'WEMouse.c', 'WEObjects.c', 'WEScraps.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
164 'WESelecting.c', 'WESelectors.c', 'WEUserSelectors.c', 'WEUtilities.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
165 'WEObjectHandlers.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
166 'WETabs.c',
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
167 'WETabHooks.c'],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
168 libraries=['DragLib'],
16102
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
169 extradirs=[
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
170 '::::Waste 1.3 Distribution:*',
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
171 '::::ICProgKit1.4:APIs']
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
172 )
16213
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
173 # This is a hack, combining parts of Waste 2.0 with parts of 1.3
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
174 genpluginproject("carbon", "waste",
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
175 sources=[
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
176 "wastemodule.c",
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
177 "WEObjectHandlers.c",
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
178 "WETabs.c", "WETabHooks.c"],
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
179 libraries=["WASTE.Carbon.lib"],
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
180 extradirs=[
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
181 '{Compiler}:MacOS Support:(Third Party Support):Waste 2.0 Distribution:C_C++ Headers',
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
182 '{Compiler}:MacOS Support:(Third Party Support):Waste 2.0 Distribution:Static Libraries',
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
183 '::::Waste 1.3 Distribution:Extras:Sample Object Handlers',
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
184 '::::Waste 1.3 Distribution:Extras:Waste Tabs 1.3.2']
c0f61d4f5a04 Waste and scrap now sort-of work for Carbon. Scrap is mostly empty, and waste uses a mixture between Waste 2.0 and Waste 1.3.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16181
diff changeset
185 )
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
186 genpluginproject("ppc", "ctb")
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
187 genpluginproject("ppc", "icglue", sources=["icgluemodule.c"],
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
188 libraries=["ICGlueCFM-PPC.lib"],
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
189 extradirs=["::::ICProgKit1.4:APIs"])
16335
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
190 genpluginproject("carbon", "icglue", sources=["icgluemodule.c"],
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
191 extradirs=["::::ICProgKit1.4:APIs"])
16181
a54c282bfb63 Generate Carbon as well as classic PPC plugin projects. This module is finally paying back the investment in it!
Jack Jansen <jack.jansen@cwi.nl>
parents: 16102
diff changeset
192 genpluginproject("ppc", "macspeech", libraries=["SpeechLib"])
15470
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
193
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
194 if __name__ == '__main__':
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
195 genallprojects()
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
196
16086
481c3d50a4e5 Added a force option (to force project generation, the default is now to only generate if different).
Jack Jansen <jack.jansen@cwi.nl>
parents: 15705
diff changeset
197