annotate Mac/scripts/genpluginprojects.py @ 15519:ed29df7eb5c9 legacy-trunk

Qdoffs now exports GWorld new/convert, and Qt uses them. Drag moved to core toolbox modules (Win uses it).
author Jack Jansen <jack.jansen@cwi.nl>
date Tue, 12 Dec 2000 21:53:48 +0000
parents e0d8a6f2d091
children 93a575bba09f
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
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4
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 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
6 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
7 "::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
8 "::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
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 ]
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 def genpluginproject(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
13 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
14 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
15 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
16 extraexportsymbols=[]):
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
17 if not project:
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
18 project = module + '.mcp'
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
19 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
20 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
21 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
22 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
23 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
24 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
25 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
26 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
27 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
28 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
29 moduledir, sourcefile = os.path.split(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
30 sourcedirs = [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
31 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
32 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
33 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
34 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
35 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 dict = {
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 "sysprefix" : sys.prefix,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
38 "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
39 "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
40 "libraries": libraries,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
41 "mac_outputdir" : os.path.join(sys.prefix, ":Mac:Plugins"),
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
42 "extraexportsymbols" : extraexportsymbols,
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
43 }
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
44 mkcwproject.mkproject(os.path.join(projectdir, project), module, dict)
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
45
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
46 def 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
47 # Standard Python 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
48 genpluginproject("ucnhash", sources=["ucnhash.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
49 genpluginproject("pyexpat",
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 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
51 libraries=["libexpat.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
52 extradirs=["::::expat:mac"])
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
53 genpluginproject("zlib",
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 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
55 extradirs=["::::imglibs:zlib:mac", "::::imglibs:zlib"])
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 genpluginproject("gdbm",
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 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
58 extradirs=["::::gdbm:mac", "::::gdbm"])
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
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 # bgen-generated Toolbox 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
61 genpluginproject("App", libraries=["AppearanceLib"])
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 genpluginproject("Cm",
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 libraries=["QuickTimeLib"],
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 extraexportsymbols=[
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 "CmpObj_New",
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 "CmpObj_Convert",
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 "CmpInstObj_New",
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 "CmpInstObj_Convert",
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 ])
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 genpluginproject("Fm")
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 genpluginproject("Help")
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
72 genpluginproject("Icn", libraries=["IconServicesLib"])
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
73 genpluginproject("List")
15519
ed29df7eb5c9 Qdoffs now exports GWorld new/convert, and Qt uses them.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15470
diff changeset
74 genpluginproject("Qt", libraries=["QuickTimeLib", "Cm.ppc.slb", "Qdoffs.ppc.slb"], extradirs=["::Plugins"])
ed29df7eb5c9 Qdoffs now exports GWorld new/convert, and Qt uses them.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15470
diff changeset
75 genpluginproject("Qdoffs",
ed29df7eb5c9 Qdoffs now exports GWorld new/convert, and Qt uses them.
Jack Jansen <jack.jansen@cwi.nl>
parents: 15470
diff changeset
76 extraexportsymbols=["GWorldObj_New", "GWorldObj_Convert"])
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 genpluginproject("Scrap")
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 genpluginproject("Snd", libraries=["SoundLib"])
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 genpluginproject("Sndihooks", sources=[":snd:Sndihooks.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
80 genpluginproject("TE", libraries=["DragLib"])
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
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 # Other Mac 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
83 genpluginproject("calldll", sources=["calldll.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
84 genpluginproject("ColorPicker")
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 genpluginproject("Printing")
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 genpluginproject("waste",
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
87 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
88 "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
89 '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
90 '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
91 '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
92 '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
93 '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
94 '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
95 '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
96 '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
97 libraries=['DragLib'],
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 extradirs=['::::Waste 1.3 Distribution:*']
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 )
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 genpluginproject("ctb")
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 genpluginproject("icglue", sources=["icgluemodule.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
102 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
103 extradirs=["::::ICProgKit1.4:APIs"])
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
104 genpluginproject("macspeech", libraries=["SpeechLib"])
e0d8a6f2d091 Got it working for all important plugins, and moved it from Build to scripts.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
105
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 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
107 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
108