From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oa1-x2c.google.com (mail-oa1-x2c.google.com [IPv6:2001:4860:4864:20::2c]) by sourceware.org (Postfix) with ESMTPS id 4362C3858CDA for ; Wed, 30 Nov 2022 00:06:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 4362C3858CDA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-142306beb9aso19109456fac.11 for ; Tue, 29 Nov 2022 16:06:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=MkqDnurc5XZie6mLlxRzCYGbXow0iU1bEsgb5d1PXQA=; b=qr49vM6hbVixRoQTHhFpX0jRDGr3hbMFfAxWOZuy3pmdHKQOGYpGD5zHVkjqmg4/cO SqVdzx6ic/8XI3vVrKUzWUzJ6JjTpWbC1VbKGJEyVzMaesriAHGHH5iXYuxcSG+xK2eB UcQ6EkEVv5TZcEjg7/gBlttHctmfxB/ZPtvMW+lpyGzpjYiCm888wlGKiz3YlVbCJnRb g20voHGbkBYh2sHsG7Nvlanh/Cb1mMJTdHj1Wfw0pg98MXHvavyhtgcP/nRHyi0OLdw6 rqRmw/N8NfRrBxXiiSamTCyXrkuEbawWGrF+4ViOzivk7Ojtn1s8jZmTd0iuTb4Ayl3x jhZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=MkqDnurc5XZie6mLlxRzCYGbXow0iU1bEsgb5d1PXQA=; b=TdsFE8Dpc4luYiRC6RJo0W0IXLwIC3BjJiqEtP7V8ZqJ+ADdNjRXs9VBURD0Aipr/B 6SPl2f1oE5p5YAtWp74ObYS28pxCjKezYRGWV+8E/sngJOvoLFiapVIhJBXmhEkUVs3r uBNQQd+X1pAVqwJU+cWJ3MNhw3vvusHixHRjhLedJDWA67FznKsudy+5M4xVQYHQ1fUR 8HLePx7BncejNFXgIP8eAxYSAaQlQsFnH7a4oiRNy0AICIsScfF0BdGqgNWdXHpeaSuC RadmJ5gM8pjl/0Jqr0UGCf4kJ58BHsxPAuamLPJYmZKI7raT/nX1PMoM7rFMPNM6rBPG Dkxw== X-Gm-Message-State: ANoB5pmI9X9V84mw4KTP3hPGVxWe/yGrpPGAxYU2bsH3HLrnrrSDDDqS 4VJGrqoWIB9rFi7T58/Wa2UHIaVFY5Ad6fSWEtbj0m/01XM= X-Google-Smtp-Source: AA0mqf7pqJpnQKj7Ltg5G+CagcklNmIsa42lJknlQy0PB+8cYhT4qo+/oceTmIA3rJFOUkgk219zXrdy3TfT5cnoLF8= X-Received: by 2002:a05:6871:4501:b0:13c:5da4:7229 with SMTP id nj1-20020a056871450100b0013c5da47229mr26823606oab.266.1669766807611; Tue, 29 Nov 2022 16:06:47 -0800 (PST) MIME-Version: 1.0 References: <20221122181927.251937-1-hjl.tools@gmail.com> <6a5d4918-919a-8b6b-822b-17ce38488629@suse.com> In-Reply-To: From: "H.J. Lu" Date: Tue, 29 Nov 2022 16:06:11 -0800 Message-ID: Subject: Re: [PATCH v2] x86: Remove libopcodes dependency To: Jan Beulich Cc: Binutils Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3017.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,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: On Tue, Nov 29, 2022 at 11:38 AM H.J. Lu wrote: > > On Tue, Nov 29, 2022 at 1:22 AM Jan Beulich wrote: > > > > On 29.11.2022 00:49, H.J. Lu wrote: > > > On Thu, Nov 24, 2022 at 2:19 AM Jan Beulich wrote: > > >> On 22.11.2022 19:19, H.J. Lu wrote: > > >>> --- a/gas/Makefile.am > > >>> +++ b/gas/Makefile.am > > >>> @@ -446,6 +446,12 @@ development.exp: $(BFDDIR)/development.sh > > >>> $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \ > > >>> | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@ > > >>> > > >>> +$(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h: \ > > >>> + @MAINT@ $(srcdir)/../opcodes/i386-opc.tbl \ > > >>> + $(srcdir)/../opcodes/i386-reg.tbl \ > > >>> + $(srcdir)/../opcodes/i386-opc.h > > >>> + cd ../opcodes; make gen-i386-tbl > > >> > > >> I've made a patch to gas/Makefile.am as you have requested in reply to > > >> my series. I will want to put that through some more testing, so I will > > >> submit a v3 of that only a little later (and of course only unless you > > >> submit a v2 of your patch earlier that I would also end up being okay > > >> with). In the course of doing so I noticed a few more issues with your > > >> change: > > >> > > >> For one I don't think you can put @MAINT@ on a continued line, as the > > >> line continuation might then be hidden when @MAINT@ expands to #. The > > >> list of dependencies wants expressing via a variable, which would then > > >> be used immediately after @MAINT@ without any line continuation > > >> following. > > > > > > Fixed. > > > > No, the same problem is still there. You either need to use a very long > > line, or you need to introduce a variable holding the list of prereqs, > > like I've done in my series. > > I got > > $(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h: > $(srcdir)/../opcodes/i386-opc.tbl \ > $(srcdir)/../opcodes/i386-reg.tbl \ > $(srcdir)/../opcodes/i386-opc.h \ > $(srcdir)/../opcodes/i386-gen.c > $(MAKE) -C ../opcodes gen-i386-tbl > > and > > $(srcdir)/../opcodes/i386-init.h $(srcdir)/../opcodes/i386-tbl.h: # > $(srcdir)/../opcodes/i386-opc.tbl \ > $(srcdir)/../opcodes/i386-reg.tbl \ > $(srcdir)/../opcodes/i386-opc.h \ > $(srcdir)/../opcodes/i386-gen.c > $(MAKE) -C ../opcodes gen-i386-tbl > > I didn't run into any problems. > > > >> And then your rule / dependency won't be enough on a "maintainer-clean" > > >> tree, i.e. when the generated headers aren't there at all, and when > > >> config/.deps/tc-i386.Po is still empty. In that case nothing would > > >> trigger their generation; an explicit dependency of config/tc-i386.o on > > >> these headers needs adding here. > > > > > > Fixed. > > > > > >> Finally you're missing a dependency of the generated headers on > > >> i386-gen.c. > > > > > > They have a dependency on i386-gen which depends on i386-gen.c. > > > > In opcodes/, yes, but talk was about the rule in gas/. Yet despite > > your comment above I see that you've added the missing dependency. > > > > > Here is the v2 patch. > > > > As said in reply to v1 - my objection to this particular use of make > > recursion remains. > > The gen-i386-tbl rule doesn't touch any files used by libopcodes. There are bfd/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ binutils/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ gas/Makefile.in: ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ > > I also continue to be irritated by you specifically having asked me > > to further split my series, when you do everything in a single patch. > > My patch is relatively small and it does only one thing. > > > One further request at least for consideration: In my v3 I've moved > > the inclusion of opcodes/i386-tbl.h quite a bit further down in > > tc-i386.c, as I think it's preferable that way (not introducing the > > static arrays earlier than necessary). > > Does it make any differences? > > > -- > H.J. -- H.J.