Add XSLT postprocessing of HTML files to fix browser problems
[senf.git] / SConstruct
index 0dd5710..7946269 100644 (file)
@@ -1,26 +1,45 @@
 # -*- python -*-
 
-import sys, glob
-sys.path.append('satscons')
-import SatSCons
+import sys, glob, os.path
+sys.path.append('senfscons')
+import SENFSCons
 
 ###########################################################################
 
-SatSCons.UseBoost()
-SatSCons.UseSTLPort()
-env = SatSCons.MakeEnvironment()
+SENFSCons.UseBoost()
+SENFSCons.UseSTLPort()
+env = SENFSCons.MakeEnvironment()
 
 env.Append(
    CPPPATH = [ '#' ],
    LIBS = [ 'iberty' ],
-   DOXYFILES = [ '#/doclib/doxy-header.html', '#/doclib/doxy-footer.html',
-                 '#/doclib/Doxyfile.global' ]
+   DOXY_XREF_TYPES = [ 'bug', 'fixme', 'todo', 'idea' ],
+   DOXY_HTML_XSL = '#/doclib/html-munge.xsl',
+)
+
+import datetime
+
+svninfo = dict(
+    [ tuple(map(lambda y:y.strip(),x.split(":",1)))
+      for x in os.popen("svn info").read().split("\n")
+      if ':' in x ] )
+svninfo['commited'] = not(os.popen("svn status").read())
+
+env.Append(
+    ENV = { 'TODAY' : datetime.date.today(),
+            'REVISION' : svninfo['Revision'] + (not(svninfo['commited']) and " + local changes" or "") }
 )
 
 Export('env')
 
 SConscript(glob.glob("*/SConscript"))
 
-SatSCons.StandardTargets(env)
-SatSCons.GlobalTargets(env)
-SatSCons.Doxygen(env)
+SENFSCons.StandardTargets(env)
+SENFSCons.GlobalTargets(env)
+SENFSCons.Doxygen(env)
+SENFSCons.DoxyXRef(env, 
+                   HTML_HEADER = '#/doclib/doxy-header-overview.html',
+                   HTML_FOOTER = '#/doclib/doxy-footer.html')
+
+if not env.GetOption('clean') and not os.path.exists("Doxyfile.local"):
+    Execute(Touch("Doxyfile.local"))