mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-26 13:10:22 +02:00
Add compiled guile-tools program
For systems that do not have a posix shell. * configure.ac (GUILE_TOOLS_EXE): new conditional * libguile/Makefile.am (guile-tools)[GUILE_TOOLS_EXE]: new binary target * libguile/guile-tools.c: new file * meta/Makefile.am (guile.scm): new data [!GUILE_TOOLS_EXE](install-exec-hook): don't alias guile-tools to guild (CLEANFILES): add guild.exe
This commit is contained in:
parent
9ae3069437
commit
08e1876d71
4 changed files with 57 additions and 2 deletions
|
@ -55,6 +55,10 @@ ETAGS_ARGS = --regex='/SCM_\(GLOBAL_\)?\(G?PROC\|G?PROC1\|SYMBOL\|VCELL\|CONST_L
|
|||
lib_LTLIBRARIES = libguile-@GUILE_EFFECTIVE_VERSION@.la
|
||||
bin_PROGRAMS = guile
|
||||
|
||||
if GUILE_TOOLS_EXE
|
||||
bin_PROGRAMS += guile-tools$(EXEEXT)
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = guile_filter_doc_snarfage gen-scmconfig
|
||||
|
||||
gen_scmconfig_SOURCES = gen-scmconfig.c
|
||||
|
@ -477,6 +481,13 @@ EXTRA_libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES = \
|
|||
locale-categories.h \
|
||||
mini-gmp.h
|
||||
|
||||
if GUILE_TOOLS_EXE
|
||||
guile_tools_SOURCES = guile-tools.c
|
||||
guile_tools_CFLAGS = $(GUILE_CFLAGS) $(AM_CFLAGS)
|
||||
guile_tools_LDADD = libguile-@GUILE_EFFECTIVE_VERSION@.la $(gnulib_library)
|
||||
guile_tools_LDFLAGS = $(GUILE_CFLAGS)
|
||||
endif
|
||||
|
||||
## delete guile-snarf.awk from the installation bindir, in case it's
|
||||
## lingering there due to an earlier guile version not having been
|
||||
## wiped out.
|
||||
|
|
25
libguile/guile-tools.c
Normal file
25
libguile/guile-tools.c
Normal file
|
@ -0,0 +1,25 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
# include <config.h>
|
||||
#endif
|
||||
|
||||
#include <locale.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <libguile.h>
|
||||
|
||||
static void
|
||||
inner_main (void *closure SCM_UNUSED, int argc, char **argv)
|
||||
{
|
||||
SCM mainproc;
|
||||
|
||||
scm_c_use_module ("guild");
|
||||
mainproc = scm_c_private_ref("guild", "main");
|
||||
scm_call_1 (mainproc, scm_program_arguments());
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
setlocale (LC_ALL, "");
|
||||
scm_boot_guile (argc, argv, inner_main, 0);
|
||||
return 0;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue