summaryrefslogtreecommitdiffstats
blob: 3fc53c4b1b1f10c615233bbd4cd748e9dca86de6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import SCons.Util, os

def generate(env) :
  def modify_targets(target, source, env) :
    target = [env.File("html/index.html")]
    return target, source

  def generate_actions(source, target, env, for_signature) :
    if env.WhereIs("$DOXYGEN") and env.WhereIs("$DOT") :
      return [SCons.Action.Action("$DOXYGEN $SOURCE", cmdstr = "$DOXYCOMSTR")]
    else :
      return []

  env["DOXYGEN"] = "doxygen"
  # FIXME: For some reason, things go incredibly slow (at least on OS X)
  # when not doing this. Some environment flag is having an effect on
  # this; find out which
  env["ENV"] = os.environ
  env["DOT"] = "dot"
  env["BUILDERS"]["DoxyGen"] = SCons.Builder.Builder(
    emitter = modify_targets,
    generator = generate_actions,
    single_source = True)

def exists(env) :
  return True