Bug#1001314: mozjs78: FTBFS on armhf: '-mfloat-abi=hard': selected architecture lacks an FPU

Simon McVittie smcv at debian.org
Wed Dec 8 09:41:25 GMT 2021


Control: retitle -1 mozjs78: FTBFS on armhf: '-mfloat-abi=hard': selected architecture lacks an FPU
Control: tags -1 + help

On Wed, 08 Dec 2021 at 10:14:55 +0100, Fabio Fantoni wrote:
> Hi, as can be see in reproducible tests (https://tests.reproducible-builds.org/debian/rb-pkg/unstable/armhf/mozjs78.html)
> latest mozjs78 fails to build on armhf in both sid and testing.
> 
> https://tests.reproducible-builds.org/debian/rbuild/unstable/armhf/mozjs78_78.15.0-1.rbuild.log.gz
> 
> https://tests.reproducible-builds.org/debian/rbuild/bookworm/armhf/mozjs78_78.15.0-1.rbuild.log.gz

The source code hasn't changed since a version that built successfully, so
this appears to be a regression triggered by some new toolchain package.

armhf certainly does have a FPU - that's its defining feature when compared
with armel.

The error appears to be (shown wrapped here):

> [mozglue-static 0.1.0] cargo:warning=cc1plus: error: '-mfloat-abi=hard': selected architecture lacks an FPU
> [mozglue-static 0.1.0]
> [mozglue-static 0.1.0]
> [mozglue-static 0.1.0] error occurred: Command
> "/usr/bin/arm-linux-gnueabihf-g++" "-O2" "-ffunction-sections"
> "-fdata-sections" "-fPIC" "-march=armv7-a"
> "-I/build/mozjs78-78.15.0/debian/build/dist/system_wrappers"
> "-include" "/build/mozjs78-78.15.0/config/gcc_hidden.h"
> "-U_FORTIFY_SOURCE" "-D_FORTIFY_SOURCE=2" "-fstack-protector-strong"
> "-DNDEBUG=1" "-DTRIMMED=1" "-DEXPORT_JS_API" "-DMOZ_HAS_MOZGLUE"
> "-I/build/mozjs78-78.15.0/js/src/rust"
> "-I/build/mozjs78-78.15.0/debian/build/js/src/rust"
> "-I/build/mozjs78-78.15.0/debian/build/dist/include" "-fPIC"
> "-DMOZILLA_CLIENT"
> "-include" "/build/mozjs78-78.15.0/debian/build/js/src/js-confdefs.h"
> "-Wdate-time" "-D_FORTIFY_SOURCE=2" "-Wall" "-Wempty-body"
> "-Wignored-qualifiers" "-Woverloaded-virtual" "-Wpointer-arith"
> "-Wsign-compare" "-Wtype-limits" "-Wunreachable-code" "-Wwrite-strings"
> "-Wno-invalid-offsetof" "-Wc++2a-compat" "-Wduplicated-cond"
> "-Wimplicit-fallthrough" "-Wunused-function" "-Wunused-variable"
> "-Wno-error=maybe-uninitialized" "-Wno-error=deprecated-declarations"
> "-Wno-error=array-bounds" "-Wno-error=coverage-mismatch"
> "-Wno-error=free-nonheap-object" "-Wno-multistatement-macros"
> "-Wno-error=class-memaccess" "-Wno-error=deprecated-copy" "-Wformat"
> "-Wformat-overflow=2" "-Wno-noexcept-type" "-fno-sized-deallocation"
> "-fno-aligned-new" "-g" "-O2" "-ffile-prefix-map=/build/mozjs78-78.15.0=."
> "-fstack-protector-strong" "-Wformat" "-Werror=format-security" "-fno-rtti"
> "-ffunction-sections" "-fdata-sections" "-fno-exceptions" "-fno-math-errno"
> "-pthread" "-pipe" "-g" "-freorder-blocks" "-O3" "-fomit-frame-pointer"
> "-funwind-tables" "-DMOZILLA_CONFIG_H"
> "-I" "/build/mozjs78-78.15.0/debian/build/js/src"
> "-I" "/build/mozjs78-78.15.0/debian/build/dist/include"
> "-DMOZ_HAS_MOZGLUE" "-o"
> "/build/mozjs78-78.15.0/debian/build/armv7-unknown-linux-gnueabihf/release/build/mozglue-static-9450b28414dcb4fc/out/wrappers.o"
> "-c" "wrappers.cpp"
> with args "arm-linux-gnueabihf-g++" did not execute successfully (status
> code exit code: 1).

At a guess, perhaps the problem is that the mozjs build system is explicitly
specifying -march=armv7-a when it should be something like
-march=armv7-a+vfpv3 or accepting the compiler's default?

    smcv



More information about the pkg-gnome-maintainers mailing list