[PATCH 1/1] support cross compilation

Érico Nogueira ericonr@disroot.org
Wed May 26 15:41:51 GMT 2021


On Wed May 26, 2021 at 10:58 AM -03, Petr Ovtchenkov wrote:
> On Wed, 26 May 2021 10:09:31 -0300
> Érico Nogueira <ericonr@disroot.org> wrote:
>
> > Hi! Are you sure this is necessary? In Void Linux, we cross compile
> > elfutils for arm and aarch64 without any issue, and I have built it a
> > few times for powerpc as well.
> > 
>
> Hello!
>
> Yes, I am sure. I do not know about you process (check, that you really
> cross, not run via qemu or like). Build process _run_ i386_gendis to
> generate headers:

Yes, we really cross.

>
> <snip>
> if MAINTAINER_MODE
> noinst_HEADERS += memory-access.h i386_parse.h i386_data.h
>
> noinst_PROGRAMS = i386_gendis$(EXEEXT)
>
> $(srcdir)/%_dis.h: %_defs i386_gendis$(EXEEXT)
> $(AM_V_GEN)./i386_gendis$(EXEEXT) $< > $@T <================
> $(AM_V_at)mv -f $@T $@
>
> else
>
> $(srcdir)/%_dis.h:
> @echo '*** missing $@; configure with --enable-maintainer-mode'
> @false
>
> endif
> </snip>

We always use the release tarballs, which already have the %_dis.h
files. This explains why we haven't hit any issues.

>
> > > +if CROSS
> > > +i386_gendis_LINK = ${CC_FOR_BUILD} ${LDFLAGS} -o $@
> > > +
> > > +$(i386_gendis_OBJECTS): CC=${CC_FOR_BUILD}
> > > +endif  
> >
> > Isn't this hardcoding an assumption that the build machine is x86?
>
> I think no. But this question is for original author:

Indeed it isn't, I hadn't looked into it properly yet.

>
> commit 3cbdd387c752999255aea91600b5cfdefbeac7d0
> Author: Ulrich Drepper <drepper@redhat.com>
> Date: Wed Jan 2 17:44:39 2008 +0000
>
> propagate from branch 'com.redhat.elfutils.disasm' (head
> d15b4eb794e81e477f9896fe82a74cb5ecf4514c) to branch
> 'com.redhat.elfutils' (head
> eaacbf01f8cc89d043ec6eca9b5e35cb5c4cde06)
>
> ;)

Anyway, couldn't you (re)use the distribution tarball generation stuff
for cross setups from git master? Otherwise this would add a dependency
on autoconf-archive for anyone generating the configure script
locally... I think a final version of this patch should document the
autoconf-archive requirement, if it's merged.

Cheers,
Érico


More information about the Elfutils-devel mailing list