def _detect(env):
"""Not really safe, but fast method to detect the QT library"""
- try: return env['QTDIR']
+ try: env['QTDIR']
except KeyError: pass
+ else: return env.Dir(env.subst('$QTDIR')).abspath
try: return os.environ['QTDIR']
except KeyError: pass
if not f.name.startswith("qrc_") and not f.name.startswith("moc_") ]
return sources + resources
-def scanResourceDirectory(directory, prefix="", exclude=[]):
+def scanResourceDirectory(directory, root, prefix="", exclude=[]):
rv = [
'<!DOCTYPE RCC>',
# '<?xml version="1.0" encoding="utf-8"?>',
rv.append('<qresource prefix="%s">' % os.path.join(prefix, base[len(str(directory)):]))
for f in files:
if not [True for pattern in exclude if fnmatch.fnmatch(f,pattern)]:
- rv.append('<file alias="%s">%s</file>' % (f, os.path.join(base, f)))
+ rv.append('<file alias="%s">%s</file>'
+ % (f, directory.fs.File(os.path.join(base, f)).get_path(root)))
rv.append("'</qresource>'")
rv.append('</RCC>\n')
return '\n'.join(rv)
def resourceDirectory(env, target, source):
file(str(target[0]), 'w').write(scanResourceDirectory(
- source[0], prefix=env.get('RESOURCE_PREFIX', ''), exclude=env.get('EXCLUDE', [])))
+ source[0], root=target[0].dir,
+ prefix=env.get('RESOURCE_PREFIX', ''), exclude=env.get('EXCLUDE', [])))
def exists(env):
return _detect(env)