]> git.draconx.ca Git - cdecl99.git/blobdiff - Makefile.am
Avoid the use of for loop declarations.
[cdecl99.git] / Makefile.am
index 4fdf5662b06bf10d3c425629bedd2ee443b0a853..ee4f7799cb56a250695e637ce2f3888f098f200e 100644 (file)
@@ -81,7 +81,7 @@ $(libmain_a_OBJECTS): src/options.h
 
 check_PROGRAMS = t/crossparse t/normalize t/randomdecl t/rng-test
 check_LIBRARIES = libtest.a
-libtest_a_SOURCES = t/testlib.c t/rng.c common/src/help.c
+libtest_a_SOURCES = t/testlib.c t/rng.c common/src/help.c common/src/tap.c
 $(libtest_a_OBJECTS): $(gnulib_headers)
 
 TEST_LIBS = libtest.a libcdecl.la libgnu.a $(LDEXP_LIBM)
@@ -100,6 +100,10 @@ t_rng_test_LDADD = $(TEST_LIBS)
 $(t_rng_test_OBJECTS): $(gnulib_headers)
 EXTRA_DIST += t/xos256p.c
 
+check_PROGRAMS += t/rendertest
+t_rendertest_LDADD = $(TEST_LIBS)
+$(t_rendertest_OBJECTS): $(gnulib_headers)
+
 src/error.lo: src/errmsg.h
 src/keywords.lo: src/parse.h
 src/output.lo: src/parse.h src/specstr.h
@@ -111,7 +115,7 @@ t/cdeclerr.$(OBJEXT): src/errmsg.h
 
 check_PROGRAMS += t/cdeclerr
 t_cdeclerr_SOURCES = common/src/tap.c t/cdeclerr.c
-EXTRA_t_cdeclerr_DEPENDENCIES = src/error.lo $(shared_gl_objects)
+EXTRA_t_cdeclerr_DEPENDENCIES = src/error.lo src/output.lo $(shared_gl_objects)
 t_cdeclerr_LDADD = $(EXTRA_t_cdeclerr_DEPENDENCIES) $(LIBTHREAD)
 $(t_cdeclerr_OBJECTS): $(gnulib_headers)
 
@@ -313,9 +317,12 @@ V_GPERF_0 = @printf '  %$(DX_ALIGN_V)s %s\n' 'GPERF   ' $@;
 GPERFFILES = src/execute.gperf src/keywords.gperf
 .gperf.c:
        $(V_GPERF) $(GPERF) $< >$@.tmp
-       $(AM_V_at) mv $@.tmp $@
+       $(AM_V_at) $(AWK) -f $(srcdir)/src/gperf-wordwrap.awk $@.tmp >$@.t2
+       $(AM_V_at) mv $@.t2 $@
+       $(AM_V_at) rm -f $@.tmp
 MAINTAINERCLEANFILES += $(GPERFFILES:.gperf=.c)
-EXTRA_DIST += $(GPERFFILES)
+EXTRA_DIST += $(GPERFFILES) src/gperf-wordwrap.awk
+$(GPERFFILES:.gperf=.c): $(srcdir)/src/gperf-wordwrap.awk
 
 atlocal: config.status
        $(AM_V_GEN) :; { \
@@ -328,6 +335,24 @@ atlocal: config.status
 check_DATA = atlocal
 CLEANFILES += atlocal
 
+# Note: to reliably test linking against the installed library we directly
+# refer to the just-installed .la file, rather than more typical library flags
+# (-Lfoo -lfoo).  Otherwise libtool can pick up libcdecl.la from the current
+# working directory which defeats the point of an install check.
+EXTRA_PROGRAMS = t/installcheck
+t_installcheck_CPPFLAGS = -I$(DESTDIR)$(includedir)
+t_installcheck_LDADD = $(DESTDIR)$(libdir)/libcdecl.la
+t_installcheck_CFLAGS =
+t_installcheck_SHORTNAME = x
+
+installcheck-local:
+       rm -f t/installcheck$(EXEEXT)
+       $(MAKE) $(AM_MAKEFLAGS) t/installcheck$(EXEEXT)
+       t/installcheck$(EXEEXT) | diff - $(srcdir)/t/installcheck.exp
+.PHONY: installcheck-local
+EXTRA_DIST += t/installcheck.c t/installcheck.exp
+CLEANFILES += t/installcheck$(EXEEXT)
+
 include $(top_srcdir)/lib/gnulib.mk
 include $(top_srcdir)/common/snippet/glconfig.mk
 include $(top_srcdir)/common/snippet/autotest.mk