B
    ›³ëbTœ  ã               @   sä  d Z ddlZddlZddlZddlZddlZddlZddlZ	ddl
Z	ddlZ	ddlZ	ddlZ	dZdaddddd	d
gZeddddddg Ze d¡Ze d¡ZdZe eej¡ZdZe eej¡ZdZe eej¡Ze dej¡Ze dej¡Ze dej¡Ze dej¡Ze dej¡Z e dej¡Z!e dej¡Z"e dej¡Z#e dej¡Z$e dej¡Z%e d ej¡Z&e d!ej¡Z'e d"ej¡Z(e d"ej¡Z)e d#ej¡Z*d$Z+e e+ej¡Z,e d%ej¡Z-g Z.e d&ej¡Z/e d'ej¡Z0e d(ej¡Z1e d)¡Z2e	j3j4j5Z5e	j3j4j6Z6da7da8da9da:da;da<da=da>dZ?e	j3j4j@Z@e	j3j4jAZAdKd+d,„ZBdLd-d.„ZCdMd/d0„ZDdNd1d2„ZEe d3¡ZFeGd4œd5d6„ZHdOd7d8„ZIdPd9d:„ZJd;d<„ ZKd=d>„ ZLd?d@„ ZMdAdB„ ZNdaOdCdD„ ZPdEdF„ ZQdGdH„ ZRdIdJ„ ZSdS )Qzç Tool-specific initialization for TeX.

Generates .dvi files from .tex files

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.
é    NFTz.tocz.lofz.lotz.outz.navz.snmz.bblz.idxz.nloz.gloz.acnz.bcfzOUTPUT *(.*\.aux)zOUTPUT *(.*\.bcf)z7(^LaTeX Warning:.*Rerun)|(^Package \w+ Warning:.*Rerun)z3^LaTeX Warning:.*\n.*Rerun to get citations correctzT(^LaTeX Warning:.*undefined references)|(^Package \w+ Warning:.*undefined citations)Ú.z^[^%\n]*\\tableofcontentsz^[^%\n]*\\makeindexz^[^%\n]*\\bibliographyz^[^%\n]*\\begin\{bibunit\}z^[^%\n]*\\newcites\{([^\}]*)\}z5^[^%\n]*\\(addbibresource|addglobalbib|addsectionbib)z^[^%\n]*\\listoffiguresz^[^%\n]*\\listoftablesz"^[^%\n]*\\usepackage.*\{hyperref\}z^[^%\n]*\\makenomenclaturez^[^%\n]*\\makeglossaryz^[^%\n]*\\makeglossariesz!^[^%\n]*\\documentclass\{beamer\}z]^[^%\n]*\\newglossary\s*\[([^\]]+)\]?\s*\{([^}]*)\}\s*\{([^}]*)\}\s*\{([^}]*)\}\s*\{([^}]*)\}z"^[^%\n]*\\usepackage.*\{biblatex\}z$^[^%\n]*\\(?:include|input){([^}]*)}z^[^%\n]*\\(?:include){([^}]*)}z5^[^%\n]*\\(?:includegraphics(?:\[[^\]]+\])?){([^}]*)}zOUTPUT *(.*)Úlogc             C   s   d| |f }t j |¡ d S )Nz(%s returned an error, check the %s file
)ÚsysÚstdoutÚwrite)ZutilityÚfilenameÚmsg© r	   ú-lib/python3.7/site-packages/SCons/Tool/tex.pyÚcheck_file_error_message˜   s    r   c             C   sþ   |r t j | ¡\} }|r | | } tr2td|  |ƒ x¶|D ]®}tj || ¡}trZtd| ƒ tj |¡r‚trvtd| ƒ |j	 
|¡S t j |¡d }|r˜q8xL|D ]D}	||	 }
trºtd|
 ƒ tj |
¡ržtrÖtd|
 ƒ |j	 
