summaryrefslogtreecommitdiff
path: root/Makefile.am
AgeCommit message (Collapse)Author
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.
2021-05-24Replace suffix rule with pattern rule.Arun Isaac
Suffix rules are deprecated and should not be used. Pattern rules are clearer and more general. * Makefile.am: Replace suffix rule to build scheme files with pattern rule.
2021-05-24Install ccwl script.Arun Isaac
* Makefile.am (bin_SCRIPTS): Add scripts/ccwl.
2021-05-23Add manual.Arun Isaac
* doc/ccwl.texi: New file. * Makefile.am (bin_SCRIPTS): Add doc/ccwl.texi.
2021-04-26Run tests in autotools build system.Arun Isaac
* build-aux/test-driver.scm.in: New file. * configure.ac: Generate build-aux/test-driver.scm. * Makefile.am (TEST_EXTENSIONS): Add .scm. (SCM_TESTS): Add tests/ccwl.scm and tests/yaml.scm. (TESTS): Set to SCM_TESTS. (EXTRA_DIST): Distribute test files.
2021-04-26Add autotools build system.Arun Isaac
* Makefile.am, bootstrap.sh, configure.ac, pre-inst-env.in: New files.