Extended interface to Ciao compiler
Author(s): José F. Morales, Ciao Deveveloper Team.This is a wrapper around ciaoc (and other Ciao tools) that extends the functionality of the Ciao compiler:
- Invoke the compiler and documentation generator as a external processes
- Batch compilation of collection of modules
- Emulator generation and compilation
Usage and interface
- Library usage:
:- use_module(ciaobld(ciaoc_aux)). - Exports:
- Predicates:
invoke_lpdoc/1, invoke_ciaosh/1, invoke_ciaosh_batch/1, invoke_ciaoc/1, eng_build/3, eng_clean/2, bundle_flags_sh_file/1, promote_bootstrap/1, build_eng_exec_header/1, clean_eng_exec_header/1, create_windows_bat/6, build_cmds_list/3, build_libs/2, compile_module_list/3, runtests_dir/2, exists_and_compilable/1, sh_process_call/3, cpx_process_call/3, bootciao_process_call/3, localciao_process_call/3, builddir_clean/2, clean_bundlereg/1, clean_tree/1, clean_mod/1.
- Predicates:
- Imports:
- Application modules:
messages_aux, builder_aux, config_common, bundle_configure, bundle_hash. - System library modules:
lists, aggregates, system, system_extra, pathnames, paths_extra, messages, process, file_utils, emugen_common, terms, streams, source_tree, sort, bundle_flags, bundle_info. - Packages:
prelude, nonpure, condcomp, assertions, fsyntax, hiord, dcg.
- Application modules:
Documentation on exports
PREDICATE
Usage:promote_bootstrap(EngMainMod)
Promote the current ciaoc and products of emugen as the next bootstrap compiler (ciaoc.sta and absmach code)
Known bugs and planned improvements
- Add interface to ciaopp
- Add interface to optim_comp
- Better build plans, start several jobs (workers)