diff --git a/community/python-cchardet/0001-Add-AArch64-support.patch b/community/python-cchardet/0001-Add-AArch64-support.patch new file mode 100644 index 000000000..1c59397b6 --- /dev/null +++ b/community/python-cchardet/0001-Add-AArch64-support.patch @@ -0,0 +1,70 @@ +From 5bc0cd2eec74456b266a01e48eca4b5f084a3226 Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Fri, 2 Oct 2015 19:37:56 -0600 +Subject: [PATCH] Add AArch64 support + +Signed-off-by: Kevin Mihelich +--- + src/ext/libcharsetdetect/nspr-emu/prcpucfg_linux.h | 46 ++++++++++++++++++++++ + 1 file changed, 46 insertions(+) + +diff --git a/src/ext/libcharsetdetect/nspr-emu/prcpucfg_linux.h b/src/ext/libcharsetdetect/nspr-emu/prcpucfg_linux.h +index 776c21e..2a6b66f 100644 +--- a/src/ext/libcharsetdetect/nspr-emu/prcpucfg_linux.h ++++ b/src/ext/libcharsetdetect/nspr-emu/prcpucfg_linux.h +@@ -509,6 +509,52 @@ + #define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 + ++#elif defined(__aarch64__) ++ ++#define IS_LITTLE_ENDIAN 1 ++#undef IS_BIG_ENDIAN ++#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 +-- +2.5.3 + diff --git a/community/python-cchardet/PKGBUILD b/community/python-cchardet/PKGBUILD new file mode 100644 index 000000000..db46c9088 --- /dev/null +++ b/community/python-cchardet/PKGBUILD @@ -0,0 +1,52 @@ +# $Id$ +# Maintainer: Massimiliano Torromeo + +# ALARM: Kevin Mihelich +# - patch for AArch64 + +pkgname=python-cchardet +pkgname=(python-cchardet python2-cchardet) +pkgver=1.0.0 +pkgrel=2 +pkgdesc="Universal encoding detector faster than chardet." +url="http://pypi.python.org/pypi/cchardet/" +makedepends=('cython' 'cython2' 'python-setuptools' 'python2-setuptools') +license=('MIT') +arch=('i686' 'x86_64') +source=(http://pypi.python.org/packages/source/c/cchardet/cchardet-$pkgver.tar.gz + 0001-Add-AArch64-support.patch) +sha256sums=('98e6dc7ca225abfa7e559a6450404aeb2f5bea0713afd6dd492c1a51cec57e63' + 'bb1d1ecbbfb3e26d529209d6e1a6e741fb1a6fe11869f94e8bd567d080b6dfb8') + +prepare() { + cd "$srcdir/cchardet-$pkgver" + patch -p1 -i ../0001-Add-AArch64-support.patch +} + +build() { + cd "$srcdir/cchardet-$pkgver" + + rm -rf ../buildpy3; mkdir ../buildpy3 + python setup.py build -b ../buildpy3 + + rm -rf ../buildpy2; mkdir ../buildpy2 + python2 setup.py build -b ../buildpy2 + find ../buildpy2 -name \*.py -exec sed -r 's|^#!(.*)python$|#!\1python2|' -i {} + +} + +package_python-cchardet() { + depends=(python) + + cd "$srcdir/cchardet-$pkgver" + rm -rf build; ln -s ../buildpy3 build + python setup.py install --skip-build -O1 --root="$pkgdir" +} + +package_python2-cchardet() { + depends=(python2) + + cd "$srcdir/cchardet-$pkgver" + rm -rf build; ln -s ../buildpy2 build + python2 setup.py install --skip-build -O1 --root="$pkgdir" +} +