[PATCH v2 3/4] x86: break gas dependency on libopcodes

H.J. Lu hjl.tools@gmail.com
Tue Nov 22 18:21:06 GMT 2022


On Tue, Nov 22, 2022 at 9:05 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 22.11.2022 17:38, H.J. Lu wrote:
> > On Mon, Nov 21, 2022 at 11:15 PM Jan Beulich <jbeulich@suse.com> wrote:
> >>
> >> On 21.11.2022 18:04, H.J. Lu wrote:
> >>> On Mon, Nov 21, 2022 at 8:52 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>
> >>>> On 21.11.2022 17:43, H.J. Lu wrote:
> >>>>> On Mon, Nov 21, 2022 at 8:32 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>>>
> >>>>>> On 21.11.2022 17:26, H.J. Lu wrote:
> >>>>>>> On Fri, Nov 18, 2022 at 1:13 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>>>>>
> >>>>>>>> gas doesn't use anything from libopcodes anymore - suppress linking in
> >>>>>>>> that library.
> >>>>>>>> ---
> >>>>>>>> v2: New, split off from larger earlier patch.
> >>>>>>>>
> >>>>>>>> --- a/gas/configure
> >>>>>>>> +++ b/gas/configure
> >>>>>>>> @@ -12263,7 +12263,7 @@ _ACEOF
> >>>>>>>>
> >>>>>>>>      # Do we need the opcodes library?
> >>>>>>>>      case ${cpu_type} in
> >>>>>>>> -      vax | tic30)
> >>>>>>>> +      vax | tic30 | i386)
> >>>>>>>>         ;;
> >>>>>>>>
> >>>>>>>>        *)
> >>>>>>>> --- a/gas/configure.ac
> >>>>>>>> +++ b/gas/configure.ac
> >>>>>>>> @@ -420,7 +420,7 @@ changequote([,])dnl
> >>>>>>>>
> >>>>>>>>      # Do we need the opcodes library?
> >>>>>>>>      case ${cpu_type} in
> >>>>>>>> -      vax | tic30)
> >>>>>>>> +      vax | tic30 | i386)
> >>>>>>>>         ;;
> >>>>>>>>
> >>>>>>>>        *)
> >>>>>>>>
> >>>>>>>
> >>>>>>> We need to add some dependencies on i386-opc.tbl and i386-reg.tbl for
> >>>>>>> --enable-maintainer-mode to check if i386-tbl.h and i386-init.h are up to
> >>>>>>> date.  It doesn't need to regenerate i386-tbl.h.  An error message should be
> >>>>>>> sufficient.
> >>>>>>
> >>>>>> This isn't needed here, but in patch 2, where I'm already adjusting
> >>>>>> existing dependencies. Since I'm not modifying any toplevel files, the
> >>>>>> building of opcodes/ still ought to be happening before the building of
> >>>>>> gas/, so I don't see why any further changes should be necessary. Please
> >>>>>> clarify if you see any such reason.
> >>>>>>
> >>>>>
> >>>>> Since gas no longer depends on libopcodes, one may change i386-opc.tbl and
> >>>>> run "make" in gas.
> >>>>
> >>>> Is running make in gas/ a supported operation?
> >>>>
> >>>>>   It is more reliable than the fake dependency in opcodes.
> >>>>
> >>>> If the answer to the above is yes, then I may agree here. Except that then
> >>>> I don't see how this dependency is being enforced prior to this series.
> >>>> IOW - aren't you asking to address an unrelated issue?
> >>>>
> >>>
> >>> It didn't work before.  Now we have a chance.
> >>
> >> But then please in a separate change, on top of this series. I'm willing
> >> to make such a patch (whether that then finds your approval is a separate
> >> question), but I'd please like to see things unblocked here.
> >
> > Then please don't add the fake dependency.
>
> But then the build will be broken in opcodes/. That one is needed _now_.
> The new dependency in gas/ is orthogonal and hence can be added
> subsequently. If that's not your understanding, then please go into
> further detail.
>

Here is a patch to include opcodes/i386-tbl.h directly:

https://sourceware.org/pipermail/binutils/2022-November/124583.html

-- 
H.J.


More information about the Binutils mailing list