include $(top_srcdir)/am/snarf
AUTOMAKE_OPTIONS = gnu
DEFS = @DEFS@
DEFAULT_INCLUDES =
AM_CPPFLAGS = -DBUILDING_LIBGUILE=1 -I$(top_srcdir) -I$(top_builddir) \
-I$(top_srcdir)/lib -I$(top_builddir)/lib $(LIBFFI_CFLAGS)
AM_CFLAGS = $(GCC_CFLAGS) $(CFLAG_VISIBILITY)
gnulib_library = $(top_builddir)/lib/libgnu.la
ETAGS_ARGS = --regex='/SCM_\(GLOBAL_\)?\(G?PROC\|G?PROC1\|SYMBOL\|VCELL\|CONST_LONG\).*\"\([^\"]\)*\"/\3/' \
--regex='/[ \t]*SCM_[G]?DEFINE1?[ \t]*(\([^,]*\),[^,]*/\1/'
lib_LTLIBRARIES = libguile-@GUILE_EFFECTIVE_VERSION@.la
bin_PROGRAMS = guile
noinst_PROGRAMS = guile_filter_doc_snarfage gen-scmconfig
gen_scmconfig_SOURCES = gen-scmconfig.c
gen-scmconfig.$(OBJEXT): gen-scmconfig.c
$(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) -I$(top_builddir) \
-c -o $@ $<; \
else \
$(COMPILE) -c -o $@ $<; \
fi
gen-scmconfig$(EXEEXT): $(gen_scmconfig_OBJECTS) $(gen_scmconfig_DEPENDENCIES)
$(AM_V_GEN) \
rm -f gen-scmconfig$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(gen_scmconfig_OBJECTS); \
else \
$(LINK) $(gen_scmconfig_OBJECTS) $(LDADD) $(LIBS); \
fi
scmconfig.h: ${top_builddir}/config.h gen-scmconfig$(EXEEXT)
$(AM_V_GEN)(rm -f scmconfig.h.tmp; \
cat $(srcdir)/scmconfig.h.top > scmconfig.h.tmp; \
./gen-scmconfig$(EXEEXT) >> scmconfig.h.tmp; \
chmod 444 scmconfig.h.tmp; \
rm -f scmconfig.h; \
mv scmconfig.h.tmp scmconfig.h)
guile_filter_doc_snarfage_SOURCES = c-tokenize.c
c-tokenize.$(OBJEXT): c-tokenize.c
$(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) -DCROSS_COMPILING=1 -I$(top_builddir) \
-c -o "$@" "$<"; \
else \
$(COMPILE) -c -o "$@" "$<"; \
fi
guile_filter_doc_snarfage$(EXEEXT): $(guile_filter_doc_snarfage_OBJECTS) $(guile_filter_doc_snarfage_DEPENDENCIES)
$(AM_V_GEN) \
rm -f guile_filter_doc_snarfage$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(guile_filter_doc_snarfage_OBJECTS); \
else \
$(LINK) $(guile_filter_doc_snarfage_OBJECTS) $(LDADD) $(gnulib_library) $(LIBS); \
fi
guile_SOURCES = guile.c
guile_CFLAGS = $(GUILE_CFLAGS) $(AM_CFLAGS)
guile_LDADD = libguile-@GUILE_EFFECTIVE_VERSION@.la
guile_LDFLAGS = $(GUILE_CFLAGS)
libguile_@GUILE_EFFECTIVE_VERSION@_la_CFLAGS = $(GUILE_CFLAGS) $(AM_CFLAGS)
libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES = \
alist.c \
arbiters.c \
array-handle.c \
array-map.c \
arrays.c \
async.c \
backtrace.c \
boolean.c \
bitvectors.c \
bytevectors.c \
chars.c \
control.c \
continuations.c \
debug.c \
deprecated.c \
deprecation.c \
dynwind.c \
eq.c \
error.c \
eval.c \
evalext.c \
expand.c \
extensions.c \
feature.c \
filesys.c \
finalizers.c \
fluids.c \
foreign.c \
fports.c \
frames.c \
gc-malloc.c \
gc.c \
gdbint.c \
gettext.c \
generalized-arrays.c \
generalized-vectors.c \
goops.c \
gsubr.c \
guardians.c \
hash.c \
hashtab.c \
hooks.c \
i18n.c \
init.c \
inline.c \
instructions.c \
ioext.c \
keywords.c \
list.c \
load.c \
macros.c \
mallocs.c \
memoize.c \
modules.c \
null-threads.c \
numbers.c \
objcodes.c \
objprop.c \
options.c \
pairs.c \
poll.c \
ports.c \
print.c \
procprop.c \
procs.c \
programs.c \
promises.c \
r6rs-ports.c \
random.c \
rdelim.c \
read.c \
root.c \
rw.c \
scmsigs.c \
script.c \
simpos.c \
smob.c \
sort.c \
srcprop.c \
srfi-1.c \
srfi-4.c \
srfi-13.c \
srfi-14.c \
srfi-60.c \
stackchk.c \
stacks.c \
stime.c \
strings.c \
strorder.c \
strports.c \
struct.c \
symbols.c \
threads.c \
throw.c \
trees.c \
uniform.c \
values.c \
variable.c \
vectors.c \
version.c \
vm.c \
vports.c \
weaks.c
DOT_X_FILES = \
alist.x \
arbiters.x \
array-handle.x \
array-map.x \
arrays.x \
async.x \
backtrace.x \
boolean.x \
bitvectors.x \
bytevectors.x \
chars.x \
control.x \
continuations.x \
debug.x \
deprecated.x \
deprecation.x \
dynl.x \
dynwind.x \
eq.x \
error.x \
eval.x \
evalext.x \
expand.x \
extensions.x \
feature.x \
filesys.x \
fluids.x \
foreign.x \
fports.x \
gc-malloc.x \
gc.x \
gettext.x \
generalized-arrays.x \
generalized-vectors.x \
goops.x \
gsubr.x \
guardians.x \
hash.x \
hashtab.x \
hooks.x \
i18n.x \
init.x \
ioext.x \
keywords.x \
list.x \
load.x \
macros.x \
mallocs.x \
memoize.x \
modules.x \
numbers.x \
objprop.x \
options.x \
pairs.x \
ports.x \
print.x \
procprop.x \
procs.x \
promises.x \
r6rs-ports.x \
random.x \
rdelim.x \
read.x \
root.x \
rw.x \
scmsigs.x \
script.x \
simpos.x \
smob.x \
sort.x \
srcprop.x \
srfi-1.x \
srfi-4.x \
srfi-13.x \
srfi-14.x \
srfi-60.x \
stackchk.x \
stacks.x \
stime.x \
strings.x \
strorder.x \
strports.x \
struct.x \
symbols.x \
threads.x \
throw.x \
trees.x \
uniform.x \
values.x \
variable.x \
vectors.x \
version.x \
vports.x \
weaks.x
DOT_X_FILES += frames.x instructions.x objcodes.x programs.x vm.x
EXTRA_DOT_X_FILES = @EXTRA_DOT_X_FILES@
DOT_DOC_FILES = \
alist.doc \
arbiters.doc \
array-handle.doc \
array-map.doc \
arrays.doc \
async.doc \
backtrace.doc \
boolean.doc \
bitvectors.doc \
bytevectors.doc \
chars.doc \
control.doc \
continuations.doc \
debug.doc \
deprecated.doc \
deprecation.doc \
dynl.doc \
dynwind.doc \
eq.doc \
error.doc \
eval.doc \
evalext.doc \
expand.doc \
extensions.doc \
feature.doc \
filesys.doc \
fluids.doc \
foreign.doc \
fports.doc \
gc-malloc.doc \
gc.doc \
gettext.doc \
generalized-arrays.doc \
generalized-vectors.doc \
goops.doc \
gsubr.doc \
guardians.doc \
hash.doc \
hashtab.doc \
hooks.doc \
i18n.doc \
init.doc \
ioext.doc \
keywords.doc \
list.doc \
load.doc \
macros.doc \
mallocs.doc \
memoize.doc \
modules.doc \
numbers.doc \
objprop.doc \
options.doc \
pairs.doc \
ports.doc \
print.doc \
procprop.doc \
procs.doc \
promises.doc \
r6rs-ports.doc \
random.doc \
rdelim.doc \
read.doc \
root.doc \
rw.doc \
scmsigs.doc \
script.doc \
simpos.doc \
smob.doc \
sort.doc \
srcprop.doc \
srfi-1.doc \
srfi-4.doc \
srfi-13.doc \
srfi-14.doc \
srfi-60.doc \
stackchk.doc \
stacks.doc \
stime.doc \
strings.doc \
strorder.doc \
strports.doc \
struct.doc \
symbols.doc \
threads.doc \
throw.doc \
trees.doc \
uniform.doc \
values.doc \
variable.doc \
vectors.doc \
version.doc \
vports.doc \
weaks.doc
EXTRA_DOT_DOC_FILES = @EXTRA_DOT_DOC_FILES@
DOT_I_FILES = vm-i-system.i vm-i-scheme.i vm-i-loader.i
.c.i:
$(AM_V_GEN)$(GREP) '^VM_DEFINE' $< > $@
BUILT_SOURCES = cpp-E.c cpp-SIG.c libpath.h \
scmconfig.h \
$(DOT_I_FILES) $(DOT_X_FILES) $(EXTRA_DOT_X_FILES)
all-local: guile-procedures.texi
EXTRA_libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES = _scm.h \
memmove.c strerror.c \
dynl.c regex-posix.c \
posix.c net_db.c socket.c \
debug-malloc.c mkstemp.c \
win32-uname.c \
locale-categories.h
install-exec-hook:
rm -f $(DESTDIR)$(bindir)/guile-snarf.awk
install-data-hook: libguile-2.0-gdb.scm
@$(MKDIR_P) $(DESTDIR)$(libdir)
@here=`pwd`; cd $(DESTDIR)$(libdir); \
for file in libguile-@GUILE_EFFECTIVE_VERSION@*; do \
case $$file in \
*-gdb.scm) ;; \
*.la) ;; \
*) if test -h $$file; then \
continue; \
fi; \
libname=$$file;; \
esac; \
done; \
cd $$here; \
echo " $(INSTALL_DATA) $< \
$(DESTDIR)$(libdir)/$$libname-gdb.scm"; \
$(INSTALL_DATA) "$<" \
"$(DESTDIR)$(libdir)/$$libname-gdb.scm"
uninstall-hook:
-rm "$(DESTDIR)$(libdir)/libguile-@GUILE_EFFECTIVE_VERSION@"*-gdb.scm
-rm -f "$(DESTDIR)$(infodir)/dir"
noinst_HEADERS = conv-integer.i.c conv-uinteger.i.c \
srfi-14.i.c \
quicksort.i.c \
win32-uname.h \
private-gc.h private-options.h ports-internal.h
noinst_HEADERS += vm-engine.c vm-i-system.c vm-i-scheme.c vm-i-loader.c
libguile_@GUILE_EFFECTIVE_VERSION@_la_DEPENDENCIES = @LIBLOBJS@
libguile_@GUILE_EFFECTIVE_VERSION@_la_LIBADD = \
@LIBLOBJS@ $(gnulib_library) $(LTLIBGMP) $(LTLIBLTDL)
version_info = @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@
libguile_@GUILE_EFFECTIVE_VERSION@_la_LDFLAGS = \
$(BDW_GC_LIBS) $(LIBFFI_LIBS) \
$(CEIL_LIBM) \
$(FLOOR_LIBM) \
$(FREXP_LIBM) \
$(GETADDRINFO_LIB) \
$(HOSTENT_LIB) \
$(INET_NTOP_LIB) \
$(INET_PTON_LIB) \
$(ISNAND_LIBM) \
$(ISNANF_LIBM) \
$(ISNANL_LIBM) \
$(LDEXP_LIBM) \
$(LIBSOCKET) \
$(LIB_CLOCK_GETTIME) \
$(LOG1P_LIBM) \
$(LOG_LIBM) \
$(LTLIBICONV) \
$(LTLIBINTL) \
$(LTLIBUNISTRING) \
$(ROUND_LIBM) \
$(SERVENT_LIB) \
$(TRUNC_LIBM) \
-version-info $(version_info) \
-export-dynamic -no-undefined \
$(GNU_LD_FLAGS)
if HAVE_LD_VERSION_SCRIPT
libguile_@GUILE_EFFECTIVE_VERSION@_la_LDFLAGS += -Wl,--version-script="$(srcdir)/libguile.map"
endif HAVE_LD_VERSION_SCRIPT
pkginclude_HEADERS =
modincludedir = $(pkgincludedir)/$(GUILE_EFFECTIVE_VERSION)/libguile
modinclude_HEADERS = \
__scm.h \
alist.h \
arbiters.h \
array-handle.h \
array-map.h \
arrays.h \
async.h \
backtrace.h \
bdw-gc.h \
boolean.h \
bitvectors.h \
bytevectors.h \
chars.h \
control.h \
continuations.h \
debug-malloc.h \
debug.h \
deprecated.h \
deprecation.h \
dynl.h \
dynwind.h \
eq.h \
error.h \
eval.h \
evalext.h \
expand.h \
extensions.h \
feature.h \
finalizers.h \
filesys.h \
fluids.h \
foreign.h \
fports.h \
frames.h \
gc.h \
gdb_interface.h \
gdbint.h \
gettext.h \
generalized-arrays.h \
generalized-vectors.h \
goops.h \
gsubr.h \
guardians.h \
hash.h \
hashtab.h \
hooks.h \
i18n.h \
init.h \
inline.h \
instructions.h \
ioext.h \
iselect.h \
keywords.h \
list.h \
load.h \
macros.h \
mallocs.h \
memoize.h \
modules.h \
net_db.h \
null-threads.h \
numbers.h \
objcodes.h \
objprop.h \
options.h \
pairs.h \
poll.h \
ports.h \
posix.h \
print.h \
procprop.h \
procs.h \
programs.h \
promises.h \
pthread-threads.h \
r6rs-ports.h \
random.h \
rdelim.h \
read.h \
regex-posix.h \
root.h \
rw.h \
scmsigs.h \
script.h \
simpos.h \
smob.h \
snarf.h \
socket.h \
sort.h \
srcprop.h \
srfi-1.h \
srfi-4.h \
srfi-13.h \
srfi-14.h \
srfi-60.h \
stackchk.h \
stacks.h \
stime.h \
strings.h \
strorder.h \
strports.h \
struct.h \
symbols.h \
tags.h \
threads.h \
throw.h \
trees.h \
validate.h \
uniform.h \
values.h \
variable.h \
vectors.h \
vm-engine.h \
vm-expand.h \
vm.h \
vports.h \
weaks.h
nodist_modinclude_HEADERS = version.h scmconfig.h
bin_SCRIPTS = guile-snarf
noinst_SCRIPTS = guile-snarf-docs
EXTRA_DIST = ChangeLog-scm ChangeLog-threads \
ChangeLog-1996-1999 ChangeLog-2000 ChangeLog-2008 \
guile-func-name-check \
cpp-E.syms cpp-E.c cpp-SIG.syms cpp-SIG.c \
c-tokenize.lex \
scmconfig.h.top libgettext.h unidata_to_charset.pl libguile.map \
libguile-2.0-gdb.scm
libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
@rm -f libpath.tmp
@echo '/* generated by Makefile */' > libpath.tmp
@echo '#define SCM_PKGDATA_DIR "$(pkgdatadir)"' >> libpath.tmp
@echo '#define SCM_LIBRARY_DIR "$(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)"'>>libpath.tmp
@echo '#define SCM_SITE_DIR "$(sitedir)"' >> libpath.tmp
@echo '#define SCM_GLOBAL_SITE_DIR "$(pkgdatadir)/site"' >> libpath.tmp
@echo '#define SCM_LIB_DIR "$(libdir)"' >> libpath.tmp
@echo '#define SCM_EXTENSIONS_DIR "$(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/extensions"' >> libpath.tmp
@echo '#define SCM_CCACHE_DIR "$(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/ccache"' >> libpath.tmp
@echo '#define SCM_SITE_CCACHE_DIR "$(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/site-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
@echo ' { "prefix", "@prefix@" }, \' >> libpath.tmp
@echo ' { "exec_prefix", "@exec_prefix@" }, \' >> libpath.tmp
@echo ' { "bindir", "@bindir@" }, \' >> libpath.tmp
@echo ' { "sbindir", "@sbindir@" }, \' >> libpath.tmp
@echo ' { "libexecdir", "@libexecdir@" }, \' >> libpath.tmp
@echo ' { "datadir", "@datadir@" }, \' >> libpath.tmp
@echo ' { "sysconfdir", "@sysconfdir@" }, \' >> libpath.tmp
@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", "$(pkgdatadir)" }, \' >> libpath.tmp
@echo ' { "pkglibdir", "$(pkglibdir)" }, \' >> libpath.tmp
@echo ' { "pkgincludedir", "$(pkgincludedir)" }, \' \
>> libpath.tmp
@echo ' { "extensiondir", "$(pkglibdir)/$(GUILE_EFFECTIVE_VERSION)/extensions" }, \' >> libpath.tmp
@echo ' { "guileversion", "@GUILE_VERSION@" }, \' >> libpath.tmp
@echo ' { "libguileinterface", "@LIBGUILE_INTERFACE@" }, \' \
>> libpath.tmp
@echo ' { "LIBS", "@GUILE_LIBS@" }, \' >> libpath.tmp
@echo ' { "CFLAGS", "@GUILE_CFLAGS@" }, \' >> libpath.tmp
@echo ' { "buildstamp", "'`date -u +'%Y-%m-%d %T'`'" }, \' >> libpath.tmp
@echo '}' >> libpath.tmp
$(AM_V_GEN)mv libpath.tmp libpath.h
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x .doc
.c.x:
$(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
.c.doc:
$(AM_V_SNARF)./guile-snarf-docs -o $@ $< -- $(snarfcppopts)
$(DOT_X_FILES) $(EXTRA_DOT_X_FILES): scmconfig.h snarf.h guile-snarf.in version.h
$(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES): scmconfig.h snarf.h guile-snarf-docs.in guile_filter_doc_snarfage$(EXEEXT)
error.x: cpp-E.c
posix.x: cpp-SIG.c
load.x: libpath.h
dynl.x: libpath.h
alldotdocfiles = $(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES)
snarf2checkedtexi = GUILE_INSTALL_LOCALE=1 GUILE_AUTO_COMPILE=0 \
$(top_builddir)/meta/uninstalled-env guild snarf-check-and-output-texi
dotdoc2texi = cat $(alldotdocfiles) | $(snarf2checkedtexi)
guile.texi: $(alldotdocfiles) guile$(EXEEXT)
$(dotdoc2texi) --manual > $@ || { rm $@; false; }
guile-procedures.texi: $(alldotdocfiles) guile$(EXEEXT)
$(AM_V_GEN)$(dotdoc2texi) > $@ || { rm $@; false; }
c-tokenize.c: c-tokenize.lex
flex -t $(srcdir)/c-tokenize.lex > $@ || { rm $@; false; }
MKDEP = gcc -M -MG $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
.syms.c:
$(AM_V_GEN) \
cat $< | while read sym ; do \
echo "#ifdef $$sym" ; \
echo "scm_c_define (\"$$sym\", scm_from_int ($$sym));" ; \
echo "#endif" ; \
done > $@T
@mv $@T $@
chknew-E chknew-SIG: \
@bit=`echo $@ | sed s/^chknew-//` ; \
old="$(srcdir)/cpp-$$bit.syms" ; \
echo "#include <$${bit}.h>" \
| sed 's/E/errno/;s/SIG/signal/' \
| gcc -dM -E - \
| sed 's/^#define //;/^'$$bit'[A-Z][A-Z]*/!d;s/ .*//' \
| sort | diff -u $$old - | sed '1,2d;/^+/!d;s/^.//' \
> TMP ; \
if [ -s TMP ] ; then new="$$old.NEW" ; \
cat $$old TMP | sort > $$new ; \
echo "$$new: `sed -n '$$=' TMP` new symbol(s)." ; \
sed 's/^/ /' TMP ; \
else echo "No new symbols found." ; \
fi ; rm TMP
MOSTLYCLEANFILES = \
scmconfig.h scmconfig.h.tmp
CLEANFILES = libpath.h *.x *.doc guile-procedures.txt guile-procedures.texi guile.texi \
vm-i-*.i
MAINTAINERCLEANFILES = c-tokenize.c