Update automatically managed build utilities.
[sod] / src / Makefile.in
index 59a3647..765212b 100644 (file)
@@ -106,7 +106,7 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-DIST_COMMON = $(dist_pkglispsrc_DATA) $(pkginclude_HEADERS) \
+DIST_COMMON = $(nobase_dist_pkglispsrc_DATA) $(pkginclude_HEADERS) \
        $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
        $(top_srcdir)/vars.am
 bin_PROGRAMS = sod$(EXEEXT)
@@ -186,7 +186,7 @@ am__uninstall_files_from_dir = { \
     || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
          $(am__cd) "$$dir" && rm -f $$files; }; \
   }
-DATA = $(dist_pkglispsrc_DATA)
+DATA = $(nobase_dist_pkglispsrc_DATA)
 HEADERS = $(pkginclude_HEADERS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
@@ -214,7 +214,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-FASL_TYPE = @FASL_TYPE@
 FGREP = @FGREP@
 GREP = @GREP@
 INSTALL = @INSTALL@
@@ -279,6 +278,7 @@ datarootdir = @datarootdir@
 docdir = @docdir@
 dvidir = @dvidir@
 exec_prefix = @exec_prefix@
+fasl = @fasl@
 host = @host@
 host_alias = @host_alias@
 host_cpu = @host_cpu@
@@ -313,11 +313,16 @@ pkglispsrcdir = $(lispsrcdir)/$(PACKAGE)
 
 ###--------------------------------------------------------------------------
 ### Initial values for common variables.
-EXTRA_DIST = 
+
+###--------------------------------------------------------------------------
+### Unit testing.
+EXTRA_DIST = sod-test.asd test-base.lisp parser/parser-test.lisp \
+       parser/scanner-charbuf-test.lisp c-types-test.lisp \
+       codegen-test.lisp lexer-test.lisp
 
 ###--------------------------------------------------------------------------
 ### Constructing an output image.
-CLEANFILES = $(BUILT_SOURCES) *.$(FASL_TYPE)
+CLEANFILES = $(BUILT_SOURCES) *.$(fasl) parser/*.$(fasl)
 DISTCLEANFILES = 
 MAINTAINERCLEANFILES = 
 SUFFIXES = .c .h .sod
@@ -333,12 +338,42 @@ AM_CPPFLAGS = $(SOD_INCLUDES)
 LDADD = $(top_builddir)/lib/libsod.la
 
 ###--------------------------------------------------------------------------
+### Standard configuration substitutions.
+confsubst = $(top_srcdir)/config/confsubst
+SUBSTITUTIONS = \
+       prefix=$(prefix) exec_prefix=$(exec_prefix) \
+       libdir=$(libdir) includedir=$(includedir) \
+       bindir=$(bindir) sbindir=$(sbindir) \
+       PACKAGE=$(PACKAGE) VERSION=$(VERSION)
+
+V_SUBST = $(V_SUBST_$(V))
+V_SUBST_ = $(V_SUBST_$(AM_DEFAULT_VERBOSITY))
+V_SUBST_0 = @echo "  SUBST  $@";
+SUBST = $(V_SUBST)$(confsubst)
+
+###--------------------------------------------------------------------------
 ### Translating SOD input files.
 SOD = $(top_builddir)/src/sod
+V_SOD_c = $(V_SOD_c_$(V))
+V_SOD_c_ = $(V_SOD_c_$(AM_DEFAULT_VERBOSITY))
+V_SOD_c_0 = @echo "  SOD[c] $@";
+V_SOD_h = $(V_SOD_h_$(V))
+V_SOD_h_ = $(V_SOD_h_$(AM_DEFAULT_VERBOSITY))
+V_SOD_h_0 = @echo "  SOD[h] $@";
+
+###--------------------------------------------------------------------------
+### Silent rules for Lisp.
+V_DUMP = $(V_DUMP_$(V))
+V_DUMP_ = $(V_DUMP_$(AM_DEFAULT_VERBOSITY))
+V_DUMP_0 = @echo "  DUMP   $@";
+V_TEST = $(V_TEST_$(V))
+V_TEST_ = $(V_TEST_$(AM_DEFAULT_VERBOSITY))
+V_TEST_0 = @echo "  TEST   $@";
+nobase_dist_pkglispsrc_DATA = $(LISP_SOURCES)
 
 ###--------------------------------------------------------------------------
 ### The source files.
-dist_pkglispsrc_DATA = sod.asd package.lisp utilities.lisp \
+LISP_SOURCES = sod.asd package.lisp utilities.lisp parser/package.lisp \
        parser/floc-proto.lisp parser/floc-impl.lisp \
        parser/streams-proto.lisp parser/streams-impl.lisp \
        parser/scanner-proto.lisp parser/scanner-impl.lisp \
@@ -357,7 +392,8 @@ dist_pkglispsrc_DATA = sod.asd package.lisp utilities.lisp \
        class-layout-proto.lisp class-layout-impl.lisp \
        class-finalize-proto.lisp class-finalize-impl.lisp \
        class-output.lisp method-proto.lisp method-impl.lisp \
-       sod-frontend.asd frontend.lisp optparse.lisp
+       method-aggregate.lisp sod-frontend.asd frontend.lisp \
+       optparse.lisp debug.lisp
 sod_SOURCES = 
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
@@ -462,26 +498,29 @@ mostlyclean-libtool:
 
 clean-libtool:
        -rm -rf .libs _libs
-install-dist_pkglispsrcDATA: $(dist_pkglispsrc_DATA)
+install-nobase_dist_pkglispsrcDATA: $(nobase_dist_pkglispsrc_DATA)
        @$(NORMAL_INSTALL)
-       @list='$(dist_pkglispsrc_DATA)'; test -n "$(pkglispsrcdir)" || list=; \
+       @list='$(nobase_dist_pkglispsrc_DATA)'; test -n "$(pkglispsrcdir)" || list=; \
        if test -n "$$list"; then \
          echo " $(MKDIR_P) '$(DESTDIR)$(pkglispsrcdir)'"; \
          $(MKDIR_P) "$(DESTDIR)$(pkglispsrcdir)" || exit 1; \
        fi; \
-       for p in $$list; do \
-         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-         echo "$$d$$p"; \
-       done | $(am__base_list) | \
-       while read files; do \
-         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkglispsrcdir)'"; \
-         $(INSTALL_DATA) $$files "$(DESTDIR)$(pkglispsrcdir)" || exit $$?; \
+       $(am__nobase_list) | while read dir files; do \
+         xfiles=; for file in $$files; do \
+           if test -f "$$file"; then xfiles="$$xfiles $$file"; \
+           else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \
+         test -z "$$xfiles" || { \
+           test "x$$dir" = x. || { \
+             echo " $(MKDIR_P) '$(DESTDIR)$(pkglispsrcdir)/$$dir'"; \
+             $(MKDIR_P) "$(DESTDIR)$(pkglispsrcdir)/$$dir"; }; \
+           echo " $(INSTALL_DATA) $$xfiles '$(DESTDIR)$(pkglispsrcdir)/$$dir'"; \
+           $(INSTALL_DATA) $$xfiles "$(DESTDIR)$(pkglispsrcdir)/$$dir" || exit $$?; }; \
        done
 
-uninstall-dist_pkglispsrcDATA:
+uninstall-nobase_dist_pkglispsrcDATA:
        @$(NORMAL_UNINSTALL)
-       @list='$(dist_pkglispsrc_DATA)'; test -n "$(pkglispsrcdir)" || list=; \
-       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       @list='$(nobase_dist_pkglispsrc_DATA)'; test -n "$(pkglispsrcdir)" || list=; \
+       $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \
        dir='$(DESTDIR)$(pkglispsrcdir)'; $(am__uninstall_files_from_dir)
 install-pkgincludeHEADERS: $(pkginclude_HEADERS)
        @$(NORMAL_INSTALL)
@@ -543,6 +582,7 @@ distdir: $(DISTFILES)
        done
 check-am: all-am
        $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
+       $(MAKE) $(AM_MAKEFLAGS) check-local
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
 all-am: Makefile $(PROGRAMS) $(DATA) $(HEADERS)
@@ -606,7 +646,7 @@ info: info-am
 
 info-am:
 
-install-data-am: install-data-local install-dist_pkglispsrcDATA \
+install-data-am: install-data-local install-nobase_dist_pkglispsrcDATA \
        install-pkgincludeHEADERS
 
 install-dvi: install-dvi-am
@@ -652,37 +692,51 @@ ps: ps-am
 
 ps-am:
 
-uninstall-am: uninstall-binPROGRAMS uninstall-dist_pkglispsrcDATA \
+uninstall-am: uninstall-binPROGRAMS \
+       uninstall-nobase_dist_pkglispsrcDATA \
        uninstall-pkgincludeHEADERS
 
 .MAKE: all check check-am install install-am install-strip
 
-.PHONY: all all-am check check-am clean clean-binPROGRAMS \
+.PHONY: all all-am check check-am check-local clean clean-binPROGRAMS \
        clean-checkPROGRAMS clean-generic clean-libtool distclean \
        distclean-compile distclean-generic distclean-libtool distdir \
        dvi dvi-am html html-am info info-am install install-am \
        install-binPROGRAMS install-data install-data-am \
-       install-data-local install-dist_pkglispsrcDATA install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
+       install-data-local install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-nobase_dist_pkglispsrcDATA \
        install-pdf install-pdf-am install-pkgincludeHEADERS \
        install-ps install-ps-am install-strip installcheck \
        installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-compile \
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
        uninstall uninstall-am uninstall-binPROGRAMS \
-       uninstall-dist_pkglispsrcDATA uninstall-pkgincludeHEADERS
+       uninstall-nobase_dist_pkglispsrcDATA \
+       uninstall-pkgincludeHEADERS
 
-.sod.c: $(SOD); $(SOD) -tc $<
-.sod.h: $(SOD); $(SOD) -th $<
+.sod.c: $(SOD); $(V_SOD_c)$(SOD) -tc $<
+.sod.h: $(SOD); $(V_SOD_h)$(SOD) -th $<
 
 ###----- That's all, folks --------------------------------------------------
-sod: $(dist_pkglispsrc_DATA)
-       set -ex; true_srcdir=$$(cd $(srcdir); pwd); \
+sod: $(LISP_SOURCES)
+       $(V_DUMP)true_srcdir=$$(cd $(srcdir); pwd); \
        ASDF_OUTPUT_TRANSLATIONS=$$true_srcdir:$(abs_builddir): \
-       $(CL_LAUNCH) -o sod -d ! -l $(LISPSYS) +I -S $$true_srcdir/ \
+       $(CL_LAUNCH) -o sod -d ! -l $(LISPSYS) +I -S $$true_srcdir/: \
                -s sod-frontend -r sod-frontend:main
 
+check-local:
+       $(V_TEST)true_srcdir=$$(cd $(srcdir); pwd); \
+       ASDF_OUTPUT_TRANSLATIONS=$$true_srcdir:$(abs_builddir): \
+       $(CL_LAUNCH) -l $(LISPSYS) -s sod-test +I -S $$true_srcdir/: \
+               -i '(handler-case ;\
+                     (progn ;\
+                       (setf sod-test:*build-version* "$(VERSION)") ;\
+                       (asdf:test-system "sod")) ;\
+                     (error (cond) ;\
+                       (format *error-output* "ERR: ~A~%" cond) ;\
+                       (cl-launch:quit 1)))'
+
 ###--------------------------------------------------------------------------
 ### Installation.
 
@@ -703,8 +757,8 @@ install-data-local:
        dots=$$(echo $$fwd | sed 's/[^ ][^ ]*/../g'); \
        rel=$$(echo $$dots $$twd | tr " " "/"); \
        echo >&2 "ln -s $$rel $$to"; \
-       ln -s $$rel $(DESTDIR)$$from.new; \
-       mv $(DESTDIR)$$from.new $(DESTDIR)$$from
+       ln -s $$rel $(DESTDIR)$$from/sod.asd.new; \
+       mv $(DESTDIR)$$from/sod.asd.new $(DESTDIR)$$from/sod.asd
 
 ###----- That's all, folks --------------------------------------------------