Building gmp-6.1.0 on a Raspberry Pi 2 ARMv7a, regardless of USE=asm (FWIW) results in: libtool: compile: armv7a-hardfloat-linux-gnueabi-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/mpn -I.. -D__GMP_WITHIN_GMP -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0 -DOPERATION_mp_bases -Os -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations -DNO_ASM -c mp_bases.c -fPIC -DPIC -o .libs/mp_bases.o In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0, from add_n.c:32: ../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’ clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant libtool: compile: armv7a-hardfloat-linux-gnueabi-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/mpn -I.. -D__GMP_WITHIN_GMP -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0 -DOPERATION_add -Os -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations -DNO_ASM -c add.c -fPIC -DPIC -o .libs/add.o In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0, from fib_table.c:4: ../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’ clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0, from add_1.c:34: ../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’ clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant Makefile:492: recipe for target 'add_n.lo' failed make[2]: *** [add_n.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... Makefile:492: recipe for target 'add_1.lo' failed make[2]: *** [add_1.lo] Error 1 Makefile:492: recipe for target 'fib_table.lo' failed make[2]: *** [fib_table.lo] Error 1 In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0, from mp_bases.c:4: ../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’ clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0, from add.c:34: ../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’ clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant clock_gettime is 1.000ns accurate ^ ../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant Makefile:492: recipe for target 'mp_bases.lo' failed make[2]: *** [mp_bases.lo] Error 1 Makefile:492: recipe for target 'add.lo' failed make[2]: *** [add.lo] Error 1 make[2]: Leaving directory '/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0-.arm/mpn' Makefile:954: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0-.arm' Makefile:773: recipe for target 'all' failed make: *** [all] Error 2 * ERROR: dev-libs/gmp-6.1.0::srcshelton failed (compile phase): * emake failed ... whilst `work/gmp-6.1.0-.arm/gmp-mparam.h` starts as follows: " clock_gettime is 1.000ns accurate /* Generated by tuneup.c, 2016-07-01, gcc 4.9 */ #define DIVREM_1_NORM_THRESHOLD 3 " This erroneous initial line appears to have been inserted from `work/gmp-6.1.0/tune/time.c`. $ emerge --info Portage 2.2.28 (python 2.7.10-final-0, default/linux/arm/13.0/armv7a, gcc-4.9.3, glibc-2.22-r4, 4.4.13-v7+ armv7l) ================================================================= System uname: Linux-4.4.13-v7+-armv7l-with-gentoo-2.2 KiB Mem: 996468 total, 221220 free KiB Swap: 0 total, 0 free sh bash 4.3_p42-r1 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 distcc 3.2rc1 armv7a-hardfloat-linux-gnueabi [enabled] app-shells/bash: 4.3_p42-r1 dev-lang/perl: 5.22.2 dev-lang/python: 2.7.10-r1 dev-util/cmake: 3.3.1-r1 dev-util/pkgconfig: 0.28-r2 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.19.1 sys-apps/sandbox: 2.10-r1 sys-devel/autoconf: 2.69 sys-devel/automake: 1.13.4, 1.14.1, 1.15 sys-devel/binutils: 2.25.1-r1 sys-devel/gcc: 4.8.5, 4.9.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.6 sys-devel/make: 4.1-r1 sys-kernel/linux-headers: 4.3 (virtual/os-headers) sys-libs/glibc: 2.22-r4
FYI, confirmed that the same ebuild works on 32-bit x86.
possible duplicate of https://bugs.gentoo.org/show_bug.cgi?id=568320
Please attache a build log and provide emerge --info.