|
¡S qžW q8W trútd|  ƒ d S )Nz% searching for '%s' with extensions: z look for '%s'z found '%s'é   z did not find '%s')ÚSConsÚUtilÚsplitextÚVerboseÚprintÚosÚpathÚjoinÚisfileÚfsÚFile)ÚnameÚsuffixesÚpathsÚenvÚ
requireExtZextr   ZtestNameZname_extÚsuffixZtestNameExtr	   r	   r
   ÚFindFileœ   s8    

r   c       2   
      sr  | t krd}n|d }tj t|d ƒ¡d }tj t|d ƒ¡d }tj t|ƒ¡d }tj |¡}tj t|d ƒ¡d }	tj t|d ƒ¡d }
i }x$tj	j
j
jD ]}t|||ƒ||< q¨W tj |
|¡‰|d  ¡ }t |¡oôtj ˆd ¡ }t |¡otj ˆd ¡ }t |¡o0tj ˆd ¡ }t |¡oNtj ˆd ¡ }t |¡oltj ˆd ¡ }i ‰ i }x<tttg ƒ D ]*}|j ˆ| ¡}|||< | ¡ ˆ |< q†W trÄtd	ˆ ƒ d
ag }‡ ‡fdd„}ˆ| }d}x¾tr¦|t|  d¡ƒk r¦| |||ƒ}|dkr|S |d }daˆd }d}tj |¡rjt!|dƒ}| "¡ j#dd}W dQ R X ˆd }d}g } tj |¡rØt!|dƒ}| "¡ }W dQ R X t$ %|¡} i }!x| D ]}"d|!|"< qºW t&|! '¡ ƒ} g }#tj |¡r:t!|dƒ}| "¡ }W dQ R X t( %|¡}#i }!x|#D ]}"d|!|"< qW t&|! '¡ ƒ}#trTtd| ƒ td|#ƒ x¼| D ]´}$|$|krZ| )|$¡ tj |
|$¡}%tj |%¡rZt!|%dƒ}| "¡ }&W dQ R X |& *d¡dkrZtrÌtd|$ƒ |j tj |%¡d ¡}'t+|'|'|ƒ}|dkrt,|d dƒ d
aqZW x¼|#D ]´}(|(|kr| )|(¡ tj |
|(¡})tj |)¡rt!|)dƒ}| "¡ }&W dQ R X |& *d¡dkrtrŠtd|(ƒ |j tj |)¡d ¡}'t-|'|'|ƒ}|dkrÆt,|d dƒ d
aqW ||d dƒsð|dkr.|r.trþtd ƒ |d }*t.|*|*|ƒ}|dkr.t,|d! d"ƒ |S xt/D ]}+|||+ |+ƒ q4W ||d dƒsl|dkrª|rªtrztd#ƒ |d },t0|,|,|ƒ}|dkrªt,d$|d%  d&ƒ ||d dƒsÚ|dkrÊ|sÚ|dkr|rtrètd'ƒ |d }-t1|-|-|ƒ}|dkrt,d(|d)  d*ƒ ||d dƒs8|dkrz|rztrFtd+ƒ |d }.t2|.|.|ƒ}|dkrzt,d,|d-  d.ƒ |S xžtD ]–}/|||/d/  |/d/ ƒs¦|dkr€tr´td0ƒ ||/d/  }0tj3 3d1|/d/ |/d |/d f d2¡}1|1|0|0|ƒ}|dkr€t,d3|d4  |/d ƒ |S q€W t4 |¡r8d
atr8td5ƒ t5 |¡rVd
atrVtd6ƒ t6 |¡rtd
atrttd7ƒ |t|  d¡ƒkrêtrêtd8t|  d¡ƒƒ qêW t|d ƒ|krÈtj |¡stj |¡rtd9|t|d ƒf ƒ t7 8|t|d ƒ¡ xjtj	j
j
jD ]Z}|d:kr"q|| t9krXy|d; |= W n t:k
rT   Y nX n|| |d; |< qW |S )<z…A builder for LaTeX files that checks the output in the aux file
    and decides how many times to use LaTeXAction, and BibTeXAction.z.dviZ	PDFSUFFIXr   r   z.idxz.nloz.gloz.acnzhashes: Tc                sd   |   ¡  |  ¡ | _|  ¡ }ˆ | |kr>tr:tdˆ|  ƒ dS |ˆ |< datr`tdˆ|  |ƒ dS )Nzfile %s not changedFTz-file %s changed, rerunning Latex, new hash = )Zclear_memoized_valuesZ	new_ninfoZninfoÚget_csigr   r   Úmust_rerun_latex)Zfilenoder   Znew_md5)Úsaved_hashesÚ
targetbaser	   r
   Ú	check_MD5  s    
z)InternalLaTeXAuxAction.<locals>.check_MD5z$LATEXRETRIESFz.logÚ ÚrbÚreplace)ÚerrorsNz.flsÚrz	auxfiles z	bcffiles ZbibdataéÿÿÿÿzNeed to run bibtex on ÚBIBTEXZblgzNeed to run biber on ÚBIBERzNeed to run makeindexÚ	MAKEINDEXZilgz&Need to run makeindex for nomenclaturez%s (nomenclature)ÚMAKENCLZnlgz"Need to run makeindex for glossaryz%s (glossary)ÚMAKEGLOSSARYZglgz"Need to run makeindex for acronymsz%s (acronyms)ÚMAKEACRONYMSZalgé   z%Need to run makeindex for newglossaryzr$MAKENEWGLOSSARYCOM ${SOURCE.filebase}%s -s ${SOURCE.filebase}.ist -t ${SOURCE.filebase}%s -o ${SOURCE.filebase}%sz$MAKENEWGLOSSARYCOMSTRz%s (newglossary)ÚMAKENEWGLOSSARYz1rerun Latex due to latex or package rerun warningz;rerun Latex due to 'Rerun to get citations correct' warningz4rerun Latex due to undefined references or citationsz(reached max number of retries on Latex ,zmove %s to %sZTEXPICTSÚENV);ÚLaTeXActionr   r   r   Ústrr   r   ÚsplitÚabspathÚScannerÚLaTeXZenv_variablesÚmodify_env_varr   Úget_text_contentsÚmakeindex_reÚsearchr   Úmakenomenclature_reÚmakeglossary_reÚmakeglossaries_reÚmakeacronyms_reÚall_suffixesÚsumÚnewglossary_suffixr   r   r   r   r   r    ÚintÚsubstÚopenÚreadÚdecodeÚopenout_aux_reÚfindallÚlistÚkeysÚopenout_bcf_reÚappendÚfindÚBibTeXActionr   ÚBiberActionÚMakeIndexActionÚcheck_suffixesÚMakeNclActionÚMakeGlossaryActionÚMakeAcronymsActionÚActionÚwarning_rerun_reÚrerun_citations_reÚundefined_references_reÚshutilZmoveÚ_nullÚKeyError)2ZXXXLaTeXActionÚtargetÚsourcer   ZcallerSuffixÚbasenameÚbasedirÚbasefiler6   Z	targetextÚ	targetdirZ	saved_envÚvarZsrc_contentZrun_makeindexZrun_nomenclatureZrun_glossaryZrun_glossariesZrun_acronymsZsuffix_nodesr   ZtheNodeZalready_bibtexedr#   ZresultfilenameÚcountÚresultÚlogfilenameZ
logContentÚfÚflsfilenameZ
flsContentZauxfilesZdupsÚxZbcffilesÚauxfilenameZ
target_auxÚcontentZbibfileZbcffilenameZ
target_bcfZidxfileÚindexZnclfileZglofileZacrfileZngZ	newglfileÚMakeNewGlossaryActionr	   )r!   r"   r
   ÚInternalLaTeXAuxActionÀ   sZ   
	




















 

 
0
 

"

 

ro   c             C   s   t t| ||ƒ}|S )N)ro   r3   )r^   r_   r   rf   r	   r	   r
   ÚLaTeXAuxActionï  s    rp   z\\document(style|class))Úreturnc          	   C   s†  t |d|ƒ}|d d }tj |¡r&n| tj¡}|tkr`y|d d= W ql tk
