diff options
| author | Steven Knight <knight@baldmt.com> | 2004-12-03 04:09:35 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2004-12-03 04:09:35 (GMT) |
| commit | abcf29987d2baa25d51716f888015aaa9d104d36 (patch) | |
| tree | 55b5ddbfe2baca260bb10c209041d2235d1f9565 /src/engine | |
| parent | 2fa621343311180c159ee09262cefe0ee0ad2d83 (diff) | |
| download | SCons-abcf29987d2baa25d51716f888015aaa9d104d36.zip SCons-abcf29987d2baa25d51716f888015aaa9d104d36.tar.gz SCons-abcf29987d2baa25d51716f888015aaa9d104d36.tar.bz2 | |
More command-line customizability: , , , , .
Diffstat (limited to 'src/engine')
| -rw-r--r-- | src/engine/SCons/Tool/latex.py | 2 | ||||
| -rw-r--r-- | src/engine/SCons/Tool/pdflatex.py | 2 | ||||
| -rw-r--r-- | src/engine/SCons/Tool/pdftex.py | 5 | ||||
| -rw-r--r-- | src/engine/SCons/Tool/tex.py | 29 |
4 files changed, 24 insertions, 14 deletions
diff --git a/src/engine/SCons/Tool/latex.py b/src/engine/SCons/Tool/latex.py index 7bbec6f..f182b35 100644 --- a/src/engine/SCons/Tool/latex.py +++ b/src/engine/SCons/Tool/latex.py @@ -37,7 +37,7 @@ import SCons.Action import SCons.Defaults import SCons.Util -LaTeXAction = SCons.Action.Action('$LATEXCOM') +LaTeXAction = SCons.Action.Action('$LATEXCOM', '$LATEXCOMSTR') def generate(env): """Add Builders and construction variables for LaTeX to an Environment.""" diff --git a/src/engine/SCons/Tool/pdflatex.py b/src/engine/SCons/Tool/pdflatex.py index b1a559a..57c6e2d 100644 --- a/src/engine/SCons/Tool/pdflatex.py +++ b/src/engine/SCons/Tool/pdflatex.py @@ -37,7 +37,7 @@ import SCons.Action import SCons.Defaults import SCons.Util -PDFLaTeXAction = SCons.Action.Action('$PDFLATEXCOM') +PDFLaTeXAction = SCons.Action.Action('$PDFLATEXCOM', '$PDFLATEXCOMSTR') def generate(env): """Add Builders and construction variables for pdflatex to an Environment.""" diff --git a/src/engine/SCons/Tool/pdftex.py b/src/engine/SCons/Tool/pdftex.py index 3d2add0..366151e 100644 --- a/src/engine/SCons/Tool/pdftex.py +++ b/src/engine/SCons/Tool/pdftex.py @@ -33,9 +33,12 @@ selection method. __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" +import SCons.Action import SCons.Defaults import SCons.Util +PDFTeXAction = SCons.Action.Action('$PDFTEXCOM', '$PDFTEXCOMSTR') + def generate(env): """Add Builders and construction variables for pdftex to an Environment.""" try: @@ -44,7 +47,7 @@ def generate(env): bld = SCons.Defaults.PDF() env['BUILDERS']['PDF'] = bld - bld.add_action('.tex', '$PDFTEXCOM') + bld.add_action('.tex', PDFTeXAction) env['PDFTEX'] = 'pdftex' env['PDFTEXFLAGS'] = SCons.Util.CLVar('') diff --git a/src/engine/SCons/Tool/tex.py b/src/engine/SCons/Tool/tex.py index b9257ea..db2664a 100644 --- a/src/engine/SCons/Tool/tex.py +++ b/src/engine/SCons/Tool/tex.py @@ -45,14 +45,14 @@ import SCons.Util # Define an action to build a generic tex file. This is sufficient for all # tex files. -TeXAction = SCons.Action.CommandAction("$TEXCOM") +TeXAction = SCons.Action.Action("$TEXCOM", "$TEXCOMSTR") # Define an action to build a latex file. This action might be needed more # than once if we are dealing with labels and bibtex -LaTeXAction = SCons.Action.CommandAction("$LATEXCOM") +LaTeXAction = SCons.Action.Action("$LATEXCOM", "$LATEXCOMSTR") # Define an action to run BibTeX on a file. -BibTeXAction = SCons.Action.CommandAction("$BIBTEXCOM") +BibTeXAction = SCons.Action.Action("$BIBTEXCOM", "$BIBTEXCOMSTR") def LaTeXAuxAction(target = None, source= None, env=None): """A builder for LaTeX files that checks the output in the aux file @@ -74,22 +74,29 @@ def LaTeXAuxAction(target = None, source= None, env=None): LaTeXAction(target,source,env) return 0 -def TeXLaTeXAction(target = None, source= None, env=None): +LaTeX_re = re.compile("\\\\document(style|class)") + +def is_LaTeX(flist): + # Scan a file list to decide if it's TeX- or LaTeX-flavored. + for f in flist: + content = f.get_contents() + if LaTeX_re.search(content): + return 1 + return 0 + +def TeXLaTeXFunction(target = None, source= None, env=None): """A builder for TeX and LaTeX that scans the source file to decide the "flavor" of the source and then executes the appropriate program.""" - LaTeXFile = None - for src in source: - content = src.get_contents() - if re.search("\\\\document(style|class)",content): - LaTeXFile = 1 - break - if LaTeXFile: + if is_LaTeX(source): LaTeXAuxAction(target,source,env) else: TeXAction(target,source,env) return 0 +TeXLaTeXAction = SCons.Action.Action(TeXLaTeXFunction, + strfunction=None) + def generate(env): """Add Builders and construction variables for TeX to an Environment.""" try: |
