diff --git a/.gitignore b/.gitignore
index ba4886094dfe6a94e0ffa68f36a7907b9ba30640..540f206d3f09fa76f666a3eca04198e219c45688 100644
--- a/.gitignore
+++ b/.gitignore
@@ -42,6 +42,8 @@ ylwrap
 *.blg
 *.lof
 /doc/manual-html/
+/doc/manual.texi
+/doc/manual.info
 !/doc/guide.bbl
 !/doc/macroprocessor/new-design.pdf
 !/doc/macroprocessor/old-design.pdf
diff --git a/configure.ac b/configure.ac
index 1a24c8cad6ab6d78657469987785778a65fa6683..6cb694aa45bffa5c09dda7596846154f090fa178 100644
--- a/configure.ac
+++ b/configure.ac
@@ -135,6 +135,10 @@ AX_PROG_XSLTPROC
 AX_CHECK_DOCBOOK_XSLT_MIN(1.69.0)
 AM_CONDITIONAL([HAVE_XSLT], [test "x$XSLTPROC" != "x" -a "x$DOCBOOK_XSLT_CURRENT_VERSION" != "xno"])
 
+AC_CHECK_PROG([DOCBOOK2XTEXI], [docbook2x-texi], [docbook2x-texi])
+AC_CHECK_PROG([MAKEINFO], [makeinfo], [makeinfo])
+AM_CONDITIONAL([HAVE_DOCBOOK2XTEXI_MAKEINFO], [test "x$DOCBOOK2XTEXI" != "x" -a "x$MAKEINFO" != "x"])
+
 AC_CHECK_PROG([DOXYGEN], [doxygen], [doxygen])
 AM_CONDITIONAL([HAVE_DOXYGEN], [test "x$DOXYGEN" != "x"])
 
@@ -275,6 +279,12 @@ else
   BUILD_DYNARE_INTERNAL_DOC="no (Org export not enabled)"
 fi
 
+if test "x$DOCBOOK2XTEXI" != "x" -a "x$MAKEINFO" != "x"; then
+  BUILD_DYNARE_INFO="yes"
+else
+  BUILD_DYNARE_INFO="no (missing docbook2x-texi and/or makeinfo)"
+fi
+
 if test "x$OCTAVE" != "x"; then
   TESTSUITE_OCTAVE="yes"
 else
@@ -307,6 +317,8 @@ HTML documentation (with "make html"):
  Dynare preprocessor developer doc:     $BUILD_DYNARE_PREPROC_DOC
  Dynare internal doc:                   $BUILD_DYNARE_INTERNAL_DOC
 
+Info documentation (with "make info"):  $BUILD_DYNARE_INFO
+
 Testsuites (run with "make check"):
  Dynare for Octave:                     $TESTSUITE_OCTAVE
  Dynare++:                              $TESTSUITE_DYNAREPLUSPLUS
diff --git a/doc/Makefile.am b/doc/Makefile.am
index f0c0d355637b49fe04eb7f25b123d594ce1f5f72..564eddb882d69f195e85e122567b0055c125fe7d 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -12,6 +12,16 @@ endif
 
 pdf-local: $(PDF_TARGETS)
 
+# We don't use info_TEXINFOS because otherwise it generates a manual.pdf rule
+# which conflict with ours. Hence we have to manually specify building rules.
+INFO_TARGETS =
+
+if HAVE_DOCBOOK2XTEXI_MAKEINFO
+INFO_TARGETS += manual.info
+endif
+
+info-local: $(INFO_TARGETS)
+
 if HAVE_XSLT
 html-local: manual-html/index.html
 endif
@@ -36,6 +46,12 @@ manual-html/index.html: manual.xml dynare_html.xsl dynare.xsl
 manual.pdf: manual.xml
 	$(DBLATEX) manual.xml
 
+manual.texi: manual.xml
+	$(DOCBOOK2XTEXI) --encoding=utf-8//TRANSLIT --string-param output-file=manual $<
+
+manual.info: manual.texi
+	$(MAKEINFO) $<
+
 clean-local:
-	rm -f *~ *.pdf *.log *.aux *.out
+	rm -f *~ *.pdf *.log *.aux *.out manual.texi manual.info
 	rm -rf manual-html