r\   Y qlX n||d d< t	r„t
d|ƒ t
d| ƒ d}xø| D ]ð}t	r¤t
d|› ƒ | ¡ }t |¡rÎt	rÊt
d|› dƒ d	S t	rât
d|› d
ƒ g }| t |¡¡ t	rt
d|› d|ƒ x\|D ]T}	t|	dddg||dd}
|
g}t	rFt
d|
ƒ |
dk	r\t|||ƒ}|rd	S qW t	rŽt
d|› ƒ qŽW dS )z:Scan a file list to decide if it's TeX- or LaTeX-flavored.Ú	TEXINPUTSr2   zis_LaTeX search path zfiles to search: Fz checking for Latex source zfile z is a LaTeX fileTz is not a LaTeX filezfiles included by 'z': z.texz.ltxz.latex)r   zFindFile found Nz done scanning )r9   r   r   Úis_Listr5   r   Úpathsepr\   r]   r   r   r:   ÚLaTeX_rer<   ÚextendÚ
include_rerJ   r   Úis_LaTeX)Zflistr   r6   Ú	savedpathr   Z	file_testrh   rl   Ú	inc_filesÚsrcÚsrcNodeZfileListr	   r	   r
   rx   ÷  sT    







rx   c             C   sv   t j t|d ƒ¡d }t j |¡}t|||ƒrRt| ||ƒ}|dkrrt|d ƒ n t| ||ƒ}|dkrrt|d ƒ |S )zŽA builder for TeX and LaTeX that scans the source file to
    decide the "flavor" of the source and then executes the appropriate
    program.r   ÚLATEXÚTEX)	r   r   r5   r4   r6   rx   rp   r   Ú	TeXAction)r^   r_   r   ra   r6   rf   r	   r	   r
   ÚTeXLaTeXFunction>  s    r€   c             C   sn   |  d¡rftj t|d ƒ¡d }tj |¡}t|||ƒrP| dd| |¡d }qj| dd| |¡d }nd}|S )z˜A strfunction for TeX and LaTeX that scans the source file to
    decide the "flavor" of the source and then returns the appropriate
    command string.Zno_execr   z	$LATEXCOMz ...z$TEXCOMr$   )Z	GetOptionr   r   r5   r4   r6   rx   rE   )r^   r_   r   ra   r6   rf   r	   r	   r
   ÚTeXLaTeXStrFunctionQ  s    
