[opensuse-packaging] armv7hl gnueabi vs. gnueabihf
The gccN.spec has the following lines: %if "%{TARGET_ARCH}" == "armv7hl" --with-arch=armv7-a \ --with-tune=cortex-a15 \ --with-float=hard \ --with-abi=aapcs-linux \ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif The rpm %configure macro runs "./configure --host=armv7hl-suse-linux-gnueabi --build=armv7hl-suse-linux-gnueabi". Also gccN.spec uses the 'gnueabi' suffix despite "--with-float=hard". In OCaml github issue #9431 it turned out third party software relies on a correct --build= value to produce correct binaries. Why do our armv7 builds use 'gnueabi' instead of 'gnueabihf' to indicate that hard floating point is the default? Olaf
On Wed, Apr 8, 2020 at 12:24 PM Olaf Hering <olaf@aepfle.de> wrote:
The gccN.spec has the following lines:
%if "%{TARGET_ARCH}" == "armv7hl" --with-arch=armv7-a \ --with-tune=cortex-a15 \ --with-float=hard \ --with-abi=aapcs-linux \ --with-fpu=vfpv3-d16 \ --disable-sjlj-exceptions \ %endif
The rpm %configure macro runs "./configure --host=armv7hl-suse-linux-gnueabi --build=armv7hl-suse-linux-gnueabi". Also gccN.spec uses the 'gnueabi' suffix despite "--with-float=hard".
In OCaml github issue #9431 it turned out third party software relies on a correct --build= value to produce correct binaries.
Why do our armv7 builds use 'gnueabi' instead of 'gnueabihf' to indicate that hard floating point is the default?
Both Red Hat and SUSE drop the "hf" suffix because it's redundant when we have armv7hl as the CPU type in the platform triple. "hf" is not part of the ABI type, it's part of the CPU type. -- 真実はいつも一つ!/ Always, there's only one truth! -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Am Wed, 8 Apr 2020 12:32:22 -0400 schrieb Neal Gompa <ngompa13@gmail.com>:
Both Red Hat and SUSE drop the "hf" suffix because it's redundant when we have armv7hl as the CPU type in the platform triple. "hf" is not part of the ABI type, it's part of the CPU type.
This is probably fine. Both rpm and ARM32 maintainers have all the liberty to pick any random string for BUILDTARGET during configuration of rpm itself. But when it comes to GNU autoconf and configure, the %configure macro MUST pass values to --host/build which are compatible with config.guess output. Therefore I think the bug for SUSE at least is how our rpm is configured. Olaf
participants (2)
-
Neal Gompa
-
Olaf Hering