diff -r 29508a2924c2 -r 6bd39d75e0dd openalbridge/endianness.h --- a/openalbridge/endianness.h Sun Jun 28 16:44:04 2009 +0000 +++ b/openalbridge/endianness.h Sun Jun 28 16:54:51 2009 +0000 @@ -28,11 +28,27 @@ #ifdef __CPLUSPLUS extern "C" { #endif - + +#ifdef HAVE_BYTESWAP_H + /* use byteswap macros from the host system, hopefully optimized ones ;-) */ +#include +#else + /* define our own version, simple, stupid, straight-forward... */ + +#define bswap_16(x) ((((x) & 0xFF00) >> 8) | (((x) & 0x00FF) << 8)) + +#define bswap_32(x) ((((x) & 0xFF000000) >> 24) | \ + (((x) & 0x00FF0000) >> 8) | \ + (((x) & 0x0000FF00) << 8) | \ + (((x) & 0x000000FF) << 24) ) + +#endif + + #pragma once - -int invert_endianness(int number); - + + int invert_endianness(int number); + #ifdef __CPLUSPLUS } #endif \ No newline at end of file