r   c             C   s   t | ||tƒ\} }| |fS )zyAn emitter for TeX and LaTeX sources when
    executing tex or latex. It will accept .ps and .eps
    graphics files
    )Útex_emitter_coreÚTexGraphics)r^   r_   r   r	   r	   r
   Útex_eps_emitterc  s    r„   c             C   s   t | ||tƒ\} }| |fS )zœAn emitter for TeX and LaTeX sources when
    executing pdftex or pdflatex. It will accept graphics
    files of types .pdf, .jpg, .png, .gif, and .tif
    )r‚   ÚLatexGraphics)r^   r_   r   r	   r	   r
   Útex_pdf_emitterl  s    r†   c	             C   sR  |   ¡ }	trtdt| ƒƒ xltt|ƒƒD ]Z}
||
 d dkr*tr`td|
d||
 ||
 d ƒ ||
  |	¡||
 d< trœ||
 d rœtd||
 d d ƒ ||
 d r*||
 d d d	kr*||
  |	¡}x¬tt|ƒƒD ]œ}||
 d  dd
|| d  ¡ ||
 d  dd
|| d  ¡ ||
 d  dd
|| d  ¡ d
|| d  d
|| d  d
|| d  g}t	 
|¡ qØW tr*tdt	ƒ q*W t |	¡}|r´| 
tj || d¡¡¡ trÄtd|ƒ g }| t |	¡¡ trðtdt| ƒ |ƒ xH|D ]@}t|dddg||dd}|dk	röt|||||||||ƒ	}qöW trNtdt| ƒƒ |S )zš For theFile (a Node) update any file_tests and search for graphics files
    then find all included files and call ScanFiles recursively for each of themz
 scanning r   Nzscan i z files_tests[i] r   z   found match for r)   Únewglossaryr   é   r0   z new suffixes for newglossary z\include file names : zfiles included by '%s': z.texz.ltxz.latexF)r   z done scanning )r:   r   r   r4   ÚrangeÚlenr<   rJ   ÚinsertrC   rN   ÚincludeOnly_rer   r   r   Úgrouprv   rw   r   Ú	ScanFiles)ZtheFiler^   r   Ú
file_testsÚfile_tests_searchr   Úgraphics_extensionsrc   Ú	aux_filesrl   ÚiZ
findresultÚlÚsuffix_listZ	incResultrz   r{   r|   r	   r	   r
   rŽ   u  sH        .



rŽ   c       '      C   s†  t j t|d ƒ¡d }tj t|ƒ¡d }tj t| d ƒ¡d }tj ||¡}tj t|d ƒ¡d }tj |¡}	|	| d j	_ddddddd	d
dg	t
 }
|d }|d }|d }|d }| || d ¡ | || d ¡ | || d ¡ | || d ¡ trtd||||ƒ | | d |¡ | | d |¡ | | d |¡ | | d |¡ |d  ¡ }ttttttttttttttttt g}ddgddddgdddgdddgdddgddddgddgddgddgdd gd!ddd"gd#d	d
d$gd#d	d
d%gd&d'dd(gd)d*ddd+gd,gddd-gg}g }x(t!t"|ƒƒD ]}| #d.|| g¡ q$W t$|d/|	ƒ}|d0 d/ }t j %|¡rhn| tj&¡}|t'kr¦y|d0 d/= W n t(k
r¢   Y nX n||d0 d/< trÂtd1|ƒ g }t)|d | |||||||ƒ	}x”|D ]Š\}}tr|rtd2|d3 ƒ |d.k	s&|d  *¡ sê|g}|d3 dkr|tj |d4¡}t+ +|¡}x(| ,¡ D ]}| #t j |¡d ¡ q\W |d3 dkrxxt -|¡D ]j}tr°td5| .d¡ƒ |d.k	r–| .d¡ d6¡}trÚtd7|ƒ x"|D ]}| #tj ||¡¡ qàW q–W xn|D ]f}x^|d.d3… D ]N} | ||  | d ¡ trTtd8||  d9t| d ƒƒ | | d ||  ¡ qW q
W qêW xZ|D ]R}!t j |!¡d }"| |"d | d ¡ tr¼td:|"d ƒ | | d |"d ¡ q€W tj /|¡r~t0|d;ƒ}#|# 1¡ }W d.Q R X t2 3|¡}$||||d< |d= g}%x*|$d.d.… D ]}&|&|%kr0|$ 4|&¡ q0W | |$| d ¡ trntd>|$ƒ | | d |$¡ | |fS )?a   An emitter for TeX and LaTeX sources.
    For LaTeX sources we try and find the common created files that
    are needed on subsequent runs of latex to finish tables of contents,
    bibliographies, indices, lists of figures, and hyperlink references.
    r   r   z.auxz.logz.ilgz.blgz.nlsz.nlgz.glsz.glgz.algz.flsz.synctex.gzzside effect :Zaux_filez.idxz.indÚ	makeindexz.bblZbibliographyZbibunitZmultibibz.bcfZaddbibresourcez.tocÚcontentsz.lofZfiguresz.lotZtablesz.outZhyperrefz.nloZnomenclaturez.gloZglossaryZ
glossariesz.acnz.acrZacronymsz.navz.snmZbeamerr‡   ZbiblatexNrr   r2   zsearch path zcheck side effects for r)   zbu*.auxzmultibib match ú,zmultibib list zside effect tst :z target is zside effect aux :r(   z.dviz.pdfzside effect fls :)5r   r   r   r4   r   r   r5   r   r6   Z
attributesrA   Z
SideEffectr   r   ZCleanr:   Ú
auxfile_rer;   Úbibliography_reÚ
bibunit_reÚmultibib_reÚaddbibresource_reÚtableofcontents_reÚlistoffigures_reÚlistoftables_reÚhyperref_rer=   r>   r?   r@   Ú	beamer_reÚnewglossary_reÚbiblatex_rer‰   rŠ   rN   r9   rs   rt   r\   r]   rŽ   ÚexistsÚglobÚcopyÚfinditerr   r   rF   rG   Ú
openout_rerJ   Úremove)'r^   r_   r   r‘   r`   rb   rc   r"   ra   r6   Zemit_suffixesrk   rg   ri   Zsyncfilenamerl   r   Zfile_tests_suffr   r“   ry   r   r’   Z	theSearchr•   Z	file_listZfile_basenameZflZmultibibmatchZbaselistZblÚ	file_namer   ZaFileZ
aFile_baserh   Z	out_filesZmyfilesr   r	   r	   r
   r‚   ¦  sð    











 
