diff -ur libmikmod-3.1.12.orig/include/mikmod.h.in libmikmod-3.1.12/include/mikmod.h.in --- libmikmod-3.1.12.orig/include/mikmod.h.in 2007-12-15 11:24:19.000000000 +0200 +++ libmikmod-3.1.12/include/mikmod.h.in 2010-03-06 20:42:09.000000000 +0200 @@ -85,7 +85,8 @@ @DOES_NOT_HAVE_SIGNED@ -#if defined(__arch64__) || defined(__alpha) || defined(__x86_64) +#include +#if __WORDSIZE == 64 /* 64 bit architectures */ typedef signed char SBYTE; /* 1 byte, signed */ diff -ur libmikmod-3.1.12.orig/include/mikmod_internals.h libmikmod-3.1.12/include/mikmod_internals.h --- libmikmod-3.1.12.orig/include/mikmod_internals.h 2007-12-15 14:24:51.000000000 +0200 +++ libmikmod-3.1.12/include/mikmod_internals.h 2010-03-06 20:42:42.000000000 +0200 @@ -50,7 +50,8 @@ /*========== More type definitions */ /* SLONGLONG: 64bit, signed */ -#if defined (__arch64__) || defined(__alpha) +#include +#if __WORDSIZE == 64 typedef long SLONGLONG; #define NATIVE_64BIT_INT #elif defined(__WATCOMC__)