summaryrefslogtreecommitdiff
path: root/module/scripts
Commit message (Expand)AuthorAgeFilesLines
* Bump user-visible copyright years to 2020...* module/ice-9/command-line.scm (version-etc): * module/scripts/compile.scm (show-version): Bump to 2020. Andy Wingo2020-03-071-2/+2
* Remove redefinition of when & unless in snarf-check-and-output-texi...* module/scripts/snarf-check-and-output-texi.scm (when, unless): removed Mike Gran2019-02-091-9/+1
* compile: Update copyright year....* module/scripts/compile.scm (show-version): Update copyright year. Ludovic Courtès2018-07-191-1/+1
* compile: Improve error message....* module/scripts/compile.scm (parse-args): Add missing newline in "unrecognized option" message. Ludovic Courtès2018-07-191-1/+1
* compile: Add '-x' flag....* module/scripts/compile.scm (%options, compile): Add '-x'. * doc/ref/api-evaluation.texi (Compilation): Document it. Ludovic Courtès2018-07-191-1/+6
* compile: Load language modules upfront....Fixes a bug whereby "guild compile --target=arm-linux-gnueabihf --from=elisp ... language/elisp/boot.el" would fail with an exception from 'load-thunk-from-memory' while trying to load (language elisp spec) from the guile-being-compiled instead of using that of the guile-for-build. The problem did not manifest with --from=scheme because (language scheme spec) happened to be already loaded before we had changed %load-path. * module/scripts/compile.scm (compile): Add calls to 'lookup-language'. Ludovic Courtès2017-12-221-1/+9
* scripts: help: Fix reference to the "Using Guile Tools" node....Fixes <https://bugs.gnu.org/28835>. * module/scripts/help.scm (list-commands): Fix reference to the "Using Guile Tools" node. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer2017-11-221-1/+1
* Wire up `guild compile -O0 foo.scm'...* module/scripts/compile.scm (%options): Resurrect -O option and make it follow GCC, more or less. The default is equivalent to -O2. * module/language/cps/compile-bytecode.scm (lower-cps): * module/language/cps/optimize.scm (optimize-higher-order-cps): Move split-rec to run unconditionally for now, as closure conversion fails without it. (define-optimizer): Only verify the result if we are debugging, to save time. (cps-default-optimization-options): New exported procedure. * module/language/tree-il/optimize.scm (tree-il-default-optimization-options): New exported procedure. Andy Wingo2015-10-221-8/+69
* Merge branch 'stable-2.0'...Conflicts: benchmark-suite/benchmarks/ports.bm libguile/async.h libguile/bytevectors.c libguile/foreign.c libguile/gsubr.c libguile/srfi-1.c libguile/vm-engine.h libguile/vm-i-scheme.c module/Makefile.am module/language/tree-il/analyze.scm module/language/tree-il/peval.scm module/scripts/compile.scm module/scripts/disassemble.scm test-suite/tests/asm-to-bytecode.test test-suite/tests/peval.test test-suite/tests/rdelim.test Mark H Weaver2014-09-301-1/+9
|\
| * guild disassemble: Use #:prefix instead of #:renamer....* module/scripts/disassemble.scm: Use #:prefix instead of #:renamer in #:use-module clause. Mark H Weaver2014-09-201-3/+2
| * 'guild compile' doesn't leave temporary files behind it....* module/scripts/compile.scm (compile): Add 'sigaction' call. * test-suite/standalone/test-guild-compile: New file. * test-suite/standalone/Makefile.am (check_SCRIPTS, TESTS): Add it. Ludovic Courtès2014-06-031-1/+9
* | Merge branch 'stable-2.0'...Conflicts: GUILE-VERSION NEWS guile-readline/ice-9/readline.scm libguile/async.c libguile/backtrace.c libguile/deprecated.h libguile/gc-malloc.c libguile/gdbint.c libguile/init.c libguile/ioext.c libguile/mallocs.c libguile/print.c libguile/rw.c libguile/scmsigs.c libguile/script.c libguile/simpos.c libguile/snarf.h libguile/strports.c libguile/threads.c libguile/vm-i-scheme.c libguile/vm-i-system.c module/srfi/srfi-18.scm test-suite/Makefile.am test-suite/standalone/test-num2integral.c Mark H Weaver2014-04-251-13/+2
|\|
| * Make snarfing tools more robust to varied C preprocessor behavior....* libguile/guile-snarf.in (modern_snarf): Rewrite sed script to cope with newlines in the snarfed code segments, or multiple code segments on the same line. * module/scripts/snarf-check-and-output-texi.scm (process-stream): Strip all 'hash' tokens from the stream. (do-command): Remove special cases that handled 'hash' tokens in a few places. Mark H Weaver2014-03-061-13/+2
* | Rename "RTL" to "bytecode"..."RTL" didn't make any sense, and now that there's no other bytecode to disambiguate against, just call it bytecode. * module/Makefile.am: * module/ice-9/eval-string.scm: * module/language/bytecode.scm: * module/language/bytecode/spec.scm: * module/language/cps/arities.scm: * module/language/cps/compile-bytecode.scm: * module/language/cps/compile-rtl.scm: * module/language/cps/contification.scm: * module/language/cps/elide-values.scm: * module/language/cps/primitives.scm: * module/language/cps/reify-primitives.scm: * module/language/cps/spec.scm: * module/language/cps/specialize-primcalls.scm: * module/language/rtl.scm: * module/language/rtl/spec.scm: * module/scripts/compile.scm: * module/system/base/compile.scm: * module/system/repl/common.scm: * module/system/vm/assembler.scm: * module/system/vm/debug.scm: * module/system/vm/disassembler.scm: * module/system/vm/dwarf.scm: * test-suite/tests/cross-compilation.test: * test-suite/tests/dwarf.test: * test-suite/tests/rtl-compilation.test: * test-suite/tests/rtl.test: * test-suite/vm/run-vm-tests.scm: Fixups. Andy Wingo2013-12-021-2/+2
* | Miscellaneous fixups related to objcode removal....* module/scripts/compile.scm: Fix --help message. * module/system/repl/command.scm (disassemble): Fix error message. * module/system/vm/frame.scm: Remove objcode import. * module/system/vm/objcode.scm: Remove some exports related to the objcode type. Andy Wingo2013-11-081-1/+1
* | Default to compiling to RTL...* module/ice-9/eval-string.scm (eval-string) * module/language/tree-il/spec.scm (tree-il) * module/scripts/compile.scm (compile) * module/system/base/compile.scm (compile-file, read-and-compile) * module/system/repl/common.scm (repl-compile, repl-prepare-eval-thunk): Default to compiling to RTL. * module/language/rtl/spec.scm (rtl->value): Add value compiler. Andy Wingo2013-10-311-2/+2
* | ,xx for RTL images...* module/scripts/disassemble.scm (disassemble): * module/system/vm/disassembler.scm (disassemble-file): Factor disassemble-file out. * module/system/repl/command.scm (disassemble-file): Map ,xx to disassemble RTL images. Andy Wingo2013-08-291-9/+1
* | add ability to disassemble ELF images...* module/scripts/disassemble.scm (disassemble): Update to work with RTl (and only RTL, as that's the future). * module/system/vm/debug.scm (for-each-elf-symbol): New public interface. (debug-context-from-image): New helper. (find-debug-context): Use the helper. * module/system/vm/disassembler.scm (disassemble-image): New public interface. Andy Wingo2013-08-291-3/+7
* | instead of our custom .go format, use elf...* libguile/objcodes.c: Change to expect objcode on disk to be embedded in ELF instead of having the funky cookie. (to_native_order): Use already existing SCM_BYTE_ORDER style byte order instead of chars. (bytecode_to_objcode): No need for word_size arg. (scm_bytecode_to_objcode, scm_objcode_to_bytecode): Take optional endianness arg instead of sometimes using target-endianness. (scm_load_objcode, scm_write_objcode, scm_bytecode_to_native_objcode): Remove. * libguile/objcodes.h: Adapt. * libguile/vm.c (scm_load_compiled_with_vm): Use scm_load_thunk_from_file. (make_boot_program): Adapt to use scm_bytecode_to_objcode with endianness arg. * module/Makefile.am (OBJCODE_LANG_SOURCES): Add (language objcode elf). * module/language/objcode/elf.scm: New module, embeds objcode in ELF. * module/language/bytecode/spec.scm (compile-objcode): (decompile-objcode): Use (target-endianness). * module/language/objcode/spec.scm: use (language objcode elf) for write-objcode. * module/scripts/disassemble.scm (disassemble): * module/system/repl/command.scm (disassemble-file): Use load-thunk-from-file. * module/system/vm/objcode.scm: Remove load-objcode and write-objcode. * test-suite/tests/asm-to-bytecode.test (test-target): Adapt to the new ELF world. Andy Wingo2012-06-221-2/+2
|/
* Fix a couple of warnings....* module/scripts/list.scm: Use SRFI-1. * module/system/repl/error-handling.scm: Use (ice-9 format). Ludovic Courtès2012-01-261-1/+2
* Add a `--target' option to `guild compile'....* module/scripts/compile.scm (%options)["--target"]: New option. (show-version): Update copyright year. (compile): Use `with-target' to install the target. * doc/ref/api-evaluation.texi (Compilation): Mention `--target' option. Ludovic Courtès2011-11-221-7/+17
* better guild help FOO...* module/scripts/help.scm (show-help, show-summary, show-usage): Grovel for %synopsis and %help variables as well, and show them appropriately. Export these routines for other script modules to use. Needs documentation. Andy Wingo2011-08-191-21/+61
* Change `guild --help' and `--version' output to be more GNUish....* meta/guild.in (display-version): Display the version, not the effective version. * module/scripts/help.scm (list-commands)[help]: Add proper footer, as per the GCS. Ludovic Courtès2011-07-231-6/+8
* Export `main' from (scripts help)....* module/scripts/help.scm: Export `main'. Ludovic Courtès2011-07-231-1/+2
* add support for guild help FOO...* module/scripts/help.scm (main): Add support for guild help FOO. Andy Wingo2011-07-231-17/+53
* add (scripts help)...* meta/guild.in (display-version): Use (ice-9 command-line)'s version-etc. (main): Dispatch --help to guild help. * module/scripts/help.scm: New file, a copy of list.scm, but with a better name. * module/Makefile.am: Add help.scm to the list. * module/scripts/list.scm: Change to be an alias to "help". (list-scripts): Restore this API. Andy Wingo2011-07-232-35/+117
* more work on "guild list"...* module/scripts/: Add %summary entries, and in many cases, %include-in-guild-list entries to inhibit a script from appearing in "guild list". Update list.scm to respect this new variable. Andy Wingo2011-07-2319-25/+83
* remove scripts PROGRAM...* module/scripts/PROGRAM.scm: Remove this useless template, which was cluttering `guild list'. We'll perhaps cull the list a bit more in 2.2. * module/Makefile.am: Adapt. Andy Wingo2011-07-231-40/+0
* a prettier `guild list'...* module/scripts/list.scm (strip-extensions): Don't list programs without extensions. (main): Be prettier. Parse out a %summary from modules, for a brief synopsis. Andy Wingo2011-07-231-6/+31
* rename `guile-tools' to `guild'...* configure.ac: Look for ln -s. Write out `guild' instead of `guile-tools'. * meta/Makefile.am (install-data-hook): Link the installed `guild' to the backward-compatible `guile-tools' name. (bin_SCRIPTS, EXTRA_DIST): Fix up for guild change. * meta/guild.in: Moved here from `guile-tools.in'. * doc/ref/Makefile.am (autoconf-macros.texi): * doc/ref/api-evaluation.texi (Compilation): * doc/ref/autoconf.texi (Autofrisk, Using Autofrisk): * doc/ref/mod-getopt-long.texi (getopt-long Reference): * doc/ref/tools.texi (Miscellaneous Tools, Executable Modules): Minimal doc update. * .gitignore: * am/guilec (.scm.go): * libguile/Makefile.am (snarf2checkedtexi): * module/Makefile.am (ice-9/psyntax-pp.go): Update makefiles, etc. * module/scripts/README: * module/scripts/lint.scm: * module/scripts/list.scm: Update commentaries. Andy Wingo2011-05-313-7/+7
* Reveal guile-tools's inner simplicity.........by not using its own-rolled getopt, and moving the `list' function to a separate script * meta/guile-tools.in: Use (ice-9 getopt-long). (directory-files, strip-extensions, unique, find-submodules, list-scripts): Deleted (and moved to new `list.scm' file). (getopt): Deleted. (main): Use getopt-long. Default to calling the `list' script if no script is specified. * module/scripts/list.scm: New script. * module/Makefile.am (SCRIPTS_SOURCES): Add list.scm. Neil Jerram2011-05-261-0/+83
* Remove statements about scripts/* that are no longer true...* doc/ref/tools.texi (Executable Modules): Say "guile-tools modules" instead of "executable modules". Remove obsolete statements about not ending in .scm, being executable, and beginning with shell script invocation sequence. * module/scripts/README: Ditto. Neil Jerram2011-03-251-18/+5
* Add `*current-warning-prefix*'....* module/system/base/message.scm (*current-warning-prefix*): New variable. (%warning-types): Honor `*current-warning-prefix*'. * module/scripts/compile.scm (compile): Use an empty `*current-warning-prefix*'. * module/system/repl/common.scm (repl-compile): Likewise. * test-suite/tests/tree-il.test (call-with-warnings): Likewise. Ludovic Courtès2011-02-131-5/+6
* autocompile -> auto-compile...* NEWS: * check-guile.in: * doc/guile.1: * doc/ref/scheme-scripts.texi: * libguile/init.c: * libguile/load.c: * libguile/load.h: * libguile/script.c: * module/Makefile.am: * module/ice-9/boot-9.scm: * module/scripts/compile.scm: * module/system/base/compile.scm: * test-suite/Makefile.am: * test-suite/tests/popen.test: Change "autocompile" to "auto-compile" or "auto_compile", as appropriate, in variable names, function names, command line arguments, and the documentation. Andy Wingo2011-02-131-3/+3
* Have "frisk" recognize `#:use-module' and `#:autoload'....* module/scripts/frisk.scm (grok-proc): Support keywords `#:use-module' and `#:autoload'. Ludovic Courtès2010-10-271-3/+3
* Placate `-Wformat'....* module/scripts/compile.scm (fail): Use a fancy format string instead of a non-literal one. Ludovic Courtès2010-10-131-2/+1
* remove a number of debug options...* libguile/private-options.h (SCM_BREAKPOINTS_P, SCM_TRACE_P) (SCM_REC_PROCNAMES_P, SCM_BACKTRACE_INDENT, SCM_N_FRAMES) (SCM_BACKTRACE_MAXDEPTH, SCM_DEVAL_P): Remove these internal names. * libguile/eval.c (scm_debug_opts): Remove the corresponding debug options -- breakpoints, trace, procnames, indent, frames, maxdepth, and debug. * libguile/debug.c (scm_debug_options): Remove SCM_N_FRAMES check. * test-suite/lib.scm (with-debugging-evaluator*): * module/scripts/summarize-guile-TODO.scm: * module/statprof.scm (statprof-reset): * module/ice-9/boot-9.scm (turn-on-debugging): Remove useless debug-enable 'debug calls. * module/ice-9/deprecated.scm (debug-enable): As it seems that 'debug is a particulatly common option that we just removed, add a deprecation shim. * doc/ref/api-options.texi (Debugger options): Update the set of debug options. Andy Wingo2010-09-241-2/+2
* [maint] Remove unused script guile-doc-snarf....* doc/ref/tools.texi (Doc Snarfing): Don't mention guile-doc-snarf. * configure.ac (libguile/guile-doc-snarf): Delete ‘GUILE_CONFIG_SCRIPT’. * libguile/Makefile.am (noinst_SCRIPTS): Remove guile-doc-snarf. * libguile/.gitignore: Remove guile-doc-snarf. * libguile/guile-doc-snarf.in: Delete file. * module/scripts/doc-snarf.scm: Comment munging; nfc. * AUTHORS: Update. Thien-Thi Nguyen2010-07-221-1/+1
* fix doc snarfing with fedora 12...* module/scripts/snarf-check-and-output-texi.scm (process-multiline-directive): Be more accepting of source location markers in the preprocessed source, by adding a couple cases in which they can appear. Not foolproof, but it does adapt to what new GCCs are putting out (e.g. cpp (GCC) 4.4.2 20091222 (Red Hat 4.4.2-20)). Andy Wingo2010-01-171-0/+11
* Provide Guile-friendly `coding:' meta-data....* module/ice-9/i18n.scm, module/rnrs/bytevector.scm, module/rnrs/io/ports.scm, module/scripts/compile.scm, module/srfi/srfi-35.scm, module/srfi/srfi-88.scm: Write `coding:' comment at the top. Ludovic Courtès2010-01-111-6/+2
* Remove unused variables in ice-9/goops/srfi/scripts....* module/ice-9/boot-9.scm (scm-style-repl)[-abort]: Remove. * module/oop/goops.scm (class)[slot-defs]: Remove. (compute-slot-accessors)[name]: Remove. (compute-get-n-set)[env]: Remove. * module/oop/goops/active-slot.scm (compute-get-n-set)[env, name]: Remove. * module/oop/goops/dispatch.scm (cache-try-hash!)[max-misses]: Remove. * module/oop/goops/save.scm (make-mapper)[dims]: Remove. * module/scripts/autofrisk.scm (>>checks)[prog]: Remove. * module/srfi/srfi-19.scm (priv:read-directives)[ireaderf, eireader4]: Remove. Ludovic Courtès2009-09-211-2/+1
* Add proper `--help' and `--version' for `guile-tools compile'....* configure.ac: Produce `meta/guile-tools'. * meta/Makefile.am (EXTRA_DIST): Add `guile-tools.in'. (bin_SCRIPTS): Remove `guile-tools'. * meta/uninstalled-env.in (PATH): Add "${top_builddir}/meta". * module/scripts/compile.scm (%options): Add `--version'. (parse-args): Show the offending option name upon error. (show-version): New. (compile): Use `%guile-bug-report-address'. Ludovic Courtès2009-08-151-2/+14
* Add `(system base message)', a simple warning framework....* module/Makefile.am (SOURCES): Add `system/base/message.scm'. * module/scripts/compile.scm (%options): Add `--warn'. (parse-args): Update default value for `warnings'. (show-warning-help): New procedure. (compile)[compile-opts]: Add `#:warnings'. Update help message. * module/system/base/compile.scm (compile): Sanity-check the requested warnings. * module/system/base/message.scm: New file. Ludovic Courtès2009-07-311-2/+32
* Fix "guile-tools disassemble"....* module/scripts/disassemble.scm (disassemble): Accept a variable number of arguments. Invoke the right `disassemble' procedure. Ludovic Courtès2009-06-191-6/+7
* Complete changing license to LGPLv3+...(Still guile-readline to do, but that will all be GPLv3+.) Neil Jerram2009-06-1719-133/+133
* disable autocompilation when running guile-tools compile...* module/scripts/compile.scm (compile): Disable autocompilation when running guile-tools compile. Andy Wingo2009-06-051-0/+3
* scripts take rest args...* meta/guile-tools: Instead of fixing scripts I should have been fixing the script runner. * module/scripts/compile.scm: * module/scripts/snarf-guile-m4-docs.scm: Fix to take rest args. Andy Wingo2009-04-202-3/+3
* fix build errors on fresh checkout...* meta/guile-tools: We can't use srfi-1, because on a fresh checkout the srfi-1 shlib isn't built yet. Bummer. * meta/uninstalled-env.in: Fix up the DYLD lines for BSDen. * module/scripts/snart-guile-m4-docs.scm: Fix expected arguments. Andy Wingo2009-04-201-1/+1
* guile-tools is a scheme script that loads scheme modules...* meta/guile-tools: Changed to be a scheme script. Instead of looking for executables in a "scripts dir", we just look for modules in (scripts), and load the modules directly. * module/Makefile.am: * module/scripts/: Move the scripts into module/ so they can be compiled. Rename scripts from `foo' to `foo.scm'. * libguile/Makefile.am: Invoke the snarf->texi code via guile-tools. * configure.in: * .gitignore: Update for changes. Andy Wingo2009-04-1721-0/+3919