From 4b898a0a437f7d0c58e3766202a48c2c2d5f70d2 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 16 Aug 2021 18:21:30 +0530 Subject: 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. --- build-aux/generate-cwl-output.sh.in | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 build-aux/generate-cwl-output.sh.in (limited to 'build-aux/generate-cwl-output.sh.in') 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 +# +# 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 . + +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 -- cgit v1.2.3