mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-15 08:10:17 +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
|
/GRTAGS
|
||||||
/GSYMS
|
/GSYMS
|
||||||
/GTAGS
|
/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/guile], [chmod +x meta/guile])
|
||||||
AC_CONFIG_FILES([meta/uninstalled-env], [chmod +x meta/uninstalled-env])
|
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/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],
|
AC_CONFIG_FILES([libguile/guile-snarf],
|
||||||
[chmod +x libguile/guile-snarf])
|
[chmod +x libguile/guile-snarf])
|
||||||
AC_CONFIG_FILES([libguile/guile-doc-snarf],
|
AC_CONFIG_FILES([libguile/guile-doc-snarf],
|
||||||
|
|
|
@ -20,10 +20,11 @@
|
||||||
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
## write to the Free Software Foundation, Inc., 51 Franklin Street,
|
||||||
## Fifth Floor, Boston, MA 02110-1301 USA
|
## Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
bin_SCRIPTS=guile-config guile-tools
|
bin_SCRIPTS = guile-config
|
||||||
EXTRA_DIST= $(bin_SCRIPTS) \
|
EXTRA_DIST= $(bin_SCRIPTS) \
|
||||||
guile.m4 ChangeLog-2008 \
|
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
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
pkgconfig_DATA = guile-2.0.pc
|
pkgconfig_DATA = guile-2.0.pc
|
||||||
|
|
|
@ -25,6 +25,12 @@ exec guile $GUILE_FLAGS -e '(@@ (guile-tools) main)' -s "$0" "$@"
|
||||||
|
|
||||||
(define-module (guile-tools))
|
(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
|
;; We can't import srfi-1, unfortunately, as we are used early in the
|
||||||
;; boot process, before the srfi-1 shlib is built.
|
;; boot process, before the srfi-1 shlib is built.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/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.
|
# This file is part of GUILE.
|
||||||
#
|
#
|
||||||
|
@ -112,6 +112,7 @@ export PKG_CONFIG_PATH
|
||||||
# handle PATH (no clobber)
|
# handle PATH (no clobber)
|
||||||
PATH="${top_builddir}/libguile:${PATH}"
|
PATH="${top_builddir}/libguile:${PATH}"
|
||||||
PATH="${top_srcdir}/meta:${PATH}"
|
PATH="${top_srcdir}/meta:${PATH}"
|
||||||
|
PATH="${top_builddir}/meta:${PATH}"
|
||||||
export PATH
|
export PATH
|
||||||
|
|
||||||
exec "$@"
|
exec "$@"
|
||||||
|
|
|
@ -48,6 +48,10 @@
|
||||||
(list (option '(#\h "help") #f #f
|
(list (option '(#\h "help") #f #f
|
||||||
(lambda (opt name arg result)
|
(lambda (opt name arg result)
|
||||||
(alist-cons 'help? #t 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
|
(option '(#\L "load-path") #t #f
|
||||||
(lambda (opt name arg result)
|
(lambda (opt name arg result)
|
||||||
|
@ -90,7 +94,7 @@
|
||||||
options."
|
options."
|
||||||
(args-fold args %options
|
(args-fold args %options
|
||||||
(lambda (opt name arg result)
|
(lambda (opt name arg result)
|
||||||
(format (current-error-port) "~A: unrecognized option" opt)
|
(format (current-error-port) "~A: unrecognized option" name)
|
||||||
(exit 1))
|
(exit 1))
|
||||||
(lambda (file result)
|
(lambda (file result)
|
||||||
(let ((input-files (assoc-ref result 'input-files)))
|
(let ((input-files (assoc-ref result 'input-files)))
|
||||||
|
@ -102,6 +106,13 @@ options."
|
||||||
(load-path)
|
(load-path)
|
||||||
(warnings unsupported-warning))))
|
(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)
|
(define (show-warning-help)
|
||||||
(format #t "The available warning types are:~%~%")
|
(format #t "The available warning types are:~%~%")
|
||||||
(for-each (lambda (wt)
|
(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.
|
Note that autocompilation will be turned off.
|
||||||
|
|
||||||
Report bugs to <guile-user@gnu.org>.~%")
|
Report bugs to <~A>.~%"
|
||||||
|
%guile-bug-report-address)
|
||||||
(exit 0)))
|
(exit 0)))
|
||||||
|
|
||||||
(set! %load-path (append load-path %load-path))
|
(set! %load-path (append load-path %load-path))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue