Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Apr 2016 13:14:44 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        FreeBSD Current <freebsd-current@freebsd.org>, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Cc:        Bryan Drewery <bdrewery@FreeBSD.org>
Subject:   Fwd: 11.0: head/lib/libsysdecode/Makefile for . . ./libsoft/usr/include uses CPP when XCPP needed? [Makefile.libcompat issue]
Message-ID:  <6311C740-362F-45AE-9044-B72E61FC04C9@dsl-only.net>
In-Reply-To: <9952A60C-C3F1-40C3-AEAE-96AF6CA6E829@dsl-only.net>
References:  <D8803949-18C1-4B17-981F-DAD5A2DEDCE8@dsl-only.net> <CANCZdfo3Gdf0QF64hfn_WJzxhPOwJk6yMB3qEkDi8tfEpRRveg@mail.gmail.com> <B222BAE7-FD73-4F54-8C31-E982B6FCA718@dsl-only.net> <3A6ED16B-F941-41FC-B844-50292894D5F4@dsl-only.net> <CANCZdfqX8d-DZ-Y%2B%2BDFjsP7L8M_xFTvFLknxgGLSf_zO-wSfdA@mail.gmail.com> <B6B88406-A0AE-4704-9343-F65CF8DDBC5D@dsl-only.net> <050EC0FA-21F9-4EAB-8771-B0F6E9DEE087@dsl-only.net> <9952A60C-C3F1-40C3-AEAE-96AF6CA6E829@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
The below forwards an example of a possibly more general issue not =
necessarily limited to arm context of the example: in a cross compile =
context the host CPP is in use via Makefile.libcompat not involving =
"${XCPP}" and so various macro checks for the target context fail to =
work.

[The below and the material leading up to it was originally posted to =
freebsd-arm.]

=3D=3D=3D
Mark Millard
markmi at dsl-only.net

On 2016-Apr-4, at 2:02 PM, Mark Millard <markmi at dsl-only.net> wrote:

As a fix for

>> --- all_subdir_lib/libsysdecode ---
>> In file included from <stdin>:17:
>> In file included from =
/usr/obj/clang/arm.armv6/usr/src/libsoft/usr/include/dev/nvme/nvme.h:36:
>> In file included from =
/usr/obj/clang/arm.armv6/usr/src/libsoft/usr/include/sys/param.h:135:
>> In file included from =
/usr/obj/clang/arm.armv6/usr/src/libsoft/usr/include/machine/param.h:49:
>> =
/usr/obj/clang/arm.armv6/usr/src/libsoft/usr/include/machine/acle-compat.h=
:182:4: error: Unable to determine architecture version.
>> #  error Unable to determine architecture version.
>>  ^

I tested building an amd64 -> arm cross-build based on

> # svnlite diff Makefile.libcompat
> Index: Makefile.libcompat
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> --- Makefile.libcompat	(revision 297514)
> +++ Makefile.libcompat	(working copy)
> @@ -90,6 +90,7 @@
>  		DTRACE=3D"${LIB$COMPATDTRACE:U${DTRACE}}"
>  LIBCOMPATWMAKEFLAGS+=3D CC=3D"${XCC} ${LIBCOMPATCFLAGS}" \
>  		CXX=3D"${XCXX} ${LIBCOMPATCFLAGS} ${LIBCOMPATCXXFLAGS}" =
\
> +		CPP=3D"${XCPP}" \
>  		DESTDIR=3D${LIBCOMPATTMP} \
>  		-DNO_CPU_CFLAGS \
>  		MK_CTF=3Dno \

and it completed without getting an "error:". So this addition to =
Makefile.libcompat may be one option for a fix.

=3D=3D=3D
Mark Millard
markmi at dsl-only.net





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6311C740-362F-45AE-9044-B72E61FC04C9>