Merge branch 'master' into boehm-demers-weiser-gc
[bpt/guile.git] / libguile / Makefile.am
index fcf197a..f000f83 100644 (file)
@@ -4,20 +4,20 @@
 ##
 ##   This file is part of GUILE.
 ##
-##   GUILE is free software; you can redistribute it and/or modify
-##   it under the terms of the GNU General Public License as
-##   published by the Free Software Foundation; either version 2, or
+##   GUILE is free software; you can redistribute it and/or modify it
+##   under the terms of the GNU Lesser General Public License as
+##   published by the Free Software Foundation; either version 3, or
 ##   (at your option) any later version.
 ##
 ##   GUILE is distributed in the hope that it will be useful, but
 ##   WITHOUT ANY WARRANTY; without even the implied warranty of
 ##   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-##   GNU General Public License for more details.
+##   GNU Lesser General Public License for more details.
 ##
-##   You should have received a copy of the GNU General Public
-##   License along with GUILE; see the file COPYING.  If not, write
-##   to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
-##   Floor, Boston, MA 02110-1301 USA
+##   You should have received a copy of the GNU Lesser General Public
+##   License along with GUILE; see the file COPYING.LESSER.  If not,
+##   write to the Free Software Foundation, Inc., 51 Franklin Street,
+##   Fifth Floor, Boston, MA 02110-1301 USA
 
 AUTOMAKE_OPTIONS = gnu
 
@@ -110,9 +110,8 @@ libguile_la_SOURCES = alist.c arbiters.c async.c backtrace.c boolean.c      \
     convert.c debug.c deprecation.c                                    \
     deprecated.c discouraged.c dynwind.c eq.c error.c  \
     eval.c evalext.c extensions.c feature.c fluids.c fports.c          \
-    futures.c gc.c gc-mark.c gc-segment.c gc-malloc.c gc-card.c                \
-    gc-freelist.c gc_os_dep.c gdbint.c gettext.c gc-segment-table.c     \
-    goops.c gsubr.c            \
+    futures.c gc.c gc-malloc.c                                         \
+    gdbint.c gettext.c goops.c gsubr.c                                 \
     guardians.c hash.c hashtab.c hooks.c init.c inline.c               \
     ioext.c keywords.c lang.c list.c load.c macros.c mallocs.c         \
     modules.c numbers.c objects.c objprop.c options.c pairs.c ports.c  \
@@ -139,10 +138,9 @@ libguile_i18n_v_@LIBGUILE_I18N_MAJOR@_la_LDFLAGS = \
 DOT_X_FILES = alist.x arbiters.x async.x backtrace.x boolean.x         \
     bytevectors.x chars.x                                              \
     continuations.x debug.x deprecation.x deprecated.x discouraged.x   \
-    dynl.x dynwind.x eq.x error.x eval.x evalext.x     \
-    extensions.x feature.x fluids.x fports.x futures.x gc.x gc-mark.x  \
-    gc-segment.x gc-malloc.x gc-card.x gettext.x goops.x               \
-    gsubr.x guardians.x gc-segment-table.x                              \
+    dynl.x dynwind.x environments.x eq.x error.x eval.x evalext.x      \
+    extensions.x feature.x fluids.x fports.x futures.x gc.x            \
+    gettext.x goops.x gsubr.x guardians.x                              \
     hash.x hashtab.x hooks.x i18n.x init.x ioext.x keywords.x lang.x   \
     list.x load.x macros.x mallocs.x modules.x numbers.x objects.x     \
     objprop.x options.x pairs.x ports.x print.x procprop.x procs.x     \
@@ -164,9 +162,8 @@ DOT_DOC_FILES = alist.doc arbiters.doc async.doc backtrace.doc              \
     deprecated.doc discouraged.doc dynl.doc dynwind.doc                        \
     eq.doc error.doc eval.doc evalext.doc              \
     extensions.doc feature.doc fluids.doc fports.doc futures.doc       \
-    gc.doc goops.doc gsubr.doc gc-mark.doc gc-segment.doc \
-    gc-malloc.doc gc-card.doc gettext.doc gc-segment-table.doc          \
-    guardians.doc hash.doc hashtab.doc                                 \
+    gc.doc goops.doc gsubr.doc                                         \
+    gc-malloc.doc gettext.doc guardians.doc hash.doc hashtab.doc       \
     hooks.doc i18n.doc init.doc ioext.doc keywords.doc lang.doc                \
     list.doc load.doc macros.doc mallocs.doc modules.doc numbers.doc   \
     objects.doc objprop.doc options.doc pairs.doc ports.doc print.doc  \
@@ -220,17 +217,24 @@ noinst_HEADERS = convert.i.c                                      \
 noinst_HEADERS += vm-engine.c vm-i-system.c vm-i-scheme.c vm-i-loader.c
 
 libguile_la_DEPENDENCIES = @LIBLOBJS@
-libguile_la_LIBADD = @LIBLOBJS@ $(gnulib_library)
+libguile_la_LIBADD = @LIBLOBJS@ $(gnulib_library) $(LTLIBGMP) $(LTLIBUNISTRING)
 libguile_la_LDFLAGS = @LTLIBINTL@ -version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ -export-dynamic -no-undefined
 
