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>

index | next in thread | previous in thread | raw e-mail

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.]

===
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
> ===================================================================
> --- Makefile.libcompat	(revision 297514)
> +++ Makefile.libcompat	(working copy)
> @@ -90,6 +90,7 @@
>  		DTRACE="${LIB$COMPATDTRACE:U${DTRACE}}"
>  LIBCOMPATWMAKEFLAGS+= CC="${XCC} ${LIBCOMPATCFLAGS}" \
>  		CXX="${XCXX} ${LIBCOMPATCFLAGS} ${LIBCOMPATCXXFLAGS}" \
> +		CPP="${XCPP}" \
>  		DESTDIR=${LIBCOMPATTMP} \
>  		-DNO_CPU_CFLAGS \
>  		MK_CTF=no \

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

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




help

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