From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1652) id 4F9513858D38; Mon, 12 Feb 2024 15:47:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4F9513858D38 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1707752851; bh=p7KOiq5TyMVCmAQQ1qhCKMtKIRwUXD1Mh6FDP+Taw9U=; h=From:To:Subject:Date:From; b=i/dkKC/HyOu0HzrG0uzjmIbZmc95/rOWImuEx93y40THAaiMXkgp1u+i7LUb6avqh gAuvJ/NQIkkw/+ShuSzn0dDUqYwQP5flKbumMCegMJ3vRlMgUbW5Jm9YxBZXZPj2mE UhJPHscok1seG35PQ2sTeptBxk4zPR3NlFFXh5cg= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Christophe Lyon To: gcc-cvs@gcc.gnu.org Subject: [gcc r14-8932] gcc/Makefile.in: Always check info dependencies X-Act-Checkin: gcc X-Git-Author: Christophe Lyon X-Git-Refname: refs/heads/master X-Git-Oldrev: 5e39897ee2c73938fa940c4792d987608aeeebcd X-Git-Newrev: 1fcaa3a8225885a93d537025cb071651c13235f7 Message-Id: <20240212154731.4F9513858D38@sourceware.org> Date: Mon, 12 Feb 2024 15:47:31 +0000 (GMT) List-Id: https://gcc.gnu.org/g:1fcaa3a8225885a93d537025cb071651c13235f7 commit r14-8932-g1fcaa3a8225885a93d537025cb071651c13235f7 Author: Christophe Lyon Date: Sat Feb 10 21:17:08 2024 +0000 gcc/Makefile.in: Always check info dependencies BUILD_INFO is currently a byproduct of checking makeinfo presence/version. INSTALL_INFO used to be defined similarly, but was removed in 2000 (!) by commit 17db658241d18cf6db59d31bc2d6eac96e9257df (svn r38141). In order to save build time, our CI overrides MAKEINFO=echo, which works when invoking 'make all' but not for 'make install' in case some info files need an update. I noticed this while testing a patch posted on the gcc-patches list, leading to an error at 'make install' time after updating tm.texi (the build reported 'new text' in tm.texi and stopped). This is because 'install' depends on 'install-info', which depends on $(DESTDIR)$(infodir)/gccint.info (among others). As discussed, it is better to detect this problem during 'make all' rather than 'make install', and we still want to detect it even if makeinfo is not available. This patch makes configure set BUILD_INFO=no-info in case makeinfo is missing/too old, which effectively makes the build rules no-ops (x$(BUILD_INFO) != xinfo), and updates Makefile.in so that 'info' dependencies are still checked. 2024-02-10 Christophe Lyon gcc/ * Makefile.in: Add no-info dependency. * configure.ac: Set BUILD_INFO=no-info if makeinfo is not available. * configure: Regenerate. Diff: --- gcc/Makefile.in | 7 +++++++ gcc/configure | 2 +- gcc/configure.ac | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 95caa54a52bd..a74761b7ab32 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -3480,6 +3480,13 @@ install-no-fixedincludes: doc: $(BUILD_INFO) $(GENERATED_MANPAGES) +# If BUILD_INFO is set to no-info by configure, we still want to check +# 'info' dependencies even the build rules are no-ops because +# BUILD_INFO != info (see %.info rule) +ifeq ($(BUILD_INFO),no-info) +no-info: info +endif + INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \ doc/gccinstall.info doc/cppinternals.info diff --git a/gcc/configure b/gcc/configure index c83e09beea9f..41b978b0380b 100755 --- a/gcc/configure +++ b/gcc/configure @@ -8835,7 +8835,7 @@ if test $gcc_cv_prog_makeinfo_modern = no; then $as_echo "$as_me: WARNING: *** Makeinfo is missing or too old. *** Info documentation will not be built." >&2;} - BUILD_INFO= + BUILD_INFO=no-info else BUILD_INFO=info fi diff --git a/gcc/configure.ac b/gcc/configure.ac index 239856a4e202..72012d61e671 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -1245,7 +1245,7 @@ if test $gcc_cv_prog_makeinfo_modern = no; then AC_MSG_WARN([ *** Makeinfo is missing or too old. *** Info documentation will not be built.]) - BUILD_INFO= + BUILD_INFO=no-info else BUILD_INFO=info fi