annotate Mac/scripts/genpluginprojects.py @ 19391:b22658a468cf legacy-trunk

Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
author Jack Jansen <jack.jansen@cwi.nl>
date Sun, 19 Aug 2001 22:29:57 +0000
parents 42246b8c58bb
children 2fc102b838ed
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
19321
42246b8c58bb If genpluginprojects is called from fullbuild we set the Python source directory to be the same as fullbuild uses (in stead of using the default sys.prefix). This fixes an issue Mark Day raised that you can't use fullbuild with one Python installation to build another one.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19024
diff changeset
6 PYTHONDIR = sys.prefix
42246b8c58bb If genpluginprojects is called from fullbuild we set the Python source directory to be the same as fullbuild uses (in stead of using the default sys.prefix). This fixes an issue Mark Day raised that you can't use fullbuild with one Python installation to build another one.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19024
diff changeset
7 PROJECTDIR = os.path.join(PYTHONDIR, ":Mac:Build")
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
8 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
9 "::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
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 ":::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
12 ]
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
13
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
14 # 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
15 # 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
16 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
17
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
18 def relpath(base, path):
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
19 """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
20 both pointing to folders"""
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
21 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
22 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
23 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
24 base = base[:-1]
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
25 basefields = string.split(base, os.sep)
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
26 pathfields = string.split(path, os.sep)
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
27 commonfields = len(os.path.commonprefix((basefields, pathfields)))
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
28 basefields = basefields[commonfields:]
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
29 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
30 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
31 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
32 return rv
15705
b408acdcaf3e Use relative path for outputdir.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15675
diff changeset
33
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
34 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
35 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
36 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
37 libraries=[], extradirs=[],
19391
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
38 extraexportsymbols=[], outputdir=":::Lib:lib-dynload"):
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
39 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
40 # 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
41 # 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
42 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
43 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
44 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
45 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
46 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
47 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
48 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
49 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
50 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
51 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
52 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
53 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
54 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
55 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
56 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
57 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
58 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
59 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
60 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
61 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
62 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
63 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
64 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
65 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
66 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
67 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
68 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
69 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
70 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
71 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
72 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
73 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
74 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
75 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
76 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
77 "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
78 "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
79 "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
80 "libraries": libraries,
19391
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
81 "mac_outputdir" : outputdir,
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
82 "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
83 "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
84 "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
85 "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
86 }
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
87 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
88 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
89
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
90 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
91 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
92 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
93 # 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
94 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
95 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
96 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
97 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
98 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
99 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
100 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
101 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
102 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
103 extradirs=["::::gdbm:mac", "::::gdbm"])
16566
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
104 genpluginproject("all", "_weakref", sources=["_weakref.c"])
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
105 genpluginproject("all", "_symtable", sources=["symtablemodule.c"])
4cedc826bee8 Added modules _testcapi, _weakref, _symtable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16335
diff changeset
106 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
107
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
108 # bgen-generated Toolbox modules
19391
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
109 genpluginproject("carbon", "AE", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
110 genpluginproject("ppc", "AE", libraries=["ObjectSupportLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
111 genpluginproject("ppc", "App", libraries=["AppearanceLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
112 genpluginproject("carbon", "App", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
113 genpluginproject("ppc", "Cm", libraries=["QuickTimeLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
114 genpluginproject("carbon", "Cm", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
115 genpluginproject("carbon", "Ctl", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
116 genpluginproject("ppc", "Ctl", libraries=["ControlsLib", "AppearanceLib"],
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
117 outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
118 genpluginproject("carbon", "Dlg", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
119 genpluginproject("ppc", "Dlg", libraries=["DialogsLib", "AppearanceLib"],
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
120 outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
121 genpluginproject("carbon", "Drag", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
122 genpluginproject("ppc", "Drag", libraries=["DragLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
123 genpluginproject("all", "Evt", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
124 genpluginproject("all", "Fm", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
125 genpluginproject("ppc", "Help", outputdir="::Lib:Carbon")
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
126 genpluginproject("ppc", "Icn", libraries=["IconServicesLib"])
19391
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
127 genpluginproject("carbon", "Icn", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
128 genpluginproject("all", "List", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
129 genpluginproject("carbon", "Menu", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
130 genpluginproject("ppc", "Menu", libraries=["MenusLib", "ContextualMenu", "AppearanceLib"],
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
131 outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
132 genpluginproject("all", "Qd", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
133 genpluginproject("ppc", "Qt", libraries=["QuickTimeLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
134 genpluginproject("carbon", "Qt", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
135 genpluginproject("all", "Qdoffs", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
136 genpluginproject("all", "Res", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
137 genpluginproject("all", "Scrap", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
138 genpluginproject("ppc", "Snd", libraries=["SoundLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
139 genpluginproject("carbon", "Snd", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
140 genpluginproject("all", "Sndihooks", sources=[":snd:Sndihooks.c"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
141 genpluginproject("ppc", "TE", libraries=["DragLib"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
142 genpluginproject("carbon", "TE", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
143 genpluginproject("ppc", "Mlte", libraries=["Textension"], outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
144 genpluginproject("carbon", "Mlte", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
145 genpluginproject("carbon", "Win", outputdir="::Lib:Carbon")
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
146 genpluginproject("ppc", "Win", libraries=["WindowsLib", "AppearanceLib"],
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
147 outputdir="::Lib:Carbon")
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
148 # Carbon Only?
19391
b22658a468cf Dynamic modules are now put in :Lib:lib-dynload by default. For the toolbox modules this is overridden to put them in :Mac:Lib:Carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 19321
diff changeset
149 genpluginproject("carbon", "CF", outputdir="::Lib:Carbon")
18290
295acc0755f0 Added CF module build and project generation (carbon only).
Jack Jansen <jack.jansen@cwi.nl>
parents: 17850
diff changeset
150
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
151 # 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
152 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
153 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
154 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
155 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
156 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
157 "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
158 '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
159 '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
160 '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
161 '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
162 '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
163 '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
164 '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
165 '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
166 libraries=['DragLib'],
16102
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
167 extradirs=[
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
168 '::::Waste 1.3 Distribution:*',
7cb940c15645 Waste needs the ICProgKit API.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16086
diff changeset
169 '::::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
170 )
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
171 # 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
172 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
173 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
174 "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
175 "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
176 "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
177 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
178 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
179 '{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
180 '{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
181 '::::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
182 '::::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
183 )
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
184 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
185 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
186 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
187 extradirs=["::::ICProgKit1.4:APIs"])
16335
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
188 genpluginproject("carbon", "icglue", sources=["icgluemodule.c"],
2852eadb7dab Ported the icglue module to carbon.
Jack Jansen <jack.jansen@cwi.nl>
parents: 16249
diff changeset
189 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
190 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
191
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
192 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
193 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
194
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
195