public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/marxin/heads/sphinx-v1)] First make integration.
@ 2021-06-22 14:54 Martin Liska
  0 siblings, 0 replies; only message in thread
From: Martin Liska @ 2021-06-22 14:54 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:532d9f3b9041a104f0b36340be5844c6e3ae41b1

commit 532d9f3b9041a104f0b36340be5844c6e3ae41b1
Author: Martin Liska <mliska@suse.cz>
Date:   Thu Jun 17 22:08:57 2021 +0200

    First make integration.

Diff:
---
 config/acx.m4            |   2 +-
 configure                |   1 -
 configure.ac             |   1 -
 doc/Makefile             |   3 +-
 doc/baseconf.py          |   5 +-
 gcc/Makefile.in          | 183 +++++++++++++++++++++++------------------------
 gcc/configure            |  28 +++++++-
 gcc/configure.ac         |  15 ++++
 gcc/cp/Make-lang.in      |   2 +-
 gcc/doc/gcc/conf.py      |  10 ++-
 gcc/fortran/Make-lang.in |  42 +++++------
 11 files changed, 160 insertions(+), 132 deletions(-)

diff --git a/config/acx.m4 b/config/acx.m4
index 87c1b5e2932..65a7f4bc446 100644
--- a/config/acx.m4
+++ b/config/acx.m4
@@ -615,7 +615,7 @@ AC_DEFUN([ACX_BUGURL],[
     REPORT_BUGS_TEXI=
     ;;
   *)
-    REPORT_BUGS_TO="<$BUGURL>"
+    REPORT_BUGS_TO="$BUGURL"
     REPORT_BUGS_TEXI=@uref{`echo "$BUGURL" | sed 's/@/@@/g'`}
     ;;
   esac;
diff --git a/configure b/configure
index 1224fc4039e..e58cbb65158 100755
--- a/configure
+++ b/configure
@@ -10458,7 +10458,6 @@ case " $configdirs " in
     ;;
 esac
 
-
 # Host tools.
 ncn_tool_prefix=
 test -n "$host_alias" && ncn_tool_prefix=$host_alias-
diff --git a/configure.ac b/configure.ac
index 66d637d70dc..68c209852e9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3454,7 +3454,6 @@ case " $configdirs " in
     ;;
 esac
 
-
 # Host tools.
 NCN_STRICT_CHECK_TOOLS(AR, ar)
 NCN_STRICT_CHECK_TOOLS(AS, as)
diff --git a/doc/Makefile b/doc/Makefile
index 9e305a8e7da..7f3690e7e50 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -3,7 +3,8 @@
 
 # You can set these variables from the command line.
 SPHINXOPTS   ?= -j auto -q
-SPHINXBUILD  ?= sphinx-build
+# FIXME
+SPHINXBUILD  ?= /tmp/venv/bin/sphinx-build
 PAPER        ?=
 SOURCEDIR     = .
 BUILDDIR      = _build
diff --git a/doc/baseconf.py b/doc/baseconf.py
index 07bf2c551c8..206328d43e5 100644
--- a/doc/baseconf.py
+++ b/doc/baseconf.py
@@ -34,8 +34,9 @@ gcc_DEVPHASE = __read_file('DEV-PHASE')
 gcc_DATESTAMP = __read_file('DATESTAMP')
 gcc_REVISION = __read_file('REVISION')
 
-VERSION_PACKAGE = os.getenv('VERSION_PACKAGE', '(GCC)')
-BUGURL = os.getenv('BUGURL', 'https://gcc.gnu.org/bugs/')
+VERSION_PACKAGE = os.getenv('VERSION_PACKAGE')
+BUGURL = os.getenv('BUGURL')
+assert VERSION_PACKAGE and BUGURL
 
 # The short X.Y version.
 version = gcc_BASEVER
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 4cb2966157e..95bb136917a 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -771,11 +771,8 @@ LIBCONVERT =
 # Control whether header files are installed.
 INSTALL_HEADERS=install-headers install-mkheaders
 
-# Control whether Info documentation is built and installed.
-BUILD_INFO = @BUILD_INFO@
-
-# Control whether manpages generated by texi2pod.pl can be rebuilt.
-GENERATED_MANPAGES = @GENERATED_MANPAGES@
+# Control whether manpages generated by sphinx-build can be rebuilt.
+SPHINX_BUILD = @SPHINX_BUILD@
 
 # Additional directories of header files to run fixincludes on.
 # These should be directories searched automatically by default
@@ -3280,15 +3277,7 @@ install-no-fixedincludes:
 
 # Remake the info files.
 
-doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
-
-INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
-            doc/gccinstall.info doc/cppinternals.info
-
-info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
-
-srcinfo: $(INFOFILES)
-	-cp -p $^ $(srcdir)/doc
+doc: $(SPHINX_BUILD)
 
 TEXI_CPP_FILES = cpp.texi fdl.texi cppenv.texi cppopts.texi		\
 	 gcc-common.texi gcc-vers.texi
@@ -3335,28 +3324,6 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
 	mv -f $@T $@
 
 
-# The *.1, *.7, *.info, *.dvi, and *.pdf files are being generated from implicit
-# patterns.  To use them, put each of the specific targets with its
-# specific dependencies but no build commands.
-
-doc/cpp.info: $(TEXI_CPP_FILES)
-doc/gcc.info: $(TEXI_GCC_FILES)
-doc/gccint.info: $(TEXI_GCCINT_FILES)
-doc/cppinternals.info: $(TEXI_CPPINT_FILES)
-
-doc/%.info: %.texi
-	if [ x$(BUILD_INFO) = xinfo ]; then \
-		$(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
-			-I $(gcc_docdir)/include -o $@ $<; \
-	fi
-
-# Duplicate entry to handle renaming of gccinstall.info
-doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
-	if [ x$(BUILD_INFO) = xinfo ]; then \
-		$(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
-			-I $(gcc_docdir)/include -o $@ $<; \
-	fi
-
 doc/cpp.dvi: $(TEXI_CPP_FILES)
 doc/gcc.dvi: $(TEXI_GCC_FILES)
 doc/gccint.dvi: $(TEXI_GCCINT_FILES)
@@ -3421,51 +3388,40 @@ $(build_htmldir)/gccinstall/index.html: $(TEXI_GCCINSTALL_FILES)
 	DESTDIR=$(@D) \
 	$(SHELL) $(srcdir)/doc/install.texi2html
 
-MANFILES = doc/gcov.1 doc/cpp.1 doc/gcc.1 doc/gfdl.7 doc/gpl.7 \
-           doc/fsf-funding.7 doc/gcov-tool.1 doc/gcov-dump.1 \
 	   $(if $(filter yes,@enable_lto@),doc/lto-dump.1)
 
-generated-manpages: man
+export VERSION_PACKAGE="$(PKGVERSION)"
+export ENABLE_LTO=$(enable_lto)
+export BUGURL="$(BUGURL_s)"
 
-man: $(MANFILES) lang.man @GENINSRC@ srcman lang.srcman
+man: man-gcc man-cpp lang.man @GENINSRC@
 
-srcman: $(MANFILES)
-	-cp -p $^ $(srcdir)/doc
+info: info-gcc info-gccint info-cpp info-cppinternals info-install lang.info @GENINSRC@
 
-doc/%.1: %.pod
-	$(STAMP) $@
-	-($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
-		mv -f $(@).T$$$$ $@) || \
-		(rm -f $(@).T$$$$ && exit 1)
+sphinx-build: man info
 
-doc/%.7: %.pod
-	$(STAMP) $@
-	-($(POD2MAN) --section=7 $< > $(@).T$$$$ && \
-		mv -f $(@).T$$$$ $@) || \
-		(rm -f $(@).T$$$$ && exit 1)
+man-gcc: doc/gcc/man/man/gcc.1
 
-%.pod: %.texi
-	$(STAMP) $@
-	-$(TEXI2POD) -DBUGURL="$(BUGURL_TEXI)" $< > $@
+doc/gcc/man/man/gcc.1:
+	+ make -C $(srcdir)/../doc man SOURCEDIR=$(srcdir)/doc/gcc BUILDDIR=$(objdir)/doc/gcc/man
 
-.INTERMEDIATE: cpp.pod gcc.pod gfdl.pod fsf-funding.pod gpl.pod
-cpp.pod: cpp.texi cppenv.texi cppopts.texi
+man-cpp:
+	+ make -C $(srcdir)/../doc man SOURCEDIR=$(srcdir)/doc/cpp BUILDDIR=$(objdir)/doc/cpp/man
 
-# These next rules exist because the output name is not the same as
-# the input name, so our implicit %.pod rule will not work.
+info-gcc:
+	+ make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/doc/gcc BUILDDIR=$(objdir)/doc/gcc/info
 
-gcc.pod: invoke.texi cppenv.texi cppopts.texi gcc-vers.texi
-	$(STAMP) $@
-	-$(TEXI2POD) $< > $@
-gfdl.pod: fdl.texi
-	$(STAMP) $@
-	-$(TEXI2POD) $< > $@
-fsf-funding.pod: funding.texi
-	$(STAMP) $@
-	-$(TEXI2POD) $< > $@
-gpl.pod: gpl_v3.texi
-	$(STAMP) $@
-	-$(TEXI2POD) $< > $@
+info-gccint:
+	+ make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/doc/gccint BUILDDIR=$(objdir)/doc/gccint/info
+
+info-cpp:
+	+ make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/doc/cpp BUILDDIR=$(objdir)/doc/cpp/info
+
+info-cppinternals:
+	+ make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/doc/cppinternals BUILDDIR=$(objdir)/doc/cppinternals/info
+
+info-install:
+	+ make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/doc/install BUILDDIR=$(objdir)/doc/install/info
 
 #\f
 # Deletion of files made during compilation.
@@ -3525,8 +3481,7 @@ clean: mostlyclean lang.clean
 	-rm -f config.h tconfig.h bconfig.h tm_p.h tm.h
 	-rm -f options.c options.h optionlist
 	-rm -f cs-*
-	-rm -f doc/*.dvi
-	-rm -f doc/*.pdf
+	-rm -rf doc
 # Delete the include directories.
 	-rm -rf include include-fixed
 # Delete files used by the "multilib" facility (including libgcc subdirs).
@@ -3567,7 +3522,7 @@ maintainer-clean:
 	$(MAKE) lang.maintainer-clean distclean
 	-rm -f cpp.??s cpp.*aux
 	-rm -f gcc.??s gcc.*aux
-	-rm -f $(gcc_docdir)/*.info $(gcc_docdir)/*.1 $(gcc_docdir)/*.7 $(gcc_docdir)/*.dvi $(gcc_docdir)/*.pdf
+	-rm -rf doc
 #\f
 # Entry points `install', `install-strip', and `uninstall'.
 # Also use `install-collect2' to install collect2 when the config files don't.
@@ -3764,24 +3719,46 @@ install-info:: doc installdirs \
 	$(DESTDIR)$(infodir)/cpp.info \
 	$(DESTDIR)$(infodir)/gcc.info \
 	$(DESTDIR)$(infodir)/cppinternals.info \
-	$(DESTDIR)$(infodir)/gccinstall.info \
+	$(DESTDIR)$(infodir)/install.info \
 	$(DESTDIR)$(infodir)/gccint.info \
 	lang.install-info
 
-$(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
-	rm -f $@
-	if [ -f $< ]; then \
-	  for f in $(<)*; do \
-	    realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
-	    $(INSTALL_DATA) $$f $(DESTDIR)$(infodir)/$$realfile; \
-	    chmod a-x $(DESTDIR)$(infodir)/$$realfile; \
-	  done; \
-	else true; fi
-	-if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
-	  if [ -f $@ ]; then \
-	    install-info --dir-file=$(DESTDIR)$(infodir)/dir $@; \
-	  else true; fi; \
-	else true; fi;
+$(DESTDIR)$(infodir)/gcc.info: doc/gcc/info/texinfo/gcc.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/gccint.info: doc/gccint/info/texinfo/gccint.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/install.info: doc/install/info/texinfo/install.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/cpp.info: doc/cpp/info/texinfo/cpp.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/cppinternals.info: doc/cppinternals/info/texinfo/cppinternals.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/gcov.info: doc/gcc/info/texinfo/gcov.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/gcov-tool.info: doc/gcc/info/texinfo/gcov-tool.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/gcov-dump.info: doc/gcc/info/texinfo/gcov-dump.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
+$(DESTDIR)$(infodir)/lto-dump.info: doc/gcc/info/texinfo/lto-dump.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
 
 pdf__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
 
@@ -3831,36 +3808,52 @@ $(DESTDIR)$(man7dir)/%$(man7ext): doc/%.7 installdirs
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext): doc/gcc.1 installdirs
+$(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext): doc/gcc/man/man/gcc.1 installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+	-chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext): doc/cpp/man/man/cpp.1 installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+	-chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext): doc/gcc/man/man/gcov.1 installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+	-chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(GCOV_TOOL_INSTALL_NAME)$(man1ext): doc/gcc/man/man/gcov-tool.1 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext): doc/cpp.1 installdirs
+$(DESTDIR)$(man1dir)/$(GCOV_DUMP_INSTALL_NAME)$(man1ext): doc/gcc/man/man/gcov-dump.1 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext): doc/gcov.1 installdirs
+$(DESTDIR)$(man1dir)/$(LTO_DUMP_INSTALL_NAME)$(man1ext): doc/gcc/man/man/lto-dump.1 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(GCOV_TOOL_INSTALL_NAME)$(man1ext): doc/gcov-tool.1 installdirs
+$(DESTDIR)$(man7dir)/fsf-funding$(man7ext): doc/gcc/man/man/fsf-funding.7 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(GCOV_DUMP_INSTALL_NAME)$(man1ext): doc/gcov-dump.1 installdirs
+$(DESTDIR)$(man7dir)/gfdl$(man7ext): doc/gcc/man/man/gfdl.7 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
-$(DESTDIR)$(man1dir)/$(LTO_DUMP_INSTALL_NAME)$(man1ext): doc/lto-dump.1 installdirs
+$(DESTDIR)$(man7dir)/gpl$(man7ext): doc/gcc/man/man/gpl.7 installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
 	-chmod a-x $@
 
+
 # Install all the header files built in the include subdirectory.
 install-headers: $(INSTALL_HEADERS_DIR)
 # Fix symlinks to absolute paths in the installed include directory to
diff --git a/gcc/configure b/gcc/configure
index dd0194a57f4..b7274875b84 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -806,6 +806,7 @@ AR
 NM
 BISON
 FLEX
+SPHINX_BUILD
 GENERATED_MANPAGES
 BUILD_INFO
 MAKEINFO
@@ -7905,7 +7906,7 @@ fi
     REPORT_BUGS_TEXI=
     ;;
   *)
-    REPORT_BUGS_TO="<$BUGURL>"
+    REPORT_BUGS_TO="$BUGURL"
     REPORT_BUGS_TEXI=@uref{`echo "$BUGURL" | sed 's/@/@@/g'`}
     ;;
   esac;
@@ -8557,6 +8558,27 @@ $as_echo "no" >&6; }
 fi
 
 
+# See if sphinx-build has been installed and is modern enough
+# that we can use it.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sphinx-build" >&5
+$as_echo_n "checking for sphinx-build... " >&6; }
+if sphinx-build -j auto -h &>/dev/null ; then
+  SPHINX_BUILD=sphinx-build
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
+  *** sphinx-build is missing or too old.
+  *** Info and man pages documentation will not be built." >&5
+$as_echo "$as_me: WARNING:
+  *** sphinx-build is missing or too old.
+  *** Info and man pages documentation will not be built." >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+  SPHINX_BUILD=
+fi
+
+
 MISSING="${CONFIG_SHELL-/bin/sh} $ac_aux_dir/missing"
 
 # How about lex?
@@ -19435,7 +19457,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 19438 "configure"
+#line 19460 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -19541,7 +19563,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 19544 "configure"
+#line 19566 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 5f30f80833e..cecdd339862 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1208,6 +1208,21 @@ else
 fi
 AC_SUBST(GENERATED_MANPAGES)
 
+# See if sphinx-build has been installed and is modern enough
+# that we can use it.
+AC_MSG_CHECKING([for sphinx-build])
+if sphinx-build -j auto -h &>/dev/null ; then
+  SPHINX_BUILD=sphinx-build
+  AC_MSG_RESULT(yes)
+else
+  AC_MSG_WARN([
+  *** sphinx-build is missing or too old.
+  *** Info and man pages documentation will not be built.])
+  AC_MSG_RESULT(no)
+  SPHINX_BUILD=
+fi
+AC_SUBST(SPHINX_BUILD)
+
 MISSING="${CONFIG_SHELL-/bin/sh} $ac_aux_dir/missing"
 
 # How about lex?
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index 155be74efdb..6e49e3117db 100644
--- a/gcc/cp/Make-lang.in
+++ b/gcc/cp/Make-lang.in
@@ -260,7 +260,7 @@ c++.install-common: installdirs
 
 # We can't use links because not everyone supports them.  So just copy the
 # manpage.
-doc/g++.1: doc/gcc.1
+doc/g++.1: doc/gcc/man/man/gcc.1
 	cp $< doc/g++.1
 
 c++.install-man: $(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext)
diff --git a/gcc/doc/gcc/conf.py b/gcc/doc/gcc/conf.py
index 17aa609a474..edbb00db2b0 100644
--- a/gcc/doc/gcc/conf.py
+++ b/gcc/doc/gcc/conf.py
@@ -1,5 +1,6 @@
 # Configuration file for the Sphinx documentation builder.
 
+import os
 import sys
 sys.path.append('../../..//doc')
 
@@ -23,14 +24,19 @@ man_pages = [
     ('gcov-a-test-coverage-program', 'gcov', 'coverage testing tool', [authors], 1),
     ('gcov-dump-an-offline-gcda-and-gcno-profile-dump-tool', 'gcov-dump', 'offline gcda and gcno profile dump tool', [authors], 1),
     ('gcov-tool-an-offline-gcda-profile-processing-tool', 'gcov-tool', 'offline gcda profile processing tool', [authors], 1),
-    ('lto-dump-tool-for-dumping-lto-object-files', 'lto-dump', 'Tool for dumping LTO object files', [authors], 1),
     ('general-public-license-3', 'gpl', 'GNU General Public License', [], 7),
     ('gnu-free-documentation-license', 'gfdl', 'GNU Free Documentation License', [], 7),
     ('funding', 'fsf-funding', 'Funding Free Software', [], 7)
 ]
 
+ENABLE_LTO = os.getenv('ENABLE_LTO')
+assert ENABLE_LTO
+
+if ENABLE_LTO  == 'yes':
+    man_pages += [('lto-dump-tool-for-dumping-lto-object-files', 'lto-dump', 'Tool for dumping LTO object files', [authors], 1)]
+
 texinfo_documents = [
   ('index', 'gcc', project, authors, None, None, None, True)
 ]
 
-tags.add('gcc')
\ No newline at end of file
+tags.add('gcc')
diff --git a/gcc/fortran/Make-lang.in b/gcc/fortran/Make-lang.in
index 63195a9c7ed..686788ee868 100644
--- a/gcc/fortran/Make-lang.in
+++ b/gcc/fortran/Make-lang.in
@@ -109,16 +109,18 @@ fortran.all.cross: gfortran-cross$(exeext)
 fortran.start.encap: gfortran$(exeext)
 fortran.rest.encap:
 
-fortran.srcinfo: doc/gfortran.info
-	-cp -p $^ $(srcdir)/fortran
-
 fortran.tags: force
 	cd $(srcdir)/fortran; etags -o TAGS.sub *.c *.h; \
 	etags --include TAGS.sub --include ../TAGS.sub
 
-fortran.info: doc/gfortran.info doc/gfc-internals.info
+fortran.info: info-gfortran info-gfc-internals
 fortran.dvi: doc/gfortran.dvi doc/gfc-internals.dvi
 
+info-gfortran:
+	+ if [ x$(SPHINX_BUILD) = xsphinx-build ]; then \
+	  make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/fortran/doc/gfortran BUILDDIR=$(objdir)/doc/fortran/info; \
+	else true; fi
+
 F95_HTMLFILES = $(build_htmldir)/gfortran
 
 fortran.html: $(F95_HTMLFILES)/index.html
@@ -154,9 +156,10 @@ fortran.install-pdf: $(F95_PDFFILES)
 	  $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/gcc/$$f"; \
 	done
 
-F95_MANFILES = doc/gfortran.1
+man-fortran:
+	+ make -C $(srcdir)/../doc man SOURCEDIR=$(srcdir)/fortran/doc/gfortran BUILDDIR=$(objdir)/doc/fortran/man
 
-fortran.man: $(F95_MANFILES)
+fortran.man: man-fortran
 
 fortran.srcman: $(F95_MANFILES)
 	-cp -p $^ $(srcdir)/doc
@@ -186,13 +189,6 @@ GFORTRAN_TEXI = \
   $(srcdir)/doc/include/gcc-common.texi \
   gcc-vers.texi
 
-doc/gfortran.info: $(GFORTRAN_TEXI)
-	if [ x$(BUILD_INFO) = xinfo ]; then \
-	  rm -f doc/gfortran.info-*; \
-	  $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
-	    -o $@ $<; \
-	else true; fi
-
 doc/gfortran.dvi: $(GFORTRAN_TEXI)
 	$(TEXI2DVI) -I $(srcdir)/fortran -I $(abs_docdir)/include -o $@ $<
 
@@ -217,11 +213,9 @@ GFC_INTERNALS_TEXI = \
   $(srcdir)/doc/include/gcc-common.texi \
   gcc-vers.texi
 
-doc/gfc-internals.info: $(GFC_INTERNALS_TEXI)
-	if [ x$(BUILD_INFO) = xinfo ]; then \
-	  rm -f doc/gfc-internals.info-*; \
-	  $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
-	    -o $@ $<; \
+info-gfc-internals:
+	+ if [ x$(SPHINX_BUILD) = xsphinx-build ]; then \
+	  make -C $(srcdir)/../doc info SOURCEDIR=$(srcdir)/fortran/doc/gfc-internals BUILDDIR=$(objdir)/doc/gfc-internals/info; \
 	else true; fi
 
 doc/gfc-internals.dvi: $(GFC_INTERNALS_TEXI)
@@ -256,9 +250,13 @@ fortran.install-plugin:
 
 fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
 
+$(DESTDIR)$(infodir)/gfortran.info: doc/fortran/info/texinfo/gfortran.info installdirs
+	-rm -f $@
+	-$(INSTALL_DATA) $< $@
+
 fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
 
-$(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext): doc/gfortran.1 \
+$(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext): doc/fortran/man/man/gfortran.1 \
 		installdirs
 	-rm -f $@
 	-$(INSTALL_DATA) $< $@
@@ -286,12 +284,6 @@ fortran.mostlyclean:
 fortran.clean:
 fortran.distclean:
 	-rm -f fortran/config.status fortran/Makefile
-
-fortran.extraclean:
-fortran.maintainer-clean:
-	-rm -f doc/gfortran.info* fortran/gfortran.*aux
-	-rm -f $(docobjdir)/gfortran.1
-
 #\f
 # Stage hooks:
 # The toplevel makefile has already created stage?/fortran at this point.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-06-22 14:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-22 14:54 [gcc(refs/users/marxin/heads/sphinx-v1)] First make integration Martin Liska

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).