--- guile-gnutls-v5.0.1/guile/src/Makefile.am +++ guile-gnutls-v5.0.1/guile/src/Makefile.am @@ -23,7 +23,8 @@ EXTRA_DIST = \ make-enum-map.scm make-smob-types.scm \ - make-enum-header.scm make-smob-header.scm + make-enum-header.scm make-smob-header.scm \ + guile-static-main.c # Files generated by the (gnutls build ...) modules. GENERATED_BINDINGS = \ @@ -45,10 +46,26 @@ guile_gnutls_v_2_la_SOURCES = core.c errors.c utils.c guile_gnutls_v_2_la_CFLAGS = \ $(AM_CFLAGS) $(GNULIB_CFLAGS) $(GUILE_CFLAGS) $(GNUTLS_CFLAGS) +guile_gnutls_v_2_la_DEPENDENCIES = $(BUILT_SOURCES) guile_gnutls_v_2_la_LIBADD = \ $(GNUTLS_LIBS) \ $(GUILE_LDFLAGS) +if !ENABLE_SHARED +lib_LIBRARIES = libguile-gnutls-static.a +libguile_gnutls_static_a_SOURCES = $(guile_gnutls_v_2_la_SOURCES) +libguile_gnutls_static_a_CPPFLAGS = $(AM_CPPFLAGS) +libguile_gnutls_static_a_CFLAGS = $(guile_gnutls_v_2_la_CFLAGS) +libguile_gnutls_static_a_DEPENDENCIES = $(BUILT_SOURCES) + +bin_PROGRAMS = guile +guile_SOURCES = guile-static-main.c +guile_CPPFLAGS = $(AM_CPPFLAGS) +guile_CFLAGS = $(AM_CFLAGS) $(GNULIB_CFLAGS) $(GUILE_CFLAGS) $(GNUTLS_CFLAGS) +guile_LDFLAGS = -static +guile_LDADD = libguile-gnutls-static.a $(GUILE_LDFLAGS) $(GNUTLS_LIBS) +endif !ENABLE_SHARED + AM_CPPFLAGS = \ -I$(top_srcdir)/lib/includes \ -I$(top_builddir)/lib/includes \ --- /dev/null +++ guile-gnutls-v5.0.1/guile/src/guile-static-main.c @@ -0,0 +1,18 @@ +#include + +void scm_init_gnutls(void); + +static void +inner_main(void *closure, int argc, char **argv) +{ + (void) closure; + scm_init_gnutls(); + scm_shell(argc, argv); +} + +int +main(int argc, char **argv) +{ + scm_boot_guile(argc, argv, inner_main, NULL); + return 0; +}