summaryrefslogtreecommitdiff
path: root/module/scripts
AgeCommit message (Collapse)AuthorFilesLines
2013-08-29,xx for RTL imagesAndy Wingo1-9/+1
* 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.
2013-08-29add ability to disassemble ELF imagesAndy Wingo1-3/+7
* 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.
2012-06-22instead of our custom .go format, use elfAndy Wingo1-2/+2
* 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.
2012-01-26Fix a couple of warnings.Ludovic Courtès1-1/+2
* module/scripts/list.scm: Use SRFI-1. * module/system/repl/error-handling.scm: Use (ice-9 format).
2011-11-22Add a `--target' option to `guild compile'.Ludovic Courtès1-7/+17
* 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.
2011-08-19better guild help FOOAndy Wingo1-21/+61
* 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.
2011-07-23Change `guild --help' and `--version' output to be more GNUish.Ludovic Courtès1-6/+8
* 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.
2011-07-23Export `main' from (scripts help).Ludovic Courtès1-1/+2
* module/scripts/help.scm: Export `main'.
2011-07-23add support for guild help FOOAndy Wingo1-17/+53
* module/scripts/help.scm (main): Add support for guild help FOO.
2011-07-23add (scripts help)Andy Wingo2-35/+117
* 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.
2011-07-23more work on "guild list"Andy Wingo19-25/+83
* 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.
2011-07-23remove scripts PROGRAMAndy Wingo1-40/+0
* 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.
2011-07-23a prettier `guild list'Andy Wingo1-6/+31
* 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.
2011-05-31rename `guile-tools' to `guild'Andy Wingo3-7/+7
* 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.
2011-05-26Reveal guile-tools's inner simplicity...Neil Jerram1-0/+83
...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.
2011-03-25Remove statements about scripts/* that are no longer trueNeil Jerram1-18/+5
* 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.
2011-02-13Add `*current-warning-prefix*'.Ludovic Courtès1-5/+6
* 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.
2011-02-13autocompile -> auto-compileAndy Wingo1-3/+3
* 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.
2010-10-27Have "frisk" recognize `#:use-module' and `#:autoload'.Ludovic Courtès1-3/+3
* module/scripts/frisk.scm (grok-proc): Support keywords `#:use-module' and `#:autoload'.
2010-10-13Placate `-Wformat'.Ludovic Courtès1-2/+1
* module/scripts/compile.scm (fail): Use a fancy format string instead of a non-literal one.
2010-09-24remove a number of debug optionsAndy Wingo1-2/+2
* 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.
2010-07-22[maint] Remove unused script guile-doc-snarf.Thien-Thi Nguyen1-1/+1
* 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.
2010-01-17fix doc snarfing with fedora 12Andy Wingo1-0/+11
* 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)).
2010-01-11Provide Guile-friendly `coding:' meta-data.Ludovic Courtès1-6/+2
* 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.
2009-09-21Remove unused variables in ice-9/goops/srfi/scripts.Ludovic Courtès1-2/+1
* 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.
2009-08-15Add proper `--help' and `--version' for `guile-tools compile'.Ludovic Courtès1-2/+14
* 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'.
2009-07-31Add `(system base message)', a simple warning framework.Ludovic Courtès1-2/+32
* 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.
2009-06-19Fix "guile-tools disassemble".Ludovic Courtès1-6/+7
* module/scripts/disassemble.scm (disassemble): Accept a variable number of arguments. Invoke the right `disassemble' procedure.
2009-06-17Complete changing license to LGPLv3+Neil Jerram19-133/+133
(Still guile-readline to do, but that will all be GPLv3+.)
2009-06-05disable autocompilation when running guile-tools compileAndy Wingo1-0/+3
* module/scripts/compile.scm (compile): Disable autocompilation when running guile-tools compile.
2009-04-20scripts take rest argsAndy Wingo2-3/+3
* 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.
2009-04-20fix build errors on fresh checkoutAndy Wingo1-1/+1
* 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.
2009-04-17guile-tools is a scheme script that loads scheme modulesAndy Wingo21-0/+3919
* 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.