Added possibility of running bibtex for tech notes.
authorSimon Gerber <gesimu@gmail.com>
Tue, 10 Jan 2012 12:00:38 +0000 (13:00 +0100)
committerSimon Gerber <gesimu@gmail.com>
Tue, 10 Jan 2012 12:00:38 +0000 (13:00 +0100)
17 files changed:
doc/000-overview/Hakefile
doc/001-glossary/Hakefile
doc/002-mackerel/Hakefile
doc/003-hake/Hakefile
doc/004-virtual_memory/Hakefile
doc/005-scc/Hakefile
doc/006-routing/Hakefile
doc/007-Beehive/Hakefile
doc/008-tracing/Hakefile
doc/009-notifications/Hakefile
doc/010-spec/Hakefile
doc/011-idc/Hakefile
doc/012-services/Hakefile
doc/013-capability-mgmt/Hakefile
doc/014-bulk-transfer/Hakefile
hake/RuleDefs.hs
tools/run-pdflatex.sh

index b124485..075a67c 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Overview.tex" "TN-000-Overview.pdf" False
+[ buildTechNote "Overview.tex" "TN-000-Overview.pdf" False False
                     [ "cap_heirarchy", "cap_translation",
                       "dcb", "LMP", "os-arch", "UMP" ] 
 ]
index 06c2236..6afe451 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNoteWithDeps "Glossary.tex" "TN-001-Glossary.pdf" False []
+[ buildTechNoteWithDeps "Glossary.tex" "TN-001-Glossary.pdf" False False []
                             [ Str "runghc", In SrcTree "src" "Main.hs", Str ">", 
                               Out "tools" "/tmp/gloss-from-haskell.tex", NL ]
 ]
index 5681507..d7a8c49 100644 (file)
@@ -10,4 +10,4 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Mackerel.tex" "TN-002-Mackerel.pdf" False [] ]
+[ buildTechNote "Mackerel.tex" "TN-002-Mackerel.pdf" False False [] ]
index 5f82bea..eecf006 100644 (file)
@@ -10,5 +10,5 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Hake.tex" "TN-003-Hake.pdf" False [] ]
+[ buildTechNote "Hake.tex" "TN-003-Hake.pdf" False False [] ]
 
index 32270bd..f1ec722 100644 (file)
@@ -10,5 +10,5 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "VirtualMemory.tex" "TN-004-VirtualMemory.pdf" False [] ]
+[ buildTechNote "VirtualMemory.tex" "TN-004-VirtualMemory.pdf" False False [] ]
 
