³ò ”,9Mc @sßdZdZddkZddkZddkZddkZddkZddk Zddk Zddk Zddk Zei i ddƒZd„ZeidƒZd„Zd „Zd „Zd „Zd „Zd „ZdS(sÓSCons.Tool.swig Tool-specific initialization for swig. There normally shouldn't be any need to import this module directly. It will usually be imported through the generic SCons.Tool.Tool() selection method. s<src/engine/SCons/Tool/swig.py 4629 2010/01/17 22:23:21 sconsiÿÿÿÿNs$SWIGCOMs $SWIGCOMSTRcCs8dtii|idd|ƒƒjodSndSdS(Ns-c++s $SWIGFLAGStsources$SWIGCXXFILESUFFIXs$SWIGCFILESUFFIX(tSConstUtiltCLVartsubst(tenvR((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pytswigSuffixEmitter1s(s %module(\s*\(.*\))?\s+("?)(.+)\2cCs³d}g}ytit|ƒiƒƒ}Wn6tj o*g}|itii|ƒdƒnXxB|D]:}|i|dƒ|pt i |ddƒdj}qkW||fS(sìFind all modules referenced by %module lines in `src`, a SWIG .i file. Returns a list of all modules, and a flag set if SWIG directors have been requested (SWIG will generate an additional header file in this case.)iit directors( t _reModuletfindalltopentreadtIOErrortappendtostpathtsplitexttstringtfind(tsrcRtmnamestmatchestm((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyt _find_modules;s"'c Cs€|i|dƒ}xf|D]]}|i}|i}|t|ƒ |jo-|i|i|t|ƒ |dƒƒqqWdS(NtSWIGCXXFILESUFFIXtSWIGDIRECTORSUFFIX(RtnametdirtlenR tFile(ttargetRtsuffixtxtntd((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyt_add_director_header_targetsNs  c Cs/|idd|d|ƒ}tii|ƒ}xõ|D]í}t|iƒƒ}d}d|joÅd|jo¸|djot|ƒ\}}n|ot||ƒnt d„|ƒ}|idd|d|ƒ} | ot | |d„|ƒ}nt |d i d „|ƒ}|i |ƒnd |joð|djot|ƒ\}}n|ot||ƒnt d „|ƒ} tii | ƒ} |idd|d|ƒ} | ot | d „| ƒ} nt |i i| ƒ} x-| D]%} d„} tii| | dƒqçW|i | ƒq4q4W||fS(Ns $SWIGFLAGSRRs-pythons-noproxycSs|dS(s.py((R((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pytdss $SWIGOUTDIRcSs|iitii||ƒƒS((tfsRRRtjoin(tjtote((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyR$isicSs |i|ƒS((R(RR"((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyR$mss-javacSs|d|dgS(s.javasJNI.java((R((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyR$uscSstii||ƒS((RRR&(R'R(((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyR$yscSs|iS((R(tttptsR ((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyR$|sttarget_from_source(RRRRtstrtrfiletNoneRR#tmapRtextendtflattenR%Rt AddMethod( RRRt swigflagstflagsRRRt python_filestoutdirt java_filestjftt_from_s((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyt _swigEmitterYsH      c Cs’tii||ddgdddddtiƒ}|iƒdjodSn|iiƒ}ti d |ti ƒ}|o|i d ƒSndS( sCRun the SWIG command line tool to get and return the version numbertSWIGs-versiontstdintdevnulltstderrtstdoutiNsSWIG Version\s+(\S+)$i( RtActiont_subproct subprocesstPIPEtwaitRAR tretsearcht MULTILINEtgroup(Rtpipetouttmatch((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pyt_get_swig_versions cCsptii|ƒ\}}t|id\s"]+)(?:>|"?)tSWIGScantSCANNERSN(RtTooltcreateCFileBuildersRRt add_actiont SwigActiont add_emitterR<tCreateJavaFileBuilderRNRRtScannert ClassicCPPtAppend(Rtc_filetcxx_filet java_filetexprtscanner((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pytgenerateŽs4             cCs|idgƒS(NRO(tDetect(R((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pytexists³s(t__doc__t __revision__tos.pathRRGRRDt SCons.ActionRtSCons.Defaultst SCons.Scannert SCons.Toolt SCons.UtilRBR_RtcompileRRR#R<RNRjRl(((s4install/lib/scons-1.2.0.d20100117/SCons/Tool/swig.pys s&            ( %