On 12/08/2013 06:57 AM, Mark Cave-Ayland wrote:
On 03/12/13 21:35, Cole Robinson wrote:
Add arm32 to the whitelist for handling lack of int128 type variants. Otherwise we get errors like:
/target/include/asm/types.h:79:1: error: unknown type name â__int128_tâ typedef __int128_t dcell;
This may introduce issues building on aarch64 but I have no way to test.
Recently, Fedora's build system had many arm hosts added. Since we always cross build openbios, the RPM build is scheduled independent of the build machine architecture. So whenever an openbios build was scheduled to an arm host, things fell over.
config/scripts/switch-arch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/config/scripts/switch-arch b/config/scripts/switch-arch index 44f2df4..86cab3c 100755 --- a/config/scripts/switch-arch +++ b/config/scripts/switch-arch @@ -77,7 +77,7 @@ crosscflags() if test "$target" = "sparc64" -o "$target" = "ia64" \ -o "$target" = "amd64" -o "$target" = "x86_64" \ -o "$target" = "alpha"; then
if test "$host" = "x86"; then
if test "$host" = "x86" -o "$host" = "arm"; then cflags="$cflags -DNEED_FAKE_INT128_T" elif test "$host" = "ppc" -a `uname -s` = "Darwin"; then cflags="$cflags -DNEED_FAKE_INT128_T"
Hi Cole,
Thanks for the patch - I don't tend to do much with the build system but it looks fairly reasonable to me. One minor stylistic nit is that switch-arch seems to be grouped by arch, so would it be possible to rework so that the overall result looks like this:
if test "$host" = "x86"; then if test "$host" = "arm"; then cflags="$cflags -DNEED_FAKE_INT128_T" elif test "$host" = "ppc" -a `uname -s` = "Darwin"; then cflags="$cflags -DNEED_FAKE_INT128_T"
Thanks for the review Mark, that above example code doesn't appear to work but I've sent something similar.
- Cole