Commit 6dd5fd5a643c50aff3303ba2add3b6cc7588df78

Tom Tromey 2016-02-22T15:34:39

fix documentation building An earlier patch added --disable-docs, but went too far, making it impossible to build the docs. It turns out that Automake seemingly has a bug preventing the conditional build of an info file. So, this patch works around the bug by putting the info_TEXINFOS rule into a new doc/Makefile.am. Tested by building with and without --disable-docs and looking for the existence of doc/libffi.info.

diff --git a/Makefile.am b/Makefile.am
index 5712edd..20fa382 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -5,6 +5,14 @@ AUTOMAKE_OPTIONS = foreign subdir-objects
 ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = include testsuite man
+if BUILD_DOCS
+## This hack is needed because it doesn't seem possible to make a
+## conditional info_TEXINFOS in Automake.  At least Automake 1.14
+## either gives errors -- if this attempted in the most
+## straightforward way -- or simply unconditionally tries to build the
+## info file.
+SUBDIRS += doc
+endif
 
 EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj			\
 	ChangeLog.libffi ChangeLog.libffi-3.1				\
@@ -16,11 +24,6 @@ EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj			\
 	libtool-ldflags
 
 
-info_TEXINFOS =
-if BUILD_DOCS
-#info_TEXINFOS += doc/libffi.texi
-endif
-
 ## ################################################################
 
 ##
diff --git a/configure.ac b/configure.ac
index f177495..da7c432 100644
--- a/configure.ac
+++ b/configure.ac
@@ -380,6 +380,6 @@ test -d src/$TARGETDIR || mkdir src/$TARGETDIR
 
 AC_CONFIG_LINKS(include/ffitarget.h:src/$TARGETDIR/ffitarget.h)
 
-AC_CONFIG_FILES(include/Makefile include/ffi.h Makefile testsuite/Makefile man/Makefile libffi.pc)
+AC_CONFIG_FILES(include/Makefile include/ffi.h Makefile testsuite/Makefile man/Makefile doc/Makefile libffi.pc)
 
 AC_OUTPUT
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..43b650a
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,3 @@
+## Process this with automake to create Makefile.in
+
+info_TEXINFOS = libffi.texi