&



r‚   c             C   sn   t dkrtjjttda | jtjjd t| ƒ ddl	m
} | | ¡ | d d }| dt ¡ | dt¡ dS )	zBAdd Builders and construction variables for TeX to an Environment.N)Zstrfunction)ZLATEXSUFFIXESr   )ÚdviZBUILDERSZDVIz.tex)ÚTeXLaTeXActionr   rW   r€   r   ZAppendUniqueZToolZLaTeXSuffixesÚgenerate_commonr$   r¬   ÚgenerateZ
add_actionZadd_emitterr„   )r   r¬   Zbldr	   r	   r
   r¯   L  s    
r¯   c             C   sx   y| d }W n  t k
r,   i }|| d< Y nX t ¡ dkrty| d d }W n t k
rb   d }Y nX |rt|  d|¡ d S )Nr2   ZDarwinZPATHOSXÚPATH)r]   ÚplatformÚsystemZAppendENVPath)r   ÚenvironZospathr	   r	   r
   Úgenerate_darwin_  s    
r´   c             C   s¬  t | ƒ tdkrtj dd¡atdkr4tj dd¡atdkrJtj dd¡atdkr`tj dd	¡atdkrvtj d
d¡atdkrŒtj dd¡at	dkr¢tj dd¡a	t
dkr¸tj dd¡a
y| d }W n  tk
rä   i }|| d< Y nX tj d¡}|rþ||d< d}t ¡ dkrd}d| d< tj d¡| d< |d | d< d| d< tj d¡| d< |d  | d!< d"| d#< tj d¡| d$< |d% | d&< d'| d(< d)| d*< tj d¡| d+< |d, | d-< d.| d/< tj d0¡| d1< |d2 | d3< d4| d5< tj d0¡| d6< |d7 | d8< d9| d:< tj d0¡| d;< |d< | d=< d9| d>< d?| d@< tj dA¡| dB< |dC | dD< d9| dE< d?| dF< tj dG¡| dH< |dI | dJ< d9| dK< dL| dM< dN| dO< |dP | dQ< d9| dR< |dS | dT< dS )UzMAdd internal Builders and construction variables for LaTeX to an Environment.Nz$TEXCOMz
$TEXCOMSTRz	$LATEXCOMz$LATEXCOMSTRz
$BIBTEXCOMz$BIBTEXCOMSTRz	$BIBERCOMz$BIBERCOMSTRz$MAKEINDEXCOMz$MAKEINDEXCOMSTRz$MAKENCLCOMz$MAKENCLCOMSTRz$MAKEGLOSSARYCOMz$MAKEGLOSSARYCOMSTRz$MAKEACRONYMSCOMz$MAKEACRONYMSCOMSTRr2   ÚHOMEzcd ZWindowszcd /D Útexr~   z"-interaction=nonstopmode -recorderZTEXFLAGSz.${TARGET.dir} && $TEX $TEXFLAGS ${SOURCE.file}ZTEXCOMZpdftexZPDFTEXZPDFTEXFLAGSz4${TARGET.dir} && $PDFTEX $PDFTEXFLAGS ${SOURCE.file}Z	PDFTEXCOMZlatexr}   Z
LATEXFLAGSz2${TARGET.dir} && $LATEX $LATEXFLAGS ${SOURCE.file}ZLATEXCOMé   ZLATEXRETRIESZpdflatexZPDFLATEXZPDFLATEXFLAGSz8${TARGET.dir} && $PDFLATEX $PDFLATEXFLAGS ${SOURCE.file}ZPDFLATEXCOMZbibtexr*   r$   ZBIBTEXFLAGSz8${TARGET.dir} && $BIBTEX $BIBTEXFLAGS ${SOURCE.filebase}Z	BIBTEXCOMZbiberr+   Z
BIBERFLAGSz6${TARGET.dir} && $BIBER $BIBERFLAGS ${SOURCE.filebase}ZBIBERCOMr–   r,   ZMAKEINDEXFLAGSz:${TARGET.dir} && $MAKEINDEX $MAKEINDEXFLAGS ${SOURCE.file}ZMAKEINDEXCOMr.   z${SOURCE.filebase}.istZMAKEGLOSSARYSTYLEz1-s ${MAKEGLOSSARYSTYLE} -t ${SOURCE.filebase}.glgZMAKEGLOSSARYFLAGSzb${TARGET.dir} && $MAKEGLOSSARY ${SOURCE.filebase}.glo $MAKEGLOSSARYFLAGS -o ${SOURCE.filebase}.glsZMAKEGLOSSARYCOMr/   ZMAKEACRONYMSSTYLEz1-s ${MAKEACRONYMSSTYLE} -t ${SOURCE.filebase}.algZMAKEACRONYMSFLAGSzb${TARGET.dir} && $MAKEACRONYMS ${SOURCE.filebase}.acn $MAKEACRONYMSFLAGS -o ${SOURCE.filebase}.acrZMAKEACRONYMSCOMr-   znomencl.istZMAKENCLSTYLEz,-s ${MAKENCLSTYLE} -t ${SOURCE.filebase}.nlgZMAKENCLFLAGSzX${TARGET.dir} && $MAKENCL ${SOURCE.filebase}.nlo $MAKENCLFLAGS -o ${SOURCE.filebase}.nlsZ
MAKENCLCOMr1   z"${TARGET.dir} && $MAKENEWGLOSSARY ZMAKENEWGLOSSARYCOM)r´   r   r   rW   r3   rP   rQ   rR   rT   rU   rV   r]   r   r³   Úgetr±   r²   r   ZCLVar)r   r³   ÚvZCDCOMr	   r	   r
   r®   n  s€    r®   c             C   s   t | ƒ |  d¡S )Nr¶   )r´   ZDetect)r   r	   r	   r
   r¥   ß  s    r¥   )r   )F)NNN)NNN)NNN)NNN)TÚ__doc__Úos.pathr   Úrer[   r   r±   r¦   ZSCons.Actionr   Z
SCons.NodeZSCons.Node.FSZ
SCons.UtilZSCons.Scanner.LaTeXr   r    rS   rA   ÚcompilerI   rM   Zwarning_rerun_strÚ	MULTILINErX   Zrerun_citations_strrY   Zundefined_references_strrZ   r™   rž   r;   rš   r›   rœ   r   rŸ   r    r¡   r=   r>   r?   r@   r¢   Zregexr£   r¤   rC   rw   rŒ   Zincludegraphics_rer©   r7   r8   rƒ   r…   r   r3   rP   rQ   rR   rT   rU   rV   rn   r\   r9   r   r   ro   rp   ru   Úboolrx   r€   r   r„   r†   rŽ   r‚   r­   r¯   r´   r®   r¥   r	   r	   r	   r
   Ú<module>   sž   








$
  1

G

		1 %q