mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-14 23:50:19 +02:00
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'.
This commit is contained in:
parent
acf04ab462
commit
54b38caf19
6 changed files with 29 additions and 7 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -113,3 +113,4 @@ INSTALL
|
|||
/GRTAGS
|
||||
/GSYMS
|
||||
/GTAGS
|
||||
/meta/guile-tools
|
||||
|
|
|
@ -1546,6 +1546,7 @@ AC_CONFIG_FILES([benchmark-guile], [chmod +x benchmark-guile])
|
|||
AC_CONFIG_FILES([meta/guile], [chmod +x meta/guile])
|
||||
AC_CONFIG_FILES([meta/uninstalled-env], [chmod +x meta/uninstalled-env])
|
||||
AC_CONFIG_FILES([meta/gdb-uninstalled-guile], [chmod +x meta/gdb-uninstalled-guile])
|
||||
AC_CONFIG_FILES([meta/guile-tools], [chmod +x meta/guile-tools])
|
||||
AC_CONFIG_FILES([libguile/guile-snarf],
|
||||
[chmod +x libguile/guile-snarf])
|
||||
AC_CONFIG_FILES([libguile/guile-doc-snarf],
|
||||
|
|
|
@ -20,10 +20,11 @@
|
|||
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
bin_SCRIPTS=guile-config guile-tools
|
||||
bin_SCRIPTS = guile-config
|
||||
EXTRA_DIST= $(bin_SCRIPTS) \
|
||||
guile.m4 ChangeLog-2008 \
|
||||
guile-2.0.pc.in guile-2.0-uninstalled.pc.in
|
||||
guile-2.0.pc.in guile-2.0-uninstalled.pc.in \
|
||||
guile-tools.in
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = guile-2.0.pc
|
||||
|
|
|
@ -25,6 +25,12 @@ exec guile $GUILE_FLAGS -e '(@@ (guile-tools) main)' -s "$0" "$@"
|
|||
|
||||
(define-module (guile-tools))
|
||||
|
||||
;; Hack to provide scripts with the bug-report address.
|
||||
(module-define! the-scm-module
|
||||
'%guile-bug-report-address
|
||||
"@PACKAGE_BUGREPORT@")
|
||||
|
||||
|
||||
;; We can't import srfi-1, unfortunately, as we are used early in the
|
||||
;; boot process, before the srfi-1 shlib is built.
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2003, 2006, 2008 Free Software Foundation
|
||||
# Copyright (C) 2003, 2006, 2008, 2009 Free Software Foundation
|
||||
#
|
||||
# This file is part of GUILE.
|
||||
#
|
||||
|
@ -112,6 +112,7 @@ export PKG_CONFIG_PATH
|
|||
# handle PATH (no clobber)
|
||||
PATH="${top_builddir}/libguile:${PATH}"
|
||||
PATH="${top_srcdir}/meta:${PATH}"
|
||||
PATH="${top_builddir}/meta:${PATH}"
|
||||
export PATH
|
||||
|
||||
exec "$@"
|
||||
|
|
|
@ -48,6 +48,10 @@
|
|||
(list (option '(#\h "help") #f #f
|
||||
(lambda (opt name arg result)
|
||||
(alist-cons 'help? #t result)))
|
||||
(option '("version") #f #f
|
||||
(lambda (opt name arg result)
|
||||
(show-version)
|
||||
(exit 0)))
|
||||
|
||||
(option '(#\L "load-path") #t #f
|
||||
(lambda (opt name arg result)
|
||||
|
@ -90,7 +94,7 @@
|
|||
options."
|
||||
(args-fold args %options
|
||||
(lambda (opt name arg result)
|
||||
(format (current-error-port) "~A: unrecognized option" opt)
|
||||
(format (current-error-port) "~A: unrecognized option" name)
|
||||
(exit 1))
|
||||
(lambda (file result)
|
||||
(let ((input-files (assoc-ref result 'input-files)))
|
||||
|
@ -102,6 +106,13 @@ options."
|
|||
(load-path)
|
||||
(warnings unsupported-warning))))
|
||||
|
||||
(define (show-version)
|
||||
(format #t "compile (GNU Guile) ~A~%" (version))
|
||||
(format #t "Copyright (C) 2009 Free Software Foundation, Inc.
|
||||
License LGPLv3+: GNU LGPL version 3 or later <http://gnu.org/licenses/lgpl.html>.
|
||||
This is free software: you are free to change and redistribute it.
|
||||
There is NO WARRANTY, to the extent permitted by law.~%"))
|
||||
|
||||
(define (show-warning-help)
|
||||
(format #t "The available warning types are:~%~%")
|
||||
(for-each (lambda (wt)
|
||||
|
@ -143,7 +154,8 @@ Compile each Guile source file FILE into a Guile object.
|
|||
|
||||
Note that autocompilation will be turned off.
|
||||
|
||||
Report bugs to <guile-user@gnu.org>.~%")
|
||||
Report bugs to <~A>.~%"
|
||||
%guile-bug-report-address)
|
||||
(exit 0)))
|
||||
|
||||
(set! %load-path (append load-path %load-path))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue