Subject: Re: MACHINE_ARCH vs. OBJ_ARCH
To: Todd Vierling <tv@pobox.com>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: tech-toolchain
Date: 07/26/1998 15:16:31
>I will be using ${MACHINE_ARCH:C/^mipse[bl]$/mips/} as per Jason's
>suggestion. It even retains compatibility with old make binaries.
Ok but do you mean everywhere we test against mips, or only the
subdir walk??
>: and makeflist,
>
>No need to hack this - it's a hack to begin with, and can just use more than
>one file. If /you/ want just one file for "ad.mips", there
[snip]
Yes, I do want, because in my head it will always be one arch:->.
>: I dont quite see how to do that with ONLY_FOR_ARCHES, at least not more
>: than once more than once per Makefile, but maybe I'm thick.
>ONLY_FOR_ARCHS=mips*
>ONLY_FOR_ARCHS=mipsel*
No, that's got global semantics for the whole file.
What I want is
.if (${MACHINE_ARCH} == "mips*")
.endif
where there may be other stanzas for other arches: sparc and sparc64,
one day. i guess we do that via
.if (${MACHINE_ARCH:C/^mipse[bl]$/mips/} == "mips")
and we need to do that in all makefiles, pkg or otherwise, everywhere
${MACHINE_ARCH} is compared to "mips". And similarly for sparc64.
I still think it'd be better to define a new variable for "arch
family" and use that where it's the semantically right test.
I think it's clearly better engineering than scattering ed patterns
for 3 arches -- mips le/e, 64/ 32; sparc 64/32, powerpc 64/32 one day
-- all throughout the tree. And I still havent heard any reason _not_
to do it that way. Curious.