annotate Mac/scripts/genpluginprojects.py @ 17850:295a2f4927ab legacy-trunk

Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.
author Jack Jansen <jack.jansen@cwi.nl>
date Thu, 17 May 2001 22:12:55 +0000
parents 4cedc826bee8
children 295acc0755f0
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")
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
147
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
148 # 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
149 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
150 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
151 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
152 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
153 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
154 "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
155 '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
156 '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
157 '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
158 '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
159 '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
160 '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
161 '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
162 '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
163 libraries=['DragLib'],
16102
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
164 extradirs=[
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
165 '::::Waste 1.3 Distribution:*',
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
166 '::::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
167 )
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
168 # 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
169 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
170 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
171 "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
172 "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
173 "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
174 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
175 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
176 '{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
177 '{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
178 '::::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
179 '::::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
180 )
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
181 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
182 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
183 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
184 extradirs=["::::ICProgKit1.4:APIs"])
16335
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
185 genpluginproject("carbon", "icglue", sources=["icgluemodule.c"],
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
186 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
187 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
188
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 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
190 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
191
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
192