head -r335782 (?) broke ci.freebsd.org's FreeBSD-head-amd64-gcc build (lib32 part of build)
Mark Millard
marklmi at yahoo.com
Fri Jun 29 02:54:22 UTC 2018
On 2018-Jun-28, at 6:04 PM, Mark Millard <marklmi at yahoo.com> wrote:
> On 2018-Jun-28, at 5:39 PM, Mark Millard <marklmi at yahoo.com> wrote:
>
>> [ ci.free.bsd.org jumped from -r335773 (built) to -r335784 (failed)
>> for FreeBSD-head-amd64-gcc. It looked to me like the most likely
>> breaking-change was the following but I've not tried personal
>> builds to confirm.
>> ]
>>
>> It looks to me that:
>>
>>> Author: jhb
>>> Date: Thu Jun 28 21:26:14 2018
>>> New Revision: 335782
>>> URL:
>>> https://svnweb.freebsd.org/changeset/base/335782
>>>
>>>
>>> Log:
>>> Remove the various build flag hacks for GCC cross-compile.
>>>
>>> The xtoolchain GCC packages have not required these flags since ports
>>> commits r465416 and r466701. The in-tree GCC 4.2.1 has also been patched
>>> in r335716 and r335717 to correctly honor --sysroot when looking for
>>> includes and libraries.
>>>
>>> Reviewed by: bdrewery
>>> Sponsored by: DARPA / AFRL
>>> Differential Revision:
>>> https://reviews.freebsd.org/D16055
>> . . .
>>
>> broke ci.freebsd.org's FreeBSD-head-amd64-gcc build.
>>
>> https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/6331/consoleText shows:
>>
>> --- catrigl.o ---
>> /usr/local/bin/x86_64-unknown-freebsd11.1-gcc -DCOMPAT_32BIT -march=i686 -mmmx -msse -msse2 -m32 -L/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32 --sysroot=/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp -B/usr/local/x86_64-unknown-freebsd11.1/bin/ -B/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32 -O2 -pipe -I/workspace/src/lib/msun/x86 -I/workspace/src/lib/msun/ld80 -I/workspace/src/lib/msun/i387 -I/workspace/src/lib/msun/src -I/workspace/src/lib/libc/include -I/workspace/src/lib/libc/i386 -g -MD -MF.depend.catrigl.o -MTcatrigl.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wno-pointer-sign -Wno-error=address -Wno-error=array-bounds -Wno-error=attributes -Wno-error=bool-compare -Wno-error=cast-align -Wno-error=clobbered -Wno-error=enum-compare -Wno-error=extra -Wno-error=inline -Wno-error=logical-not-parentheses -Wno-error=strict-aliasing -Wno-error=uninitialized -Wno-error=unused-but-set-variable -Wno-error=unused-function -Wno-error=unused-value -Wno-error=misleading-indentation -Wno-error=nonnull-compare -Wno-error=shift-negative-value -Wno-error=tautological-compare -Wno-error=unused-const-variable -Wno-unknown-pragmas -c /workspace/src/lib/msun/src/catrigl.c -o catrigl.o
>> /workspace/src/lib/msun/src/catrigl.c:90:2: error: #error "Unsupported long double format"
>> #error "Unsupported long double format"
>> ^~~~~
>> /workspace/src/lib/msun/src/catrigl.c: In function 'casinhl':
>> /workspace/src/lib/msun/src/catrigl.c:190:35: error: 'm_ln2' undeclared (first use in this function)
>> w = clog_for_large_values(z) + m_ln2;
>> ^~~~~
>> /workspace/src/lib/msun/src/catrigl.c:190:35: note: each undeclared identifier is reported only once for each function it appears in
>> /workspace/src/lib/msun/src/catrigl.c:202:11: error: 'SQRT_6_EPSILON' undeclared (first use in this function)
>> if (ax < SQRT_6_EPSILON / 4 && ay < SQRT_6_EPSILON / 4)
>> ^~~~~~~~~~~~~~
>> /workspace/src/lib/msun/src/catrigl.c: In function 'cacosl':
>> /workspace/src/lib/msun/src/catrigl.c:250:20: error: 'm_ln2' undeclared (first use in this function)
>> ry = creall(w) + m_ln2;
>> ^~~~~
>> /workspace/src/lib/msun/src/catrigl.c:261:11: error: 'SQRT_6_EPSILON' undeclared (first use in this function)
>> if (ax < SQRT_6_EPSILON / 4 && ay < SQRT_6_EPSILON / 4)
>> ^~~~~~~~~~~~~~
>> In file included from /workspace/src/lib/msun/src/catrigl.c:45:0:
>> /workspace/src/lib/msun/src/catrigl.c: In function 'clog_for_large_values':
>> /workspace/src/lib/msun/src/catrigl.c:316:34: error: 'm_e' undeclared (first use in this function)
>> return (CMPLXL(logl(hypotl(x / m_e, y / m_e)) + 1,
>> ^
>> /workspace/src/lib/msun/src/catrigl.c:316:11: error: '__builtin_complex' operand not of real binary floating-point type
>> return (CMPLXL(logl(hypotl(x / m_e, y / m_e)) + 1,
>> ^
>> /workspace/src/lib/msun/src/catrigl.c: In function 'catanhl':
>> /workspace/src/lib/msun/src/catrigl.c:390:11: error: 'SQRT_3_EPSILON' undeclared (first use in this function)
>> if (ax < SQRT_3_EPSILON / 2 && ay < SQRT_3_EPSILON / 2) {
>> ^~~~~~~~~~~~~~
>> /workspace/src/lib/msun/src/catrigl.c:396:9: error: 'm_ln2' undeclared (first use in this function)
>> rx = (m_ln2 - logl(ay)) / 2;
>> ^~~~~
>> *** [catrigl.o] Error code 1
>
> Later below expand the failing and previoly good commands, one
> option per line. The summary of the distinction in content is
> a one line difference, the working example ( -r335773 )had the
> option:
>
> -isystem /workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/include
>
> but the failing one did not. Working ( -r335773 ) is shown first.
>
> --- catrigl.o ---
> /usr/local/bin/x86_64-unknown-freebsd11.1-gcc
> -DCOMPAT_32BIT
> -march=i686
> -mmmx
> -msse
> -msse2
> -m32
> -L/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32
> --sysroot=/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp
> -B/usr/local/x86_64-unknown-freebsd11.1/bin/
> -B/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32
> -isystem /workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/include
> -O2
> -pipe
> -I/workspace/src/lib/msun/x86
> -I/workspace/src/lib/msun/ld80
> -I/workspace/src/lib/msun/i387
> -I/workspace/src/lib/msun/src
> -I/workspace/src/lib/libc/include
> -I/workspace/src/lib/libc/i386
> -g
> -MD
> -MF.depend.catrigl.o
> -MTcatrigl.o
> -std=gnu99
> -fstack-protector-strong
> -Wsystem-headers
> -Werror
> -Wno-pointer-sign
> -Wno-error=address
> -Wno-error=array-bounds
> -Wno-error=attributes
> -Wno-error=bool-compare
> -Wno-error=cast-align
> -Wno-error=clobbered
> -Wno-error=enum-compare
> -Wno-error=extra
> -Wno-error=inline
> -Wno-error=logical-not-parentheses
> -Wno-error=strict-aliasing
> -Wno-error=uninitialized
> -Wno-error=unused-but-set-variable
> -Wno-error=unused-function
> -Wno-error=unused-value
> -Wno-error=misleading-indentation
> -Wno-error=nonnull-compare
> -Wno-error=shift-negative-value
> -Wno-error=tautological-compare
> -Wno-error=unused-const-variable
> -Wno-unknown-pragmas
> -c /workspace/src/lib/msun/src/catrigl.c
> -o catrigl.o
>
>
> --- catrigl.o ---
> /usr/local/bin/x86_64-unknown-freebsd11.1-gcc
> -DCOMPAT_32BIT
> -march=i686
> -mmmx
> -msse
> -msse2
> -m32
> -L/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32
> --sysroot=/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp
> -B/usr/local/x86_64-unknown-freebsd11.1/bin/
> -B/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/lib32
> -O2
> -pipe
> -I/workspace/src/lib/msun/x86
> -I/workspace/src/lib/msun/ld80
> -I/workspace/src/lib/msun/i387
> -I/workspace/src/lib/msun/src
> -I/workspace/src/lib/libc/include
> -I/workspace/src/lib/libc/i386
> -g
> -MD
> -MF.depend.catrigl.o
> -MTcatrigl.o
> -std=gnu99
> -fstack-protector-strong
> -Wsystem-headers
> -Werror
> -Wno-pointer-sign
> -Wno-error=address
> -Wno-error=array-bounds
> -Wno-error=attributes
> -Wno-error=bool-compare
> -Wno-error=cast-align
> -Wno-error=clobbered
> -Wno-error=enum-compare
> -Wno-error=extra
> -Wno-error=inline
> -Wno-error=logical-not-parentheses
> -Wno-error=strict-aliasing
> -Wno-error=uninitialized
> -Wno-error=unused-but-set-variable
> -Wno-error=unused-function
> -Wno-error=unused-value
> -Wno-error=misleading-indentation
> -Wno-error=nonnull-compare
> -Wno-error=shift-negative-value
> -Wno-error=tautological-compare
> -Wno-error=unused-const-variable
> -Wno-unknown-pragmas
> -c /workspace/src/lib/msun/src/catrigl.c
> -o catrigl.o
For the report:
> The xtoolchain GCC packages have not required these flags since ports
> commits r465416 and r466701
Looking at https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/6331/consoleText
there is:
> Updating FreeBSD repository catalogue...
> FreeBSD repository is up to date.
> All repositories are up to date.
> The following 6 package(s) will be affected (of 0 checked):
>
> New packages to be INSTALLED:
> amd64-xtoolchain-gcc: 0.4_1
> amd64-gcc: 6.4.0
> mpfr: 4.0.1
> gmp: 6.1.2
> mpc: 1.1.0_1
> amd64-binutils: 2.30_3,1
and amd64-gcc being 6.4.0 (via powerpc64-gcc) is from -r466834
(via looking up in https://svnweb.freebsd.org/ports/head/devel/ ).
This indicates that -r465416 and -r466701 did not cause:
--sysroot=/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp
to lead to include files being looked up in:
/workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/include
Thus there appears to still be a need for:
-isystem /workspace/obj/workspace/src/amd64.amd64/obj-lib32/tmp/usr/include
unless more is done to the devel/*-gcc to make them look
in that additional place automatically (based on --sysroot).
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-current
mailing list