haskell-charsetdetect-ae on arm64
The package seems too new to be recognised by bugs.debian.org.
It failed to build:
https://buildd.debian.org/status/package.php?p=haskell-charsetdetect-ae&suite=sid
A search for '"prcpucfg_linux.h" aarch64' found:
https://chromium.googlesource.com/chromium/src/+/2c03ccaa0ef2f8faa77254f93795df4a639a57ec%5E!/
I'm attaching a version of that patch that applies cleanly. It seems
to fix the build on arm64.
diff -ru haskell-charsetdetect-ae-1.0.1.orig/libcharsetdetect/nspr-emu/prcpucfg_linux.h haskell-charsetdetect-ae-1.0.1/libcharsetdetect/nspr-emu/prcpucfg_linux.h
--- haskell-charsetdetect-ae-1.0.1.orig/libcharsetdetect/nspr-emu/prcpucfg_linux.h
+++ haskell-charsetdetect-ae-1.0.1/libcharsetdetect/nspr-emu/prcpucfg_linux.h
@@ -509,6 +509,59 @@
#define PR_BYTES_PER_WORD_LOG2 2
#define PR_BYTES_PER_DWORD_LOG2 3
+#elif defined(__aarch64__)
+
+#ifdef __AARCH64EB__
+#undef IS_LITTLE_ENDIAN
+#define IS_BIG_ENDIAN 1
+#elif defined(__AARCH64EL__)
+#define IS_LITTLE_ENDIAN 1
+#undef IS_BIG_ENDIAN
+#else
+#error "Unknown Aarch64 endianness."
+#endif
+#define IS_64
+
+#define PR_BYTES_PER_BYTE 1
+#define PR_BYTES_PER_SHORT 2
+#define PR_BYTES_PER_INT 4
+#define PR_BYTES_PER_INT64 8
+#define PR_BYTES_PER_LONG 8
+#define PR_BYTES_PER_FLOAT 4
+#define PR_BYTES_PER_DOUBLE 8
+#define PR_BYTES_PER_WORD 8
+#define PR_BYTES_PER_DWORD 8
+
+#define PR_BITS_PER_BYTE 8
+#define PR_BITS_PER_SHORT 16
+#define PR_BITS_PER_INT 32
+#define PR_BITS_PER_INT64 64
+#define PR_BITS_PER_LONG 64
+#define PR_BITS_PER_FLOAT 32
+#define PR_BITS_PER_DOUBLE 64
+#define PR_BITS_PER_WORD 64
+
+#define PR_BITS_PER_BYTE_LOG2 3
+#define PR_BITS_PER_SHORT_LOG2 4
+#define PR_BITS_PER_INT_LOG2 5
+#define PR_BITS_PER_INT64_LOG2 6
+#define PR_BITS_PER_LONG_LOG2 6
+#define PR_BITS_PER_FLOAT_LOG2 5
+#define PR_BITS_PER_DOUBLE_LOG2 6
+#define PR_BITS_PER_WORD_LOG2 6
+
+#define PR_ALIGN_OF_SHORT 2
+#define PR_ALIGN_OF_INT 4
+#define PR_ALIGN_OF_LONG 8
+#define PR_ALIGN_OF_INT64 8
+#define PR_ALIGN_OF_FLOAT 4
+#define PR_ALIGN_OF_DOUBLE 8
+#define PR_ALIGN_OF_POINTER 8
+#define PR_ALIGN_OF_WORD 8
+
+#define PR_BYTES_PER_WORD_LOG2 3
+#define PR_BYTES_PER_DWORD_LOG2 3
+
#elif defined(__hppa__)
#undef IS_LITTLE_ENDIAN
Reply to: