Tweak svn/git ignores
[zxing.git] / cpp / scons / scons-local-2.0.0.final.0 / SCons / Tool / pdf.py
1 """SCons.Tool.pdf
2
3 Common PDF Builder definition for various other Tool modules that use it.
4 Add an explicit action to run epstopdf to convert .eps files to .pdf
5
6 """
7
8 #
9 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
10 #
11 # Permission is hereby granted, free of charge, to any person obtaining
12 # a copy of this software and associated documentation files (the
13 # "Software"), to deal in the Software without restriction, including
14 # without limitation the rights to use, copy, modify, merge, publish,
15 # distribute, sublicense, and/or sell copies of the Software, and to
16 # permit persons to whom the Software is furnished to do so, subject to
17 # the following conditions:
18 #
19 # The above copyright notice and this permission notice shall be included
20 # in all copies or substantial portions of the Software.
21 #
22 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
23 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
24 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 #
30
31 __revision__ = "src/engine/SCons/Tool/pdf.py 5023 2010/06/14 22:05:46 scons"
32
33 import SCons.Builder
34 import SCons.Tool
35
36 PDFBuilder = None
37
38 EpsPdfAction = SCons.Action.Action('$EPSTOPDFCOM', '$EPSTOPDFCOMSTR')
39
40 def generate(env):
41     try:
42         env['BUILDERS']['PDF']
43     except KeyError:
44         global PDFBuilder
45         if PDFBuilder is None:
46             PDFBuilder = SCons.Builder.Builder(action = {},
47                                                source_scanner = SCons.Tool.PDFLaTeXScanner,
48                                                prefix = '$PDFPREFIX',
49                                                suffix = '$PDFSUFFIX',
50                                                emitter = {},
51                                                source_ext_match = None,
52                                                single_source=True)
53         env['BUILDERS']['PDF'] = PDFBuilder
54
55     env['PDFPREFIX'] = ''
56     env['PDFSUFFIX'] = '.pdf'
57
58 # put the epstopdf builder in this routine so we can add it after 
59 # the pdftex builder so that one is the default for no source suffix
60 def generate2(env):
61     bld = env['BUILDERS']['PDF']
62     #bld.add_action('.ps',  EpsPdfAction) # this is covered by direct Ghostcript action in gs.py
63     bld.add_action('.eps', EpsPdfAction)
64
65     env['EPSTOPDF']      = 'epstopdf'
66     env['EPSTOPDFFLAGS'] = SCons.Util.CLVar('')
67     env['EPSTOPDFCOM']   = '$EPSTOPDF $EPSTOPDFFLAGS ${SOURCE} --outfile=${TARGET}'
68
69 def exists(env):
70     # This only puts a skeleton Builder in place, so if someone
71     # references this Tool directly, it's always "available."
72     return 1
73
74 # Local Variables:
75 # tab-width:4
76 # indent-tabs-mode:nil
77 # End:
78 # vim: set expandtab tabstop=4 shiftwidth=4: