mirror of
https://github.com/cookiengineer/audacity
synced 2025-12-16 17:41:14 +01:00
Update local LV2 libraries to latest versions
lilv-0.24.6 lv2-1.16.0 serd-0.30.2 sord-0.16.4 sratom-0.6.4 suil-0.10.6
This commit is contained in:
@@ -1,85 +1,78 @@
|
||||
#! /usr/bin/env python
|
||||
#!/usr/bin/env python
|
||||
# encoding: utf-8
|
||||
# WARNING! Do not edit! http://waf.googlecode.com/git/docs/wafbook/single.html#_obtaining_the_waf_file
|
||||
# Brant Young, 2007
|
||||
|
||||
import re,traceback
|
||||
from waflib import Task,Logs,Utils
|
||||
"Process *.rc* files for C/C++: X{.rc -> [.res|.rc.o]}"
|
||||
|
||||
import re
|
||||
from waflib import Task
|
||||
from waflib.TaskGen import extension
|
||||
from waflib.Tools import c_preproc
|
||||
|
||||
@extension('.rc')
|
||||
def rc_file(self,node):
|
||||
obj_ext='.rc.o'
|
||||
if self.env['WINRC_TGT_F']=='/fo':
|
||||
obj_ext='.res'
|
||||
rctask=self.create_task('winrc',node,node.change_ext(obj_ext))
|
||||
def rc_file(self, node):
|
||||
"""
|
||||
Binds the .rc extension to a winrc task
|
||||
"""
|
||||
obj_ext = '.rc.o'
|
||||
if self.env.WINRC_TGT_F == '/fo':
|
||||
obj_ext = '.res'
|
||||
rctask = self.create_task('winrc', node, node.change_ext(obj_ext))
|
||||
try:
|
||||
self.compiled_tasks.append(rctask)
|
||||
except AttributeError:
|
||||
self.compiled_tasks=[rctask]
|
||||
re_lines=re.compile('(?:^[ \t]*(#|%:)[ \t]*(ifdef|ifndef|if|else|elif|endif|include|import|define|undef|pragma)[ \t]*(.*?)\s*$)|''(?:^\w+[ \t]*(ICON|BITMAP|CURSOR|HTML|FONT|MESSAGETABLE|TYPELIB|REGISTRY|D3DFX)[ \t]*(.*?)\s*$)',re.IGNORECASE|re.MULTILINE)
|
||||
self.compiled_tasks = [rctask]
|
||||
|
||||
re_lines = re.compile(
|
||||
r'(?:^[ \t]*(#|%:)[ \t]*(ifdef|ifndef|if|else|elif|endif|include|import|define|undef|pragma)[ \t]*(.*?)\s*$)|'\
|
||||
r'(?:^\w+[ \t]*(ICON|BITMAP|CURSOR|HTML|FONT|MESSAGETABLE|TYPELIB|REGISTRY|D3DFX)[ \t]*(.*?)\s*$)',
|
||||
re.IGNORECASE | re.MULTILINE)
|
||||
|
||||
class rc_parser(c_preproc.c_parser):
|
||||
def filter_comments(self,filepath):
|
||||
code=Utils.readf(filepath)
|
||||
"""
|
||||
Calculates dependencies in .rc files
|
||||
"""
|
||||
def filter_comments(self, node):
|
||||
"""
|
||||
Overrides :py:meth:`waflib.Tools.c_preproc.c_parser.filter_comments`
|
||||
"""
|
||||
code = node.read()
|
||||
if c_preproc.use_trigraphs:
|
||||
for(a,b)in c_preproc.trig_def:code=code.split(a).join(b)
|
||||
code=c_preproc.re_nl.sub('',code)
|
||||
code=c_preproc.re_cpp.sub(c_preproc.repl,code)
|
||||
ret=[]
|
||||
for m in re.finditer(re_lines,code):
|
||||
for (a, b) in c_preproc.trig_def:
|
||||
code = code.split(a).join(b)
|
||||
code = c_preproc.re_nl.sub('', code)
|
||||
code = c_preproc.re_cpp.sub(c_preproc.repl, code)
|
||||
ret = []
|
||||
for m in re.finditer(re_lines, code):
|
||||
if m.group(2):
|
||||
ret.append((m.group(2),m.group(3)))
|
||||
ret.append((m.group(2), m.group(3)))
|
||||
else:
|
||||
ret.append(('include',m.group(5)))
|
||||
ret.append(('include', m.group(5)))
|
||||
return ret
|
||||
def addlines(self,node):
|
||||
self.currentnode_stack.append(node.parent)
|
||||
filepath=node.abspath()
|
||||
self.count_files+=1
|
||||
if self.count_files>c_preproc.recursion_limit:
|
||||
raise c_preproc.PreprocError("recursion limit exceeded")
|
||||
pc=self.parse_cache
|
||||
Logs.debug('preproc: reading file %r',filepath)
|
||||
try:
|
||||
lns=pc[filepath]
|
||||
except KeyError:
|
||||
pass
|
||||
else:
|
||||
self.lines.extend(lns)
|
||||
return
|
||||
try:
|
||||
lines=self.filter_comments(filepath)
|
||||
lines.append((c_preproc.POPFILE,''))
|
||||
lines.reverse()
|
||||
pc[filepath]=lines
|
||||
self.lines.extend(lines)
|
||||
except IOError:
|
||||
raise c_preproc.PreprocError("could not read the file %s"%filepath)
|
||||
except Exception:
|
||||
if Logs.verbose>0:
|
||||
Logs.error("parsing %s failed"%filepath)
|
||||
traceback.print_exc()
|
||||
|
||||
class winrc(Task.Task):
|
||||
run_str='${WINRC} ${WINRCFLAGS} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${WINRC_TGT_F} ${TGT} ${WINRC_SRC_F} ${SRC}'
|
||||
color='BLUE'
|
||||
"""
|
||||
Compiles resource files
|
||||
"""
|
||||
run_str = '${WINRC} ${WINRCFLAGS} ${CPPPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${WINRC_TGT_F} ${TGT} ${WINRC_SRC_F} ${SRC}'
|
||||
color = 'BLUE'
|
||||
def scan(self):
|
||||
tmp=rc_parser(self.generator.includes_nodes)
|
||||
tmp.start(self.inputs[0],self.env)
|
||||
nodes=tmp.nodes
|
||||
names=tmp.names
|
||||
if Logs.verbose:
|
||||
Logs.debug('deps: deps for %s: %r; unresolved %r'%(str(self),nodes,names))
|
||||
return(nodes,names)
|
||||
tmp = rc_parser(self.generator.includes_nodes)
|
||||
tmp.start(self.inputs[0], self.env)
|
||||
return (tmp.nodes, tmp.names)
|
||||
|
||||
def configure(conf):
|
||||
v=conf.env
|
||||
v['WINRC_TGT_F']='-o'
|
||||
v['WINRC_SRC_F']='-i'
|
||||
if not conf.env.WINRC:
|
||||
if v.CC_NAME=='msvc':
|
||||
conf.find_program('RC',var='WINRC',path_list=v['PATH'])
|
||||
v['WINRC_TGT_F']='/fo'
|
||||
v['WINRC_SRC_F']=''
|
||||
"""
|
||||
Detects the programs RC or windres, depending on the C/C++ compiler in use
|
||||
"""
|
||||
v = conf.env
|
||||
if not v.WINRC:
|
||||
if v.CC_NAME == 'msvc':
|
||||
conf.find_program('RC', var='WINRC', path_list=v.PATH)
|
||||
v.WINRC_TGT_F = '/fo'
|
||||
v.WINRC_SRC_F = ''
|
||||
else:
|
||||
conf.find_program('windres',var='WINRC',path_list=v['PATH'])
|
||||
if not conf.env.WINRC:
|
||||
conf.fatal('winrc was not found!')
|
||||
v['WINRCFLAGS']=[]
|
||||
conf.find_program('windres', var='WINRC', path_list=v.PATH)
|
||||
v.WINRC_TGT_F = '-o'
|
||||
v.WINRC_SRC_F = '-i'
|
||||
|
||||
|
||||
Reference in New Issue
Block a user