diff -Naur libpciaccess-0.12.1-orig/src/common_interface.c libpciaccess-0.12.1/src/common_interface.c
--- libpciaccess-0.12.1-orig/src/common_interface.c	2010-07-12 00:32:05.000000000 -0400
+++ libpciaccess-0.12.1/src/common_interface.c	2011-08-29 00:48:17.000000000 -0400
@@ -67,6 +67,22 @@
 # define HTOLE_32(x)   (x)
 #endif /* Solaris */
 
+#elif defined(__APPLE__)
+
+#include <architecture/byte_order.h>
+
+#if __BYTE_ORDER == __BIG_ENDIAN
+# define LETOH_16(x)   OSSwapInt16(x)
+# define HTOLE_16(x)   OSSwapInt16(x)
+# define LETOH_32(x)   OSSwapInt32(x)
+# define HTOLE_32(x)   OSSwapInt32(x)
+#else
+# define LETOH_16(x)   (x)
+# define HTOLE_16(x)   (x)
+# define LETOH_32(x)   (x)
+# define HTOLE_32(x)   (x)
+#endif /* darwin */
+
 #else
 
 #include <sys/endian.h>
