@@ -50,17 +50,22 @@ # first, we establish the # parameters of the build has cc && _cc=cc has clang && _cc=clang -has gcc && _cc=gcc +has gcc && _cc=gcc # prefer gcc cc=${cc:-$_cc} has m4 && _m4=m4 m4=${m4:-$_m4} has nasm && asm=nasm -has yasm && asm=yasm +has yasm && asm=yasm # prefer yasm export gen=${gen:-gen} library=${libkind:-static} # {static|shared|both} +doc=${doc:-yes} +export doc_html=${doc_html:-yes} +export doc_pdf=${doc_pdf:-yes} +export doc_man=${doc_man:-yes} + case $library in static) build_static_library=yes build_shared_library=no;; @@ -132,9 +137,9 @@ cat $p_headers_errno $gen/error_names.tbl | cpp -P >$gen/error_numbers.tbl awk -f arch/errtbl.awk <$gen/error_numbers.tbl >$gen/error_table.h # generate symbol tables for error handling functions -mkdir -p $out/k +mkdir -p "$out/k" awk -f global/gen-conds.awk $out/k/internal.egroup.h awk -f global/gen-ident.awk $gen/internal.ident.c comp_co $gen/internal.ident.c $out/internal.ident.o @@ -156,19 +161,18 @@ # second pass: generate manpage, html, and pdf # versions of the documentation from the md src -mkdir -p $out/doc/{man,html,pdf} -global/build-manpage.sh libk.md -for mod in ${modules[@]}; do - for doc in $(scan $mod '*.md'); do - base="$(basename $doc)" - stem="${base%%.md}" - global/build-manpage.sh "$doc" - global/build-html.sh "$doc" - global/build-pdf.sh "$doc" +if test "$doc" = "yes"; then + global/build-manpage.sh libk.md + for mod in ${modules[@]}; do + for doc in $(scan $mod '*.md'); do + base="$(basename $doc)" + stem="${base%%.md}" + global/build-manpage.sh "$doc" + done done -done +fi # third pass: compile sources and save the # resulting object files to $out, tracking # which is a runtime or function unit. exe's