--- src/lib/libast/features/common.orig 2010-10-19 00:51:50.000000000 -0700 +++ src/lib/libast/features/common 2011-06-03 12:01:49.000000000 -0700 @@ -256,7 +256,11 @@ tst - -DN=1 - -DN=2 - -DN=3 - -DN=4 - -D } else #endif + { + printf("#ifndef _ast_int%d_t\n", m); printf("#define _ast_int%d_t %s\n", m, int_type[t].name); + printf("#endif\n"); + } if (m > 1) { if (*int_type[t].swap) @@ -266,9 +270,13 @@ tst - -DN=1 - -DN=2 - -DN=3 - -DN=4 - -D } } printf("#define _ast_intmax_t _ast_int%d_t\n", m); - if (m == sizeof(long)) - printf("#define _ast_intmax_long 1\n"); - printf("#define _ast_intswap %d\n", w); + printf("#if __LITTLE_ENDIAN__\n"); + printf("#define _ast_intswap 7\n"); + printf("#elif __BIG_ENDIAN__\n"); + printf("#define _ast_intswap 0\n"); + printf("#else\n"); + printf("#error Unknown byte sex\n"); + printf("#endif\n"); printf("\n"); return 0; }