diff options
author | Robert Managan <managan1@llnl.gov> | 2011-09-06 22:18:10 (GMT) |
---|---|---|
committer | Robert Managan <managan1@llnl.gov> | 2011-09-06 22:18:10 (GMT) |
commit | f77a946d58be75dd9f76d6f7ea4597ec48d88edb (patch) | |
tree | 1dbb2eb05318f0c727ed5904880d4b3a54b1a431 /src/engine/SCons/Tool | |
parent | 30d28b60f062a64a6b51266e14ba065bc9ef2f97 (diff) | |
download | SCons-f77a946d58be75dd9f76d6f7ea4597ec48d88edb.zip SCons-f77a946d58be75dd9f76d6f7ea4597ec48d88edb.tar.gz SCons-f77a946d58be75dd9f76d6f7ea4597ec48d88edb.tar.bz2 |
Update path information for OSX.
If one of the tools that use TeX applications is generated
add the paths in /etc/paths and /etc/paths.d
version 10.5 (Leopard)
Diffstat (limited to 'src/engine/SCons/Tool')
-rw-r--r-- | src/engine/SCons/Tool/dvipdf.py | 1 | ||||
-rw-r--r-- | src/engine/SCons/Tool/dvips.py | 1 | ||||
-rw-r--r-- | src/engine/SCons/Tool/latex.py | 1 | ||||
-rw-r--r-- | src/engine/SCons/Tool/pdflatex.py | 1 | ||||
-rw-r--r-- | src/engine/SCons/Tool/pdftex.py | 1 | ||||
-rw-r--r-- | src/engine/SCons/Tool/tex.py | 33 |
6 files changed, 38 insertions, 0 deletions
diff --git a/src/engine/SCons/Tool/dvipdf.py b/src/engine/SCons/Tool/dvipdf.py index 56e90ea..7c41e9c 100644 --- a/src/engine/SCons/Tool/dvipdf.py +++ b/src/engine/SCons/Tool/dvipdf.py @@ -115,6 +115,7 @@ def generate(env): env['PDFCOM'] = ['$DVIPDFCOM'] def exists(env): + SCons.Tool.tex.generate_darwin(env) return env.Detect('dvipdf') # Local Variables: diff --git a/src/engine/SCons/Tool/dvips.py b/src/engine/SCons/Tool/dvips.py index c682a21..198bda0 100644 --- a/src/engine/SCons/Tool/dvips.py +++ b/src/engine/SCons/Tool/dvips.py @@ -85,6 +85,7 @@ def generate(env): env['PSSUFFIX'] = '.ps' def exists(env): + SCons.Tool.tex.generate_darwin(env) return env.Detect('dvips') # Local Variables: diff --git a/src/engine/SCons/Tool/latex.py b/src/engine/SCons/Tool/latex.py index 283a8b4..1c71743 100644 --- a/src/engine/SCons/Tool/latex.py +++ b/src/engine/SCons/Tool/latex.py @@ -70,6 +70,7 @@ def generate(env): SCons.Tool.tex.generate_common(env) def exists(env): + SCons.Tool.tex.generate_darwin(env) return env.Detect('latex') # Local Variables: diff --git a/src/engine/SCons/Tool/pdflatex.py b/src/engine/SCons/Tool/pdflatex.py index 78204d9..922e718 100644 --- a/src/engine/SCons/Tool/pdflatex.py +++ b/src/engine/SCons/Tool/pdflatex.py @@ -74,6 +74,7 @@ def generate(env): SCons.Tool.tex.generate_common(env) def exists(env): + SCons.Tool.tex.generate_darwin(env) return env.Detect('pdflatex') # Local Variables: diff --git a/src/engine/SCons/Tool/pdftex.py b/src/engine/SCons/Tool/pdftex.py index 33a41f2..30c56af 100644 --- a/src/engine/SCons/Tool/pdftex.py +++ b/src/engine/SCons/Tool/pdftex.py @@ -99,6 +99,7 @@ def generate(env): SCons.Tool.tex.generate_common(env) def exists(env): + SCons.Tool.tex.generate_darwin(env) return env.Detect('pdftex') # Local Variables: diff --git a/src/engine/SCons/Tool/tex.py b/src/engine/SCons/Tool/tex.py index 77e6e79..b0c518e 100644 --- a/src/engine/SCons/Tool/tex.py +++ b/src/engine/SCons/Tool/tex.py @@ -739,9 +739,28 @@ def generate(env): bld.add_action('.tex', TeXLaTeXAction) bld.add_emitter('.tex', tex_eps_emitter) +def generate_darwin(env): + try: + environ = env['ENV'] + except KeyError: + environ = {} + env['ENV'] = environ + + if (platform.system() == 'Darwin'): + try: + ospath = env['ENV']['PATHOSX'] + except: + ospath = None + if ospath: + env.AppendENVPath('PATH', ospath) + def generate_common(env): """Add internal Builders and construction variables for LaTeX to an Environment.""" + # Add OSX system paths so TeX tools can be found + # when a list of tools is given the exists() method is not called + generate_darwin(env) + # A generic tex file Action, sufficient for all tex files. global TeXAction if TeXAction is None: @@ -778,6 +797,19 @@ def generate_common(env): if MakeAcronymsAction is None: MakeAcronymsAction = SCons.Action.Action("$MAKEACRONYMSCOM", "$MAKEACRONYMSCOMSTR") + try: + environ = env['ENV'] + except KeyError: + environ = {} + env['ENV'] = environ + + # Some Linux platforms have pdflatex set up in a way + # that requires that the HOME environment variable be set. + # Add it here if defined. + v = os.environ.get('HOME') + if v: + environ['HOME'] = v + CDCOM = 'cd ' if platform.system() == 'Windows': # allow cd command to change drives on Windows @@ -824,6 +856,7 @@ def generate_common(env): env['MAKENCLCOM'] = CDCOM + '${TARGET.dir} && $MAKENCL ${SOURCE.filebase}.nlo $MAKENCLFLAGS -o ${SOURCE.filebase}.nls' def exists(env): + generate_darwin(env) return env.Detect('tex') # Local Variables: |