summaryrefslogtreecommitdiff
path: root/Makefile.am
AgeCommit message (Collapse)Author
2021-11-05doc: Add spell check workflow to tutorial.Arun Isaac
* doc/ccwl.skb (Tutorial)[Let's write a spell check workflow]: New section. * Makefile.am (doc/spell-check.out): New target. (EXTRA_DIST): Add doc/spell-check-text.txt and doc/dictionary. * doc/dictionary, doc/spell-check-text.txt, doc/spell-check-workflow-1.scm, doc/spell-check-workflow-2.scm, doc/spell-check.scm: New files.
2021-11-05Makefile: Copy images without recursion.Arun Isaac
* Makefile.am (doc/ccwl.html): Copy images without recursion.
2021-11-05Makefile: Delete target if recipe fails.Arun Isaac
Without this, when recipes involving output redirection fail, their targets are not deleted. * Makefile.am (.DELETE_ON_ERROR): New target.
2021-11-05Makefile: Create doc directory before populating it.Arun Isaac
* Makefile.am (doc/.dirstamp): New target. ($(DOC_IMAGES:.png=.dot), $(DOC_OUT)): Depend on doc/.dirstamp. (CLEAN_DIRECTORIES): Add doc/.dirstamp.
2021-11-05Makefile: Do not clean files based on extension.Arun Isaac
* Makefile.am (CLEANFILES): Replace doc/*.cwl, doc/*.dot, doc/*.out and doc/*.png with DOC_SCM, DOC_IMAGES and DOC_OUT variables.
2021-11-05Makefile: Distinguish DOC_OTHER from DOC_OUT.Arun Isaac
DOC_OTHER includes dependencies that are neither scm files nor out files, but are primary sources required for the build. * Makefile.am (EXTRA_DIST): Add DOC_OTHER. (doc/ccwl.info, doc/ccwl.html): Depend on DOC_OTHER. * build-aux/find-dependencies.scm: Output DOC_OTHER. (find-dependencies): Classify source forms as type 'out or type 'other based on extension.
2021-11-04Makefile: Distribute doc/hello.c.gz. and doc/hello.txt.Arun Isaac
These files are source files required for the build. They were missed out in an earlier commit. * Makefile.am (EXTRA_DIST): Add doc/hello.c.gz and doc/hello.txt.
2021-11-04Makefile: Pass auxiliary dependencies from automatic variables.Arun Isaac
This is required to support VPATH builds. * Makefile.am (doc/capture-output-file.out, doc/capture-output-file-with-parameter-reference.out, doc/checksum.out, doc/decompress-compile-run.out, doc/pass-stdin.out): Pass auxiliary dependencies from automatic variables.
2021-11-04build-aux: Use paths relative to top-level in generate-cwl-output.sh.Arun Isaac
This removes the assumption that the source tree and the build tree are the same, and is required to support VPATH builds. * build-aux/generate-cwl-output.sh.in: Accept and write to paths relative to the top-level directory. Do not change directory. * Makefile.am (doc/capture-output-file.out, doc/capture-output-file-with-parameter-reference.out, doc/checksum.out, doc/decompress-compile-run.out, doc/pass-stdin.out): Pass relative paths in input arguments.
2021-11-02Makefile: Distribute doc/hello.tar.Arun Isaac
doc/hello.tar is used to build doc/hello.tar.out. * Makefile.am (EXTRA_DIST): Add doc/hello.tar.
2021-11-02Makefile: Do not distribute *.out files.Arun Isaac
The *.out files are generated by running ccwl workflows. They need not be distributed. * build-aux/find-dependencies.scm (find-dependencies): Return *.out files and *.scm files as different kinds of dependencies. Output *.out and *.scm files separately as DOC_OUT and DOC_SCM instead of together as DOC_OTHER. * Makefile.am (doc/ccwl.info, doc/ccwl.html): Depend on DOC_SCM and DOC_OUT instead of DOC_OTHER. (EXTRA_DIST): Remove DOT_OTHER. Add DOC_SCM.
2021-11-02tests: Add input-output-parameters.cwl.Arun Isaac
This is a follow-up to 0b359cf2c32cde81b4311d55273c8f6c14ca6b93 where this file should have been included. * tests/input-output-parameters.cwl: New file. * Makefile.am (EXTRA_DIST): Register it.
2021-11-02ccwl: Rename graphviz to dot.Arun Isaac
What we call "graphviz syntax" is actually the "graphviz dot language". Rename accordingly. * ccwl/graphviz.scm (workflow->graphviz): Rename to workflow->dot. Call graph->dot instead of graph->graphviz. (escape-id): Update docstring to mention dot. (graph->graphviz): Rename to graph->dot. Update docstring to mention dot. * scripts/ccwl.in (main): Accept --to=dot instead of --to=graphviz. Update --help usage information. * Makefile.am (%.dot): Pass --to=dot instead of --to=graphviz.
2021-10-12Makefile: Use ccwl to generate graphviz graph.Arun Isaac
* Makefile.am (%.dot): Use ccwl to build %.dot from %.scm instead of cwltool to build %.dot from %.cwl.
2021-10-12ccwl: Implement compiling to graphviz.Arun Isaac
* ccwl/yaml.scm (indent-level): Import (ccwl utils). Move to ... * ccwl/utils.scm (indent-level): ... here. Export indent-level. * ccwl/graphviz.scm: New file. * Makefile.am (SOURCES): Register it.
2021-10-11ccwl: Factorize out CWL generation code to separate file.Arun Isaac
This factorization is required to support other compilation targets such as graphviz, bash, scheme, etc. * ccwl/cwl.scm: New file. * Makefile.am (SOURCES): Register it. * ccwl/ccwl.scm (ccwl): Export command?, command-inputs, command-outputs, command-args, command-stdin, command-other, workflow?, workflow-steps, workflow-inputs, workflow-outputs, workflow-other, input?, input-id, input-type, input-label, input-default, input-position, input-prefix, input-other, output?, output-id, output-type, output-binding, output-source, output-other, step?, step-id, step-run, step-in, step-out, unspecified-default?. (<workflow>): New type. (filter-alist): Move to cwl.scm. (make-workflow): Refactor into workflow->cwl-scm in cwl.scm. (output->cwl): Move to cwl.scm as output->cwl-scm. (command->cwl): Move to cwl.scm as command->cwl-scm. (workflow-steps): Rename to collect-steps. Clarify docstring. (workflow): Use collect-steps instead of workflow-steps. Explicitly pass empty list as other argument of make-workflow. Add TODO note to implement it properly. * scripts/ccwl.in: Import (ccwl cwl) instead of (ccwl yaml). Use workflow->cwl instead of scm->yaml. * tests/ccwl.scm ("stdin input should not have inputBinding"): Use command->cwl-scm from (ccwl cwl) instead of command->cwl from (ccwl ccwl).
2021-09-29Makefile: Record dependency on build-home-page.el.Arun Isaac
* Makefile.am (website/index.html): Depend on build-aux/build-home-page.el.
2021-08-16Makefile: Generate sample output when building documentation.Arun Isaac
* 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.
2021-08-16Makefile: Clean dot files correctly.Arun Isaac
* Makefile.am (CLEANFILES): Clean *.dot, not %.dot.
2021-08-16Makefile: Allow tabs when editing in Emacs.Arun Isaac
* Makefile.am: Set indent-tabs-mode to t.
2021-07-20tests: Add tests for ccwl/utils.scm.Arun Isaac
* tests/utils.scm: New file. * Makefile.am (SCM_TESTS): Register it.
2021-07-19build-aux: Put website building code into a function.Arun Isaac
This will be useful when we want build-home-page.el to build both a website and a gemini capsule. * build-aux/build-home-page.el (build-website): New function. * Makefile.am (website/index.html): Call build-website.
2021-07-06Makefile: Add release target.Arun Isaac
* Makefile.am (CURRENT_RELEASE): New variable. (release, $(CURRENT_RELEASE), %.asc): New rules.
2021-07-04Makefile: Replace top_builddir with builddir.Arun Isaac
Since we only have a top-level Makefile, top_builddir and builddir are the same. Use builddir in the interest of brevity. * Makefile.am (%.go, SCM_LOG_DRIVER, doc/ccwl.info, doc/ccwl.html): Replace top_builddire with builddir.
2021-07-04Makefile: Pass image path to skribilo.Arun Isaac
* Makefile.am (SKRIBILO_FLAGS): Add --image-path=$(builddir).
2021-07-04doc: Use PNG images instead of SVG.Arun Isaac
PNG images are supported by both the info and html engines. * doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Use PNG images instead of SVG. * Makefile.am (CLEANFILES): Replace doc/*.svg with doc/*.png. (%.svg): Delete rule. (%.png): New rule. * .gitignore: Replace doc/*.svg with doc/*.png.
2021-07-04Makefile: Pass source path to skribilo.Arun Isaac
* Makefile.am (SKRIBILO_FLAGS): New variable. (doc/ccwl.info, doc/ccwl.html): Pass $(SKRIBILO_FLAGS) to skribilo.
2021-07-04Makefile: Distribute documentation.Arun Isaac
* Makefile.am (EXTRA_DIST): Add doc/skribilo.scm, doc/ccwl.skb, $(DOC_OTHER).
2021-07-04Makefile: Include .depends with automake.Arun Isaac
* bootstrap.sh: Generate .depends. * Makefile.am: Include .depends with automake, not with make. (.depends): Delete rule. (doc/ccwl.html, doc/ccwl.info): Use DOC_OTHER instead of DOC_OTHER_DEPENDENCIES. (CLEANFILES): Remove .depends. * build-aux/find-dependencies.scm: Output DOC_OTHER instead of DOC_OTHER_DEPENDENCIES. _DEPENDENCIES variables are special in automake.
2021-07-04Makefile: Clean only directories in clean-local.Arun Isaac
* Makefile.am (CLEANFILES): Add .depends, website/index.html. (CLEAN_DIRECTORIES): Add doc/ccwl.html, website/manual. (clean-local): Delete $(CLEAN_DIRECTORIES) only.
2021-07-04Makefile: Build skribilo documentation in-place.Arun Isaac
* Makefile.am (SKRIBILO_BUILD_DIR): Delete variable. (CLEANFILES): Add doc/*.cwl, doc/*.dot, doc/*.svg, doc/ccwl.info, doc/skribilo.go. ($(SKRIBILO_BUILD_DIR)/%.cwl): Rename to %.cwl. (info-local, install-info-local): Depend on doc/ccwl.info instead of $(SKRIBILO_BUILD_DIR)/ccwl.info. (html-local, install-html-local, website/manual/dev/en): Depend on doc/ccwl.html instead of $(SKRIBILO_BUILD_DIR)/ccwl.html. ($(SKRIBILO_BUILD_DIR)/ccwl.info): Rename to doc/ccwl.info. ($(SKRIBILO_BUILD_DIR)/ccwl.html): Rename to doc/ccwl.html. (clean-local): Do not delete doc/skribilo.go and $(SKRIBILO_BUILD_DIR). * .gitignore: Add doc/*.cwl, doc/*.html, doc/*.info, doc/*.svg. Remove doc/skribilo. * doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Reference images in the doc directory instead of in the doc/skribilo directory.
2021-07-04Makefile: List files in a single line.Arun Isaac
There are so few that it makes no sense to list them one on a line. * Makefile.am (SOURCES, SCM_TESTS): List files in a single line.
2021-07-04Makefile: Do not create website directory.Arun Isaac
The website directory is checked into the git repository and need not be created. * Makefile.am (website/index.html): Do not create website directory.
2021-07-04Makefile: Add prefix variables for silencing commands.Arun Isaac
* Makefile.am (CCWL_GEN*, CWLTOOL_GEN*, DOT_GEN*, EMACS_GEN*, GUILD_GEN*, SKRIBILO_GEN*): New variables. (%.go): Prefix with GUILD_GEN instead of AM_V_GEN. ($(SKRIBILO_BUILD_DIR)/%.cwl): Prefix with CCWL_GEN instead of AM_V_GEN. (%.dot): Prefix with CWLTOOL_GEN instead of AM_V_GEN. (%.svg): Prefix with DOT_GEN. ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Prefix with SKRIBILO_GEN instead of AM_V_GEN. (website/index.html): Prefix with EMACS_GEN.
2021-07-03doc: Move skribilo configuration into doc directory.Arun Isaac
* ccwl/skribilo.scm: Move to ... * doc/skribilo.scm: ... here. * doc/ccwl.skb: Import (doc skribilo) instead of (ccwl skribilo). * Makefile.am ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on doc/skribilo.go instead of ccwl/skribilo.go. * Makefile.am (clean-local): Delete doc/skribilo.go instead of ccwl/skribilo.go.
2021-07-03Makefile: Build skribilo configuration before documentation.Arun Isaac
* Makefile.am ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on ccwl/skribilo.go instead of ccwl/skribilo.scm. * Makefile.am (clean-local): Delete ccwl/skribilo.go.
2021-07-03Makefile: Comment on -local targets.Arun Isaac
* Makefile.am: Comment on use of install-data-local, install-info-local, install-html-local and uninstall-local targets.
2021-07-02Makefile: Track dependencies automatically.Arun Isaac
* build-aux/find-dependencies.scm: New file. * Makefile.am (DOC_IMAGES): Delete variable. (.depends): New target. Include it in the Makefile. ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on DOC_OTHER_DEPENDENCIES. (clean-local): Delete .depends. * .gitignore: Add .depends.
2021-06-28Makefile: Clean entire website manual directory.Arun Isaac
* Makefile.am (clean-local): Delete entire website manual directory. (website/manual/dev/en): Create directory before copying files.
2021-06-28doc: Add workflow graphs.Arun Isaac
* Makefile.am (DOC_IMAGES): Add checksum.svg and decompres-compile-run.svg. * doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Add workflow graphs checksum.svg and decompres-compile-run.svg.
2021-06-28Makefile: Build workflow images.Arun Isaac
* configure.ac: Search for cwltool, dot and sed. * Makefile.am (DOC_IMAGES): New variable. ($(SKRIBILO_BUILD_DIR)/%.cwl, %.dot, %.svg): New rules. ($(SKRIBILO_BUILD_DIR)/ccwl.info): Depend on $(DOC_IMAGES). ($(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on $(DOC_IMAGES). Build HTML into a directory. Copy $(DOC_IMAGES) into that directory.
2021-06-19Makefile: Let info and html targets depend on skribilo config.Arun Isaac
* Makefile.am ($(SKRIBILO_BUILD_DIR)/ccwl.info, $(SKRIBILO_BUILD_DIR)/ccwl.html): Depend on skribilo config ccwl/skribilo.scm.
2021-06-19configure: Search for emacs.Arun Isaac
* configure.ac: Search for emacs. * Makefile.am: Use EMACS set by configure.
2021-06-19Makefile: Use MKDIR_P instead of `mkdir -p'.Arun Isaac
* Makefile.am (website/index.html): Use MKDIR_P instead of `mkdir -p'.
2021-06-19Makefile: Delete manual directory before rebuilding.Arun Isaac
* Makefile.am (website/manual/dev/en): Delete directory before rebuilding.
2021-06-19website: Move CSS into the website directory.Arun Isaac
That way, there is no need to copy it when building the website. * Makefile.am (website/style.css): Delete target. (website): Do not depend on the website/style.css target. (clean-local): Clean up only website/index.html and website/manual/dev/en, not the entire website directory. * style.css: Move to website/style.css.
2021-06-15doc: Move documentation from texinfo to skribilo.Arun Isaac
* doc/ccwl.texi: Delete file. * ccwl/skribilo.scm, doc/ccwl.skb, doc/capture-output-file-with-parameter-reference.out, doc/capture-output-file-with-parameter-reference.scm, doc/capture-output-file.out, doc/capture-output-file.scm, doc/capture-stdout.out, doc/capture-stdout.scm, doc/checksum.out, doc/checksum.scm, doc/decompress-compile-run.out, doc/decompress-compile-run.scm, doc/hello-world.out, doc/hello-world.scm, doc/hello.tar.out: New files. * configure.ac: Check for skribilo. * Makefile.am: Unregister doc/ccwl.texi. Add documentation build rules. * guix.scm (ccwl)[native-inputs]: Replace texinfo with skribilo. * .gitignore: Add doc/skribilo. Remove doc/version.texi, doc/*.html, doc/*.info.
2021-05-24Add HTML manual to website.Arun Isaac
* Makefile.am (website/manual/dev/en): New target. (website): Require website/manual/dev/en. (AM_MAKEINFOHTMLFLAGS): Add --css-ref=/style.css to include CSS.
2021-05-24Add CSS to website.Arun Isaac
* Makefile.am (website/style.css): New target. (website): Require website/style.css. * style.css: New file.
2021-05-24Build website from README.org.Arun Isaac
* Makefile.am (website, website/index.html, clean-local): New targets. * build-aux/build-home-page.el: New file.