OLD | NEW |
1 """SCons.Tool.dvipdf | 1 """SCons.Tool.dvipdf |
2 | 2 |
3 Tool-specific initialization for dvipdf. | 3 Tool-specific initialization for dvipdf. |
4 | 4 |
5 There normally shouldn't be any need to import this module directly. | 5 There normally shouldn't be any need to import this module directly. |
6 It will usually be imported through the generic SCons.Tool.Tool() | 6 It will usually be imported through the generic SCons.Tool.Tool() |
7 selection method. | 7 selection method. |
8 | 8 |
9 """ | 9 """ |
10 | 10 |
(...skipping 13 matching lines...) Expand all Loading... |
24 # | 24 # |
25 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY | 25 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY |
26 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE | 26 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE |
27 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | 27 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
28 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE | 28 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
29 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION | 29 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
30 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | 30 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
31 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 31 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
32 # | 32 # |
33 | 33 |
34 __revision__ = "src/engine/SCons/Tool/dvipdf.py 3603 2008/10/10 05:46:45 scons" | 34 __revision__ = "src/engine/SCons/Tool/dvipdf.py 3842 2008/12/20 22:59:52 scons" |
35 | 35 |
36 import SCons.Action | 36 import SCons.Action |
37 import SCons.Defaults | 37 import SCons.Defaults |
38 import SCons.Tool.pdf | 38 import SCons.Tool.pdf |
39 import SCons.Tool.tex | 39 import SCons.Tool.tex |
40 import SCons.Util | 40 import SCons.Util |
41 | 41 |
42 _null = SCons.Tool.tex._Null | 42 _null = SCons.Scanner.LaTeX._null |
43 | 43 |
44 def DviPdfPsFunction(XXXDviAction, target = None, source= None, env=None): | 44 def DviPdfPsFunction(XXXDviAction, target = None, source= None, env=None): |
45 """A builder for DVI files that sets the TEXPICTS environment | 45 """A builder for DVI files that sets the TEXPICTS environment |
46 variable before running dvi2ps or dvipdf.""" | 46 variable before running dvi2ps or dvipdf.""" |
47 | 47 |
48 try: | 48 try: |
49 abspath = source[0].attributes.path | 49 abspath = source[0].attributes.path |
50 except AttributeError : | 50 except AttributeError : |
51 abspath = '' | 51 abspath = '' |
52 | 52 |
53 saved_env = {} | 53 saved_env = SCons.Scanner.LaTeX.modify_env_var(env, 'TEXPICTS', abspath) |
54 saved_env['TEXPICTS'] = SCons.Tool.tex.modify_env_var(env, 'TEXPICTS', abspa
th) | |
55 | 54 |
56 result = XXXDviAction(target, source, env) | 55 result = XXXDviAction(target, source, env) |
57 | 56 |
58 if saved_env['TEXPICTS'] is _null: | 57 if saved_env is _null: |
59 try: | 58 try: |
60 del env['ENV']['TEXPICTS'] | 59 del env['ENV']['TEXPICTS'] |
61 except KeyError: | 60 except KeyError: |
62 pass # was never set | 61 pass # was never set |
63 else: | 62 else: |
64 env['ENV']['TEXPICTS'] = saved_env['TEXPICTS'] | 63 env['ENV']['TEXPICTS'] = saved_env |
65 | 64 |
66 return result | 65 return result |
67 | 66 |
68 def DviPdfFunction(target = None, source= None, env=None): | 67 def DviPdfFunction(target = None, source= None, env=None): |
69 result = DviPdfPsFunction(PDFAction,target,source,env) | 68 result = DviPdfPsFunction(PDFAction,target,source,env) |
70 return result | 69 return result |
71 | 70 |
72 def DviPdfStrFunction(target = None, source= None, env=None): | 71 def DviPdfStrFunction(target = None, source= None, env=None): |
73 """A strfunction for dvipdf that returns the appropriate | 72 """A strfunction for dvipdf that returns the appropriate |
74 command string for the no_exec options.""" | 73 command string for the no_exec options.""" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 | 110 |
112 env['DVIPDF'] = 'dvipdf' | 111 env['DVIPDF'] = 'dvipdf' |
113 env['DVIPDFFLAGS'] = SCons.Util.CLVar('') | 112 env['DVIPDFFLAGS'] = SCons.Util.CLVar('') |
114 env['DVIPDFCOM'] = 'cd ${TARGET.dir} && $DVIPDF $DVIPDFFLAGS ${SOURCE.file
} ${TARGET.file}' | 113 env['DVIPDFCOM'] = 'cd ${TARGET.dir} && $DVIPDF $DVIPDFFLAGS ${SOURCE.file
} ${TARGET.file}' |
115 | 114 |
116 # Deprecated synonym. | 115 # Deprecated synonym. |
117 env['PDFCOM'] = ['$DVIPDFCOM'] | 116 env['PDFCOM'] = ['$DVIPDFCOM'] |
118 | 117 |
119 def exists(env): | 118 def exists(env): |
120 return env.Detect('dvipdf') | 119 return env.Detect('dvipdf') |
OLD | NEW |