+if HAVE_LD_VERSION_SCRIPT
+
+libguile_la_LDFLAGS += -Wl,--version-script="$(srcdir)/libguile.map"
+
+endif HAVE_LD_VERSION_SCRIPT
+
+
 # These are headers visible as <guile/mumble.h>
 pkginclude_HEADERS = 
 
 # These are headers visible as <libguile/mumble.h>.
 modincludedir = $(includedir)/libguile
 modinclude_HEADERS = __scm.h alist.h arbiters.h async.h backtrace.h    \
-    boolean.h bytevectors.h chars.h continuations.h convert.h          \
-    debug.h debug-malloc.h                                             \
+    boehm-gc.h bytevectors.h                                           \
+    boolean.h chars.h continuations.h convert.h debug.h debug-malloc.h \
     deprecation.h deprecated.h discouraged.h dynl.h dynwind.h          \
     eq.h error.h eval.h evalext.h extensions.h         \
     feature.h filesys.h fluids.h fports.h futures.h gc.h               \
@@ -264,7 +268,7 @@ EXTRA_DIST = ChangeLog-scm ChangeLog-threads                \
     cpp_errno.c cpp_err_symbols.in cpp_err_symbols.c                   \
     cpp_sig_symbols.c cpp_sig_symbols.in cpp_cnvt.awk                  \
     c-tokenize.lex version.h.in                                                \
-    scmconfig.h.top libgettext.h
+    scmconfig.h.top libgettext.h libguile.map
 #    $(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES) \
 #    guile-procedures.txt guile.texi
 
@@ -286,6 +290,8 @@ libpath.h: $(srcdir)/Makefile.in  $(top_builddir)/config.status
        @echo '#define SCM_PKGDATA_DIR "$(pkgdatadir)"' >> libpath.tmp
        @echo '#define SCM_LIBRARY_DIR "$(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)"'>>libpath.tmp
        @echo '#define SCM_SITE_DIR "$(pkgdatadir)/site"' >> libpath.tmp
+       @echo '#define SCM_CCACHE_DIR "$(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/ccache"' >> libpath.tmp
+       @echo '#define SCM_EFFECTIVE_VERSION "$(GUILE_EFFECTIVE_VERSION)"' >> libpath.tmp
        @echo '#define SCM_BUILD_INFO { \' >> libpath.tmp
        @echo ' { "srcdir", "'"`cd @srcdir@; pwd`"'" }, \' >> libpath.tmp
        @echo ' { "top_srcdir",    "@top_srcdir_absolute@" }, \' >> libpath.tmp
@@ -299,12 +305,13 @@ libpath.h: $(srcdir)/Makefile.in  $(top_builddir)/config.status
        @echo ' { "sharedstatedir", "@sharedstatedir@" }, \' >> libpath.tmp
        @echo ' { "localstatedir", "@localstatedir@" }, \' >> libpath.tmp
        @echo ' { "libdir",        "@libdir@" }, \' >> libpath.tmp
+       @echo ' { "ccachedir",     SCM_CCACHE_DIR }, \' >> libpath.tmp
        @echo ' { "infodir",       "@infodir@" }, \' >> libpath.tmp
        @echo ' { "mandir",        "@mandir@" }, \' >> libpath.tmp
        @echo ' { "includedir",    "@includedir@" }, \' >> libpath.tmp
-       @echo ' { "pkgdatadir",    "$(datadir)/@PACKAGE@" }, \' >> libpath.tmp
-       @echo ' { "pkglibdir",     "$(libdir)/@PACKAGE@" }, \' >> libpath.tmp
-       @echo ' { "pkgincludedir", "$(includedir)/@PACKAGE@" }, \' \
+       @echo ' { "pkgdatadir",    "@pkgdatadir@" }, \' >> libpath.tmp
+       @echo ' { "pkglibdir",     "@pkglibdir@" }, \' >> libpath.tmp
+       @echo ' { "pkgincludedir", "@pkgincludedir@" }, \' \
                >> libpath.tmp
        @echo ' { "guileversion", "@GUILE_VERSION@" }, \' >> libpath.tmp
        @echo ' { "libguileinterface", "@LIBGUILE_INTERFACE@" }, \' \
@@ -334,10 +341,8 @@ error.x: cpp_err_symbols.c
 posix.x: cpp_sig_symbols.c
 load.x: libpath.h
 
-include $(top_srcdir)/am/pre-inst-guile
-
 alldotdocfiles    = $(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES)
-snarf2checkedtexi = $(top_builddir)/meta/uninstalled-env guile-tools snarf-check-and-output-texi
+snarf2checkedtexi = GUILE_AUTO_COMPILE=0 $(top_builddir)/meta/uninstalled-env guile-tools snarf-check-and-output-texi
 dotdoc2texi       = cat $(alldotdocfiles) | $(snarf2checkedtexi)
 
 guile.texi: $(alldotdocfiles) guile$(EXEEXT)