On Tue, Jul 28, 2020 at 7:34 AM Simon Marchi <sim...@simark.ca> wrote: > > On 2020-07-28 10:11 a.m., H.J. Lu wrote: > > On Tue, Jul 28, 2020 at 7:01 AM Simon Marchi <sim...@simark.ca> wrote: > >> > >> On 2020-07-28 9:56 a.m., H.J. Lu wrote: > >>> On Tue, Jul 28, 2020 at 6:51 AM Andreas Schwab <sch...@linux-m68k.org> > >>> wrote: > >>>> > >>>> On Jul 28 2020, H.J. Lu via Binutils wrote: > >>>> > >>>>> On x86, the native GCC can support -m32 and -m64. "gcc -m32" or "gcc > >>>>> -m64" > >>>>> are not cross compiling. > >>>> > >>>> You cannot link -m64 and -m32 together. > >>>> > >>>>> I didn't set PKG_CONFIG_LIBDIR and I don't want to set it. > >>>> > >>>> Then use the correct pkg-config for your target. If you think > >>>> pkg-config is broken, then fix _that_. > >>>> > >>> > >>> I did: > >>> > >>> RUNTESTFLAGS="--target_board 'unix{-m32}'" CC="gcc -m32 -fno-lto > >>> -fcf-protection" > >>> CXX="g++ -fno-lto -m32 -fcf-protection" /exp > >>> ort/gnu/import/git/gitlab/x86-binutils/configure \ > >>> --enable-targets=x86_64-linux \ > >>> i686-linux \ > >>> --enable-plugins --disable-gdb --disable-gdbserver --disable-libdecnumbe > >>> r --disable-readline --disable-sim --with-sysroot=/ --with-system-zlib \ > >>> --prefix=/usr/local \ > >>> --with-local-prefix=/usr/local > >>> configure: WARNING: you should use --build, --host, --target > >>> checking build system type... i686-pc-linux-gnu > >>> checking host system type... i686-pc-linux-gnu > >>> checking target system type... i686-pc-linux-gnu > >> > >> So... is your build system a 32-bit one? Why does the above say > >> i686-pc-linux-gnu > >> and not x86_64-something? > >> > > > > My system supports both -m32 and -m64. Depending on CC, configure > > selects i686 or x86-64 target. > > Can you clarify how this magic works, is this standard autoconf? Because I > am trying this > on Fedora, so pretty much the same setup as you, and I don't see this > behavior: > > $ /home/simark/src/binutils-gdb/configure CC="gcc -m32" CXX="g++ -m32" > checking build system type... x86_64-pc-linux-gnu > checking host system type... x86_64-pc-linux-gnu > checking target system type... x86_64-pc-linux-gnu > ... >
I checked it again. I also passed i686-linux, not --host=, to configure. > > And even if it worked, why would it set "build" to i686, it doesn't make > sense. The gcc you > compile with, and its environment, is still x86_64, not i686. > > So *if* it works, it would be a shortcut for setting --host=i686-something, > maybe. So > regardless of how that above works, that doesn't remove the need to configure > pkg-config > correctly for the host system. > > If you don't want to learn about with pkg-config and deal with it, then > please say "I think > we should not use pkg-config", and ideally give supporting points. Please > don't unilaterally > push patches just to paper over your own problems. You just make it so that > somebody will > need to untangle more mess later. I am OK to remove pkg.m4. -- H.J.