index c3ccbc5..c83f64e 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "SCC.tex" "TN-005-SCC.pdf" True
+[ buildTechNote "SCC.tex" "TN-005-SCC.pdf" True False
                     [ "figures/exp1", "figures/exp2",
                       "plots/mpbbench/mpbbench_oneway", 
                       "plots/rcce_bench/rcce_bt",
index 8de691c..461e170 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Routing.tex" "TN-006-Routing.pdf" True 
+[ buildTechNote "Routing.tex" "TN-006-Routing.pdf" True False
                     [ "client-monitor", 
                       "client-server", 
                       "many-to-many" ]
index 6245cf7..5aef060 100644 (file)
@@ -10,4 +10,4 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Beehive.tex" "TN-007-Beehive.pdf" True [] ]
+[ buildTechNote "Beehive.tex" "TN-007-Beehive.pdf" True False [] ]
index 0dbdb94..3268b1d 100644 (file)
@@ -10,4 +10,4 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Tracing.tex" "TN-008-Tracing.pdf" False [] ]
+[ buildTechNote "Tracing.tex" "TN-008-Tracing.pdf" False False [] ]
index 95362fb..ab41e46 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Notify.tex" "TN-009-Notifications.pdf" False 
+[ buildTechNote "Notify.tex" "TN-009-Notifications.pdf" False False
                     [ "umpnotify" ] 
 ]
 
index bd22796..d306cf5 100644 (file)
@@ -17,7 +17,7 @@ let
     dot f = [ Str "dot", Str "-Tpdf",
               In SrcTree "src" (f ++ ".dot"), Str "-o", Out "tools" (figoutput f), NL ]
 in
-  [ buildTechNoteWithDeps "Spec.tex" "TN-010-Spec.pdf" True []
+  [ buildTechNoteWithDeps "Spec.tex" "TN-010-Spec.pdf" True False []
     (concat [dot "app_cspace", circo "disp_states_simple",
              dot "disp_states_simple_save_area_analysis", dot "init_cspace"]
     ++ [ Str "hg", Str "-R", NoDep SrcTree "src" "/",
index 792a433..508ea15 100644 (file)
@@ -10,5 +10,5 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "IDC.tex" "TN-011-IDC.pdf" True ["figures/ump_bind"]
+[ buildTechNote "IDC.tex" "TN-011-IDC.pdf" True False ["figures/ump_bind"]
 ]
index aab00be..b2a254c 100644 (file)
@@ -10,7 +10,7 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "Services.tex" "TN-012-Services.pdf" False [] ]
+[ buildTechNote "Services.tex" "TN-012-Services.pdf" False False [] ]
 --                    [ "cap_heirarchy", "cap_translation",
 --                      "dcb", "LMP", "os-arch", "UMP" ] 
 --]
index 49b4de6..25c7579 100644 (file)
@@ -15,7 +15,7 @@ let
   dot f = [ Str "dot", Str "-Tpdf",
             In SrcTree "src" (f ++ ".dot"), Str "-o", Out "tools" (figoutput f), NL ]
   in
- [ buildTechNoteWithDeps "CapMgmt.tex" "TN-013-CapabilityManagement.pdf" True [] 
+ [ buildTechNoteWithDeps "CapMgmt.tex" "TN-013-CapabilityManagement.pdf" True False [] 
    (concat [dot "cap_types"])
  ]
 
index 29c8c85..ff1c85a 100644 (file)
@@ -10,5 +10,5 @@
 --
 ----------------------------------------------------------------------
 
-[ buildTechNote "bulk-transfer.tex" "TN-014-bulk-transfer.pdf" False [] ]
+[ buildTechNote "bulk-transfer.tex" "TN-014-bulk-transfer.pdf" False False [] ]
 
index cdb1a5d..e82635d 100644 (file)
@@ -785,11 +785,11 @@ compileNativeC prog cfiles cflags ldflags =
 --
 -- Build a Technical Note
 --
-buildTechNote :: String -> String -> Bool -> [String] -> HRule
-buildTechNote input output bib figs = 
-    buildTechNoteWithDeps input output bib figs []
-buildTechNoteWithDeps :: String -> String -> Bool -> [String] -> [RuleToken] -> HRule
-buildTechNoteWithDeps input output bib figs deps = 
+buildTechNote :: String -> String -> Bool -> Bool -> [String] -> HRule
+buildTechNote input output bib glo figs = 
+    buildTechNoteWithDeps input output bib glo figs []
+buildTechNoteWithDeps :: String -> String -> Bool -> Bool -> [String] -> [RuleToken] -> HRule
+buildTechNoteWithDeps input output bib glo figs deps = 
     let
         working_dir = NoDep BuildTree "tools" "/tmp/"
         style_files = [ "bfish-logo.pdf", "bftn.sty", "defs.bib", "barrelfish.bib" ]
@@ -809,7 +809,8 @@ buildTechNoteWithDeps input output bib figs deps =
                Str "--texinput", NoDep SrcTree "src" "/doc/style",
                Str "--bibinput", NoDep SrcTree "src" "/doc/style"
              ]
-             ++ if bib then [ Str "--has-bib" ] else []
+             ++ (if bib then [ Str "--has-bib" ] else [])
+             ++ (if glo then [ Str "--has-glo" ] else [])
            )
 
 ---------------------------------------------------------------------
index 538480c..c7f0227 100755 (executable)
@@ -82,6 +82,7 @@ INPUT_TEX=
 WORKING_DIR=
 OUTPUT_PDF=
 HAS_BIB=
+HAS_GLO=
 
 #
 # Argument processing.
@@ -100,6 +101,8 @@ while [ -n "$*" ]; do
            shift; BIBINPUTS=`cons_inputs "$BIBINPUTS" "$1"` ;;
        --has-bib)
            HAS_BIB=Yes ;;
+       --has-glo)
+           HAS_GLO=Yes ;;
        *)
            usage ;;
     esac
@@ -137,6 +140,9 @@ TOC_FILE="$WORKING_DIR/${JOB_NAME}.toc"
 BBL_FILE="$WORKING_DIR/${JOB_NAME}.bbl"
 BLG_FILE="$WORKING_DIR/${JOB_NAME}.blg"
 VER_FILE="$WORKING_DIR/${JOB_NAME}.ver"
+GLO_FILE="$WORKING_DIR/${JOB_NAME}.glo"
+ACN_FILE="$WORKING_DIR/${JOB_NAME}.acn"
+IST_FILE="$WORKING_DIR/${JOB_NAME}.ist"
 PDF_FILE="$WORKING_DIR/${JOB_NAME}.pdf"
 
 #
@@ -145,11 +151,11 @@ PDF_FILE="$WORKING_DIR/${JOB_NAME}.pdf"
 # bibtex on cygwin can be miktex which always 0 exit code
 run_latex
 if [ -n "$HAS_BIB" ]; then (bibtex $AUX_FILE_WITHOUT_AUX && test -r $BBL_FILE)  || exit; echo run_latex; fi
-if [ -e "$TOC_FILE" -o -e "$BBL_FILE" -o -e "$VER_FILE" ]; then run_latex; fi
-if egrep Rerun "$LOG_FILE" ; then run_latex ; fi
-if egrep Rerun "$LOG_FILE" ; then run_latex ; fi
-if egrep Rerun "$LOG_FILE" ; then run_latex ; fi
+if [ -n "$HAS_GLO" ]; then (makeglossaries -s $IST_FILE $GLO_FILE && makeglossaries -s $IST_FILE $ACN_FILE && test -r $GLO_FILE)  || exit; echo run_latex; fi
+if [ -e "$TOC_FILE" -o -e "$BBL_FILE" -o -e "$VER_FILE" -o -e "$GLO_FILE" -o -e "$ACN_FILE" ]; then run_latex; fi
+while egrep Rerun "$LOG_FILE"; do run_latex; done
 rm -f "$AUX_FILE" "$HST_FILE" "$LOG_FILE" "$TOC_FILE" "$BBL_FILE" 
 rm -f "$BLG_FILE" "$VER_FILE" 
+rm -f "$GLO_FILE" "$ACN_FILE" "$IST_FILE"
 mv "$PDF_FILE" "$OUTPUT_PDF"
 echo "Output file is in $OUTPUT_PDF"