Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c10a11b

Browse files
committed
Generate plugin projects automatically using mkcwproject. There are as of yet only
three modules done (and one doesn't work:-), the rest TBD.
1 parent fed0d09 commit c10a11b

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

Mac/Build/genpluginprojects.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
import mkcwproject
2+
import sys
3+
import os
4+
5+
PROJECTDIR = os.path.join(sys.prefix, ":Mac:Build")
6+
MODULEDIRS = [ # Relative to projectdirs
7+
"::Modules:%s",
8+
"::Modules",
9+
":::Modules",
10+
]
11+
12+
def genpluginproject(module,
13+
project=None, projectdir=None,
14+
sources=[], sourcedirs=[],
15+
libraries=[], extradirs=[]):
16+
if not project:
17+
project = module + '.mcp'
18+
if not projectdir:
19+
projectdir = PROJECTDIR
20+
if not sources:
21+
sources = [module + 'module.c']
22+
if not sourcedirs:
23+
for moduledir in MODULEDIRS:
24+
if '%' in moduledir:
25+
moduledir = moduledir % module
26+
fn = os.path.join(projectdir, os.path.join(moduledir, sources[0]))
27+
if os.path.exists(fn):
28+
sourcedirs = [moduledir]
29+
break
30+
else:
31+
print "Warning: %s: sourcefile not found: %s"%(module, sources[0])
32+
sourcedirs = []
33+
dict = {
34+
"sysprefix" : sys.prefix,
35+
"sources" : sources,
36+
"extrasearchdirs" : sourcedirs + extradirs,
37+
"libraries": libraries,
38+
}
39+
mkcwproject.mkproject(os.path.join(projectdir, project), module, dict)
40+
41+
genpluginproject("Cm", libraries=["QuickTimeLib"])
42+
genpluginproject("calldll", sources=["calldll.c"])
43+
genpluginproject("zlib", libraries=["zlib.ppc.Lib"], extradirs=["::::imglibs:zlib"])

0 commit comments

Comments
 (0)