~ubuntu-branches/ubuntu/raring/xmms2/raring

« back to all changes in this revision

Viewing changes to waflib/Tools/flex.py

  • Committer: Package Import Robot
  • Author(s): Reinhard Tartler
  • Date: 2012-11-25 19:23:15 UTC
  • mto: This revision was merged to the branch mainline in revision 51.
  • Revision ID: package-import@ubuntu.com-20121125192315-m9z6nu9wwlzrrz9z
ImportĀ upstreamĀ versionĀ 0.8+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#! /usr/bin/env python
 
2
# encoding: utf-8
 
3
# WARNING! Do not edit! http://waf.googlecode.com/svn/docs/wafbook/single.html#_obtaining_the_waf_file
 
4
 
 
5
import waflib.TaskGen
 
6
def decide_ext(self,node):
 
7
        if'cxx'in self.features:
 
8
                return['.lex.cc']
 
9
        return['.lex.c']
 
10
def flexfun(tsk):
 
11
        env=tsk.env
 
12
        bld=tsk.generator.bld
 
13
        wd=bld.variant_dir
 
14
        def to_list(xx):
 
15
                if isinstance(xx,str):return[xx]
 
16
                return xx
 
17
        tsk.last_cmd=lst=[]
 
18
        lst.extend(to_list(env['FLEX']))
 
19
        lst.extend(to_list(env['FLEXFLAGS']))
 
20
        lst.extend([a.path_from(bld.bldnode)for a in tsk.inputs])
 
21
        lst=[x for x in lst if x]
 
22
        txt=bld.cmd_and_log(lst,cwd=wd,env=env.env or None,quiet=0)
 
23
        tsk.outputs[0].write(txt)
 
24
waflib.TaskGen.declare_chain(name='flex',rule=flexfun,ext_in='.l',decider=decide_ext,)
 
25
def configure(conf):
 
26
        conf.find_program('flex',var='FLEX')
 
27
        conf.env.FLEXFLAGS=['-t']