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