From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 535EA3858414 for ; Fri, 10 Feb 2023 21:42:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 535EA3858414 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1676065346; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8vxewFkFg5BC1f7z88ai5POiVtR0ifnvxvxNF3koQPk=; b=hJjmU4DKOYWpdLH98RfoUS2rxXUcwyGAj3Pf4az0iF0dpGo23LF8ac4kIVdS/E39DRUviB Fz8Cq58fuy8RBekv1FvxuJyAtGhGej+1oXwsr+67VKaVde73g+P4Sbe09j3nrEsX+6r/1k Wz12tQwg+rM2UyswiUaHXdoxYMrqZ5s= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-622-rvUfMazQMYmss843PhCC1g-1; Fri, 10 Feb 2023 16:42:25 -0500 X-MC-Unique: rvUfMazQMYmss843PhCC1g-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C1793101A521 for ; Fri, 10 Feb 2023 21:42:24 +0000 (UTC) Received: from guittard.redhat.com (unknown [10.2.16.27]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7FE982026D68 for ; Fri, 10 Feb 2023 21:42:24 +0000 (UTC) From: Keith Seitz To: gdb-patches@sourceware.org Subject: [PATCH] Fix doc build dependencies for --with-system-readline Date: Fri, 10 Feb 2023 13:42:24 -0800 Message-Id: <20230210214224.1754620-1-keiths@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-Spam-Status: No, score=-11.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: PR build/30108 concerns building gdb documentation with --with-sytem-readline. If the in-tree readline directory is missing, though, the docs will fail to build: make[4]: Entering directory '/home/keiths/work/readline-doc-issue/linux/gdb/doc' make[4]: *** No rule to make target '../../../src/gdb/doc/../../readline/readline/doc/rluser.texi', needed by 'gdb.info'. Stop. The listed file (and hsuser.texi) are conditionally included by gdb.texinfo. When system readline is used, gdb/configure.ac will leave READLINE_TEXI_INCFLAGS empty, causing doc/Makefile.in to output a line to $BUILD/doc/GDBvn.texi with "@set SYSTEM_READLINE". This surpresses the inclusion of the missing files. They are not needed or used in this scenario. However, GDB_DOC_SOURCE_INCLUDES always lists these two files as dependencies, thus provoking the build error whenever readline/ is missing. This patch fixes this by creating (essentially) a conditional setting of the dependencies to be included from readline. --- gdb/configure | 8 ++++++-- gdb/configure.ac | 3 +++ gdb/doc/Makefile.in | 8 ++++++-- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/gdb/configure b/gdb/configure index 113b7cf8a30..14ea40ca603 100755 --- a/gdb/configure +++ b/gdb/configure @@ -746,6 +746,7 @@ LIBEXPAT HAVE_LIBEXPAT JIT_READER_DIR TARGET_PTR +READLINE_DOC_SOURCE_INCLUDES READLINE_TEXI_INCFLAG READLINE_CFLAGS READLINE_DEPS @@ -11449,7 +11450,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11452 "configure" +#line 11453 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11555,7 +11556,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11558 "configure" +#line 11559 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -20790,17 +20791,20 @@ $as_echo "$gdb_cv_readline_ok" >&6; } READLINE_DEPS= READLINE_CFLAGS= READLINE_TEXI_INCFLAG= + READLINE_DOC_SOURCE_INCLUDES='$(READLINE_SYSTEM_DOC_INCLUDES)' else READLINE='$(READLINE_DIR)/libreadline.a' READLINE_DEPS='$(READLINE)' READLINE_CFLAGS='-I$(READLINE_SRC)/..' READLINE_TEXI_INCFLAG='-I $(READLINE_DIR)' + READLINE_DOC_SOURCE_INCLUDES='$(READLINE_INTREE_DOC_INCLUDES)' fi + # Generate jit-reader.h # This is typedeffed to GDB_CORE_ADDR in jit-reader.h diff --git a/gdb/configure.ac b/gdb/configure.ac index 7c7bf88b3fb..d1a92c883af 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -643,16 +643,19 @@ if test "$with_system_readline" = yes; then READLINE_DEPS= READLINE_CFLAGS= READLINE_TEXI_INCFLAG= + READLINE_DOC_SOURCE_INCLUDES='$(READLINE_SYSTEM_DOC_INCLUDES)' else READLINE='$(READLINE_DIR)/libreadline.a' READLINE_DEPS='$(READLINE)' READLINE_CFLAGS='-I$(READLINE_SRC)/..' READLINE_TEXI_INCFLAG='-I $(READLINE_DIR)' + READLINE_DOC_SOURCE_INCLUDES='$(READLINE_INTREE_DOC_INCLUDES)' fi AC_SUBST(READLINE) AC_SUBST(READLINE_DEPS) AC_SUBST(READLINE_CFLAGS) AC_SUBST(READLINE_TEXI_INCFLAG) +AC_SUBST(READLINE_DOC_SOURCE_INCLUDES) # Generate jit-reader.h diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in index 5d40aa229b2..110b6088905 100644 --- a/gdb/doc/Makefile.in +++ b/gdb/doc/Makefile.in @@ -121,6 +121,11 @@ PDFTEX = pdftex # Program to generate Postscript files from DVI files. DVIPS = dvips +# Readline includes. +READLINE_SYSTEM_DOC_INCLUDES = +READLINE_INTREE_DOC_INCLUDES = $(READLINE_DIR)/rluser.texi $(READLINE_DIR)/hsuser.texi +READLINE_DOC_SOURCE_INCLUDES = @READLINE_DOC_SOURCE_INCLUDES@ + # Main GDB manual # Note that this unconditionally includes the readline texi files, # even when --with-system-readline is used. This is harmless because @@ -129,8 +134,7 @@ GDB_DOC_SOURCE_INCLUDES = \ $(srcdir)/fdl.texi \ $(srcdir)/gpl.texi \ $(srcdir)/agentexpr.texi \ - $(READLINE_DIR)/rluser.texi \ - $(READLINE_DIR)/hsuser.texi + $(READLINE_DOC_SOURCE_INCLUDES) GDB_DOC_BUILD_INCLUDES = \ gdb-cfg.texi \ GDBvn.texi -- 2.39.1