aboutsummaryrefslogtreecommitdiff
path: root/build-aux
diff options
context:
space:
mode:
authorArun Isaac2021-08-16 18:21:30 +0530
committerArun Isaac2021-08-16 18:31:12 +0530
commit4b898a0a437f7d0c58e3766202a48c2c2d5f70d2 (patch)
tree3f616bf66f4ba1ef32ca320242cf4c612f1e1ae9 /build-aux
parent4ed386f3b6b3763d8acc07074d41ed508814328e (diff)
downloadccwl-4b898a0a437f7d0c58e3766202a48c2c2d5f70d2.tar.gz
ccwl-4b898a0a437f7d0c58e3766202a48c2c2d5f70d2.tar.lz
ccwl-4b898a0a437f7d0c58e3766202a48c2c2d5f70d2.zip
Makefile: Generate sample output when building documentation.
* Makefile.am (CLEANFILES): Add doc/*.out. (CLEAN_DIRECTORIES): Add doc/cwl-output. (GENERATE_CWL_OUTPUT): New variable. (doc/capture-output-file.out, doc/capture-output-file-with-parameter-reference.out, doc/capture-stdout.out, doc/checksum.out, doc/decompress-compile-run.out, doc/hello-world.out, doc/pass-stdin.out, doc/hello.tar.out): New targets. * doc/capture-output-file-with-parameter-reference.out, doc/capture-output-file.out, doc/capture-stdout.out, doc/checksum.out, doc/decompress-compile-run.out, doc/hello-world.out, doc/hello.tar.out, doc/pass-stdin.out: Delete files. * build-aux/generate-cwl-output.sh.in, doc/hello.c.gz, doc/hello.tar, doc/hello.txt: New files. * configure.ac: Configure build-aux/generate-cwl-output.sh. * doc/ccwl.skb (Tutorial)[Passing input into the standard input stream of a command]: Replace file "foo" with "hello.txt". * .gitignore: Add build-aux/generate-cwl-output.sh, doc/*.out and doc/cwl-output.
Diffstat (limited to 'build-aux')
-rwxr-xr-xbuild-aux/generate-cwl-output.sh.in37
1 files changed, 37 insertions, 0 deletions
diff --git a/build-aux/generate-cwl-output.sh.in b/build-aux/generate-cwl-output.sh.in
new file mode 100755
index 0000000..6f56996
--- /dev/null
+++ b/build-aux/generate-cwl-output.sh.in
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+
+# ccwl --- Concise Common Workflow Language
+# Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
+#
+# This file is part of ccwl.
+#
+# ccwl is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# ccwl is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with ccwl. If not, see <https://www.gnu.org/licenses/>.
+
+set -o pipefail
+
+cwl_file=$(basename $1)
+shift
+
+cd doc
+output_file=$(basename $cwl_file .cwl).out
+{
+ echo "\$ ccwl compile $(basename $cwl_file .cwl).scm > $cwl_file"
+ echo "\$ cwltool $cwl_file $@"
+ # On Guix, workflows involving gcc need the
+ # --preserve-entire-environment flag.
+ @CWLTOOL@ --preserve-entire-environment --outdir cwl-output $cwl_file "$@" 2>&1 \
+ | @SED@ '1,2d' \
+ | @SED@ 's|\[1;30mINFO\[0m ||g' \
+ | @SED@ "s|$(pwd)|/home/manimekalai|g"
+} > $output_file