summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-python/sip/Manifest1
-rw-r--r--dev-python/sip/sip-4.19.17.ebuild98
2 files changed, 99 insertions, 0 deletions
diff --git a/dev-python/sip/Manifest b/dev-python/sip/Manifest
index 5e97c329b137..1e18c57fc076 100644
--- a/dev-python/sip/Manifest
+++ b/dev-python/sip/Manifest
@@ -1,3 +1,4 @@
DIST sip-4.19.13.tar.gz 1038815 BLAKE2B 0b6f2941140a535cfdfb51db71cf9a55e5f65be85961e304496fded7781da42b0ab7d01045b8802468a3ce3b57e7f571851fc7713fd47a03c8344017982d6632 SHA512 eb456e1f7efa463f859047acc5301e19279e1627629d0bad3ac7a0a52b77575126bc3f2c64bb4278ae11d415c13d2731dfc8c816bba71307173d393a414aae98
DIST sip-4.19.15.tar.gz 1053921 BLAKE2B afe0f1c2faf839305d21da05a667e649c37ab42c95df86d237bbd8f39a6b8bb7224da547467311bf82a85ce8f0fafd8bb6dd7cbf6050f2b157773339438d6277 SHA512 9518a5e90d54758b13dd8752669d4deb175cea8d8cdf810deaf554cd157d32ab7e394d23c774993fac3b7c02d56445b80962457d59f5cda543917a0251816422
DIST sip-4.19.16.tar.gz 1055966 BLAKE2B 0c078c7d747c3b92e739227829233dddd3c9e7c86ff50f80cd428bc8717f4ba22741fbabfd76d8e263c18a09ad14e7dfbde3423e984d31cd9a5734b1eaa25c86 SHA512 6a4e3e8580e914544c9037db61ab9cf05e2460cf2dbdeb67d30c949aa150952d2bb337061f7c7a9222251b04f83a1db1554ff576c3e83b8f60851b442133befa
+DIST sip-4.19.17.tar.gz 1056156 BLAKE2B b5a7b4cd3f2152e9b7ee7b715c3ad72c2092598e0405cefc24d6283e9da07e54fd65da89e137618d3b84f3138fff719cf226600135d646e7bd7c538c2a02cdfd SHA512 d393cfc1643663926bd315a8df92abd82bec071bf0488b047625bdac43e9074bc8a510ac23244a7a2d2d181f70af9691db9d0b759e79643981d6afd71a49d3cb
diff --git a/dev-python/sip/sip-4.19.17.ebuild b/dev-python/sip/sip-4.19.17.ebuild
new file mode 100644
index 000000000000..cbfa17402c9d
--- /dev/null
+++ b/dev-python/sip/sip-4.19.17.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+inherit python-r1 toolchain-funcs
+
+DESCRIPTION="Python extension module generator for C and C++ libraries"
+HOMEPAGE="https://www.riverbankcomputing.com/software/sip/intro"
+
+MY_PN=sip
+MY_P=${MY_PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="https://www.riverbankcomputing.com/static/Downloads/${MY_PN}/${PV}/${MY_P}.tar.gz"
+fi
+
+# Sub-slot based on SIP_API_MAJOR_NR from siplib/sip.h
+SLOT="0/12"
+LICENSE="|| ( GPL-2 GPL-3 SIP )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="doc"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="${PYTHON_DEPS}"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=( "${FILESDIR}"/${PN}-4.18-darwin.patch )
+
+src_prepare() {
+ # Sub-slot sanity check
+ local sub_slot=${SLOT#*/}
+ local sip_api_major_nr=$(sed -nre 's:^#define SIP_API_MAJOR_NR\s+([0-9]+):\1:p' siplib/sip.h || die)
+ if [[ ${sub_slot} != ${sip_api_major_nr} ]]; then
+ eerror
+ eerror "Ebuild sub-slot (${sub_slot}) does not match SIP_API_MAJOR_NR (${sip_api_major_nr})"
+ eerror "Please update SLOT variable as follows:"
+ eerror " SLOT=\"${SLOT%%/*}/${sip_api_major_nr}\""
+ eerror
+ die "sub-slot sanity check failed"
+ fi
+
+ default
+}
+
+src_configure() {
+ configuration() {
+ if ! python_is_python3; then
+ local CFLAGS="${CFLAGS} -fno-strict-aliasing"
+ fi
+
+ local incdir=$(python_get_includedir)
+ local myconf=(
+ "${PYTHON}"
+ "${S}"/configure.py
+ --sysroot="${ESYSROOT}/usr"
+ --bindir="${EPREFIX}/usr/bin"
+ --destdir="$(python_get_sitedir)"
+ --incdir="${incdir#${SYSROOT}}"
+ AR="$(tc-getAR) cqs"
+ CC="$(tc-getCC)"
+ CFLAGS="${CFLAGS}"
+ CFLAGS_RELEASE=
+ CXX="$(tc-getCXX)"
+ CXXFLAGS="${CXXFLAGS}"
+ CXXFLAGS_RELEASE=
+ LINK="$(tc-getCXX)"
+ LINK_SHLIB="$(tc-getCXX)"
+ LFLAGS="${LDFLAGS}"
+ LFLAGS_RELEASE=
+ RANLIB=
+ STRIP=
+ )
+ echo "${myconf[@]}"
+ "${myconf[@]}" || die
+ }
+ python_foreach_impl run_in_build_dir configuration
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir default
+}
+
+src_install() {
+ installation() {
+ emake DESTDIR="${D}" install
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir installation
+
+ einstalldocs
+ use doc && dodoc -r doc/html
+}