summaryrefslogtreecommitdiff
path: root/dev-libs/libpy
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libpy')
-rw-r--r--dev-libs/libpy/Manifest7
-rw-r--r--dev-libs/libpy/files/libpy-0.2.5-cflags.patch24
-rw-r--r--dev-libs/libpy/files/libpy-0.2.5-no-werror.patch13
-rw-r--r--dev-libs/libpy/files/libpy-0.2.5-permissions.patch13
-rw-r--r--dev-libs/libpy/libpy-0.2.5-r1.ebuild52
-rw-r--r--dev-libs/libpy/metadata.xml11
6 files changed, 120 insertions, 0 deletions
diff --git a/dev-libs/libpy/Manifest b/dev-libs/libpy/Manifest
new file mode 100644
index 000000000000..5f3adc7296d9
--- /dev/null
+++ b/dev-libs/libpy/Manifest
@@ -0,0 +1,7 @@
+AUX libpy-0.2.5-cflags.patch 841 BLAKE2B 00b6cc57401dc4c2a807e3a46659453dccf1d4cf59b5fdf6aa61426ac0922d1be6f4658fb4736787019fbd6a3b1aaa4294e3aae7be329ff9d215565c42083cf6 SHA512 5bc9ae86ad3abe7551c422a383217a12aec84376ccf23a7ffb9aaf18b1101972efe5730cfcfd194bd6c77d5d10d02f1cde2b13295c9464f503951bdb87afd6e5
+AUX libpy-0.2.5-no-werror.patch 286 BLAKE2B 3c623746f7d97c94eaab94c75d50cae433c6a9d545ee751d2a35c2e361b2260d789fee269628416f0d6e0f060f012a4cd696cf7ea58f11ff0df63cab223107d9 SHA512 2ea9e9d3040ffcb76c49f4e4b6123a8d6d739fec4898877d2dac151d35d31f12c156024beaeb82c470d92007318e3126fd8b94f0db340db08c87cad42c00879b
+AUX libpy-0.2.5-permissions.patch 360 BLAKE2B dff3c4650d5779e8756dbd30a62a6105070ef97cc806f5de1de106f5f51fdf29b514601dfae8d645e51aa36a9914e77998f6a36560990f1f656048b19121db32 SHA512 6eced1f0d98a9157bc7efe540bbc3211b4e4c78cfce533d96e71f1503f07355665da0d715b1fdf4d9e0394cb624f93b817f90801a830bb091a19b85963ed86dd
+DIST gtest-23b2a3b1cf803999fb38175f6e9e038a4495c8a5.tar.gz 862253 BLAKE2B a7d7acd2a41924d37c06e4908315d80df92815ed3e81973baf915951f2fcfeb4485ce690ba224cd7168537d81bf43b84efbecef8074dd3246a020e0877924803 SHA512 f01af7e17a3b7fb064bb5b7f1f75f0eca5e987a9976555734a88b7f7a18a763c620668da0628cb6bd1553a69b248bb0b91569b99cf873789c5b27700c25a479a
+DIST libpy-0.2.5.tar.gz 201467 BLAKE2B 629f650740a54736bc014abd63c729c11070d7d226469668386b6fe187a05b830b7ababa17e6c90777c97d2af5397cb1295712218626c837c1cc2c5526e957fc SHA512 8127bdeffdf218837928d6e5743156987cb5e3ca943ec3e84f1fb5d01c1c5fa387eca3b8c276d60d1eeb18fad7a9555bc54c113c976f1d5f23f779336dd6ed71
+EBUILD libpy-0.2.5-r1.ebuild 1242 BLAKE2B c49291bf0f2f40148a4260a773d2cd6ad79a9cee630e620c00321bf4a0e93d12a3ce1e80e3b452cb5c20e4ac5955655ae204a3f2cec6374a63fdf54515fec982 SHA512 c9f14cab6c3e6cfaf455b169c090bea3def6410d7dc0f6c08941838b9303211eef380d547f1cc6cf39b1350c8d2cf72483d3a65ce5c83c2dd86d543975060e2d
+MISC metadata.xml 354 BLAKE2B 8cb70562636ad858ca25145cf68283e660cc905aae1c67dcf39cf9e2b9a6fc332e62be9afafae1664f02ffa53319a8da75d132ba6ebf1302bd305081e020ea66 SHA512 ade47a31a8d334e3464d893021a1ef91c76e10bdf96305eeb1b0a188e24749cc8f1b462fcaf87edae4c71045b13da40c8dfe5a7ec8133737230d7922c3a3a7b6
diff --git a/dev-libs/libpy/files/libpy-0.2.5-cflags.patch b/dev-libs/libpy/files/libpy-0.2.5-cflags.patch
new file mode 100644
index 000000000000..be8dd1f21726
--- /dev/null
+++ b/dev-libs/libpy/files/libpy-0.2.5-cflags.patch
@@ -0,0 +1,24 @@
+diff --git a/Makefile b/Makefile
+index 09e6e39..9addb5d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -46,9 +46,8 @@ CLANG_WARNINGS := \
+ -Wno-self-assign-overloaded
+ WARNINGS := $(BASE_WARNINGS) $($(COMPILER)_WARNINGS)
+
+-BASE_CXXFLAGS = -std=gnu++17 -g -O$(OPTLEVEL) \
++BASE_CXXFLAGS = -std=gnu++17 -g \
+ -fwrapv -fno-strict-aliasing -pipe \
+- -march=x86-64 -mtune=generic \
+ -fvisibility=hidden \
+ $(WARNINGS) \
+ -DPY_MAJOR_VERSION=$(PY_MAJOR_VERSION) \
+@@ -58,7 +57,7 @@ BASE_CXXFLAGS = -std=gnu++17 -g -O$(OPTLEVEL) \
+ -DLIBPY_MICRO_VERSION=$(MICRO_VERSION)
+ GCC_FLAGS = -fmax-errors=$(MAX_ERRORS)
+ CLANG_FLAGS = -ferror-limit=$(MAX_ERRORS)
+-CXXFLAGS = $(BASE_CXXFLAGS) $($(COMPILER)_FLAGS)
++CXXFLAGS += $(BASE_CXXFLAGS) $($(COMPILER)_FLAGS)
+
+ # https://github.com/quantopian/libpy/pull/86/files#r309288697
+ INCLUDE_DIRS := include/ \
diff --git a/dev-libs/libpy/files/libpy-0.2.5-no-werror.patch b/dev-libs/libpy/files/libpy-0.2.5-no-werror.patch
new file mode 100644
index 000000000000..214d1764b182
--- /dev/null
+++ b/dev-libs/libpy/files/libpy-0.2.5-no-werror.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 09e6e39..bed335b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -31,7 +31,7 @@ endif
+ OPTLEVEL ?= 3
+ MAX_ERRORS ?= 5
+ BASE_WARNINGS := \
+- -Werror -Wall -Wextra \
++ -Wall -Wextra \
+ -Wno-register \
+ -Wno-missing-field-initializers \
+ -Wsign-compare \
diff --git a/dev-libs/libpy/files/libpy-0.2.5-permissions.patch b/dev-libs/libpy/files/libpy-0.2.5-permissions.patch
new file mode 100644
index 000000000000..8e5fc2762a9f
--- /dev/null
+++ b/dev-libs/libpy/files/libpy-0.2.5-permissions.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index 61bc3da..a00b565 100644
+--- a/setup.py
++++ b/setup.py
+@@ -43,7 +43,7 @@ class build_py(_build_py):
+ )
+
+ p = pathlib.Path(self.build_lib) / 'libpy/_build-and-run'
+- p.chmod(p.stat().st_mode | stat.S_IEXEC)
++ p.chmod(p.stat().st_mode | stat.S_IEXEC | stat.S_IXGRP | stat.S_IXOTH)
+
+
+ setup(
diff --git a/dev-libs/libpy/libpy-0.2.5-r1.ebuild b/dev-libs/libpy/libpy-0.2.5-r1.ebuild
new file mode 100644
index 000000000000..a0d5be7d1dcb
--- /dev/null
+++ b/dev-libs/libpy/libpy-0.2.5-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit flag-o-matic distutils-r1
+
+GTEST_VER="23b2a3b1cf803999fb38175f6e9e038a4495c8a5"
+
+DESCRIPTION="Utilities for writing C++ extension modules"
+HOMEPAGE="https://quantopian.github.io/libpy/
+ https://github.com/quantopian/libpy"
+SRC_URI="
+ https://github.com/quantopian/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://github.com/google/googletest/archive/${GTEST_VER}.tar.gz -> gtest-${GTEST_VER}.tar.gz )
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="sparsehash test"
+
+COMMON_DEPEND="
+ >=dev-python/numpy-1.11.3[${PYTHON_USEDEP}]
+"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="${COMMON_DEPEND}
+ sparsehash? ( dev-cpp/sparsehash )
+ test? (
+ dev-cpp/gtest
+ >=dev-python/pytest-4.4.1[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( sparsehash )"
+
+PATCHES=(
+ "${FILESDIR}/libpy-0.2.5-no-werror.patch"
+ "${FILESDIR}/libpy-0.2.5-permissions.patch"
+ "${FILESDIR}/libpy-0.2.5-cflags.patch"
+)
+
+python_test() {
+ emake GTEST_ROOT="${WORKDIR}/googletest-${GTEST_VER}" test || die "Tests failed with ${EPYTHON}"
+}
+
+python_configure() {
+ replace-flags '-O*' '-O3'
+}
diff --git a/dev-libs/libpy/metadata.xml b/dev-libs/libpy/metadata.xml
new file mode 100644
index 000000000000..aa65be8a5969
--- /dev/null
+++ b/dev-libs/libpy/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <use>
+ <flag name="sparsehash">Include libpy wrappers for <pkg>dev-cpp/sparsehash</pkg></flag>
+ </use>
+</pkgmetadata>