dev-python/pyblake2: Support optimized (SSSE3+) variants
authorMichał Górny <mgorny@gentoo.org>
Sat, 21 Oct 2017 08:28:53 +0000 (10:28 +0200)
committerMichał Górny <mgorny@gentoo.org>
Sat, 21 Oct 2017 08:29:48 +0000 (10:29 +0200)
dev-python/pyblake2/pyblake2-0.9.3.ebuild

index 79f80083bcb755cdc98aff46649f5c9a962d79ea..893bf4757e568c0891a70ece33437ac3bab498f7 100644 (file)
@@ -13,12 +13,15 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
 LICENSE="CC0-1.0"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE=""
+IUSE="cpu_flags_x86_ssse3 cpu_flags_x86_avx cpu_flags_x86_xop"
 
 python_prepare_all() {
        local impl=REGS
-       # note: SSE2 is 2.5x slower than pure REGS...
-       # TODO: test other variants on some capable hardware
+       # note: SSE2 is 2.5x slower than pure REGS, so we ignore it
+       use cpu_flags_x86_ssse3 && impl=SSSE3
+       # this does not actually do anything but implicitly enabled SSE4.1...
+       use cpu_flags_x86_avx && impl=AVX
+       use cpu_flags_x86_xop && impl=XOP
 
        # uncomment the implementation of choice
        sed -i -e "/BLAKE2_COMPRESS_${impl}/s:^#::" setup.py || die