Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/gmp/
Date: Sun, 19 Jan 2020 12:24:19
Message-Id: 1579436649.03886df38ac40655f6e7af5390ca8a9b4b947cc3.slyfox@gentoo
1 commit: 03886df38ac40655f6e7af5390ca8a9b4b947cc3
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jan 19 12:23:19 2020 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Sun Jan 19 12:24:09 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03886df3
7
8 dev-libs/gmp: bump up to 6.2.0
9
10 Package-Manager: Portage-2.3.84, Repoman-2.3.20
11 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
12
13 dev-libs/gmp/Manifest | 2 +
14 dev-libs/gmp/gmp-6.2.0.ebuild | 104 ++++++++++++++++++++++++++++++++++++++++++
15 2 files changed, 106 insertions(+)
16
17 diff --git a/dev-libs/gmp/Manifest b/dev-libs/gmp/Manifest
18 index 71954ddbaf3..201af36a7c9 100644
19 --- a/dev-libs/gmp/Manifest
20 +++ b/dev-libs/gmp/Manifest
21 @@ -1,3 +1,5 @@
22 DIST gmp-4.3.2.tar.bz2 1897483 BLAKE2B 0efecd60c7a585f94ec8cbee77541d409c8e3bdeabaca09f7971560fb0fd504ae8e405256913acbef1434146868885c98068ff59efec92c92fdb73b853cf9396 SHA512 2e0b0fd23e6f10742a5517981e5171c6e88b0a93c83da701b296f5c0861d72c19782daab589a7eac3f9032152a0fc7eff7f5362db8fccc4859564a9aa82329cf
23 DIST gmp-6.1.2.tar.xz 1946336 BLAKE2B 2a864e80799471037a71c10d871f9782c37fe3a0a1734872e90f14a874ecd6551099d67b2ebd07f82a43b0522249a6b46e79952db11a278f87ca8013198f7604 SHA512 9f098281c0593b76ee174b722936952671fab1dae353ce3ed436a31fe2bc9d542eca752353f6645b7077c1f395ab4fdd355c58e08e2a801368f1375690eee2c6
24 +DIST gmp-6.2.0.tar.xz 2012444 BLAKE2B 928141cf7b0b70f78b66e7bc52aecd39a5fc30e8865b6de6effb5b061ade05a5a51b4680ef2f36ea0d682b319d54ceb1c6c8ef93bde6c2eef2e8b826a34602c3 SHA512 a066f0456f0314a1359f553c49fc2587e484ff8ac390ff88537266a146ea373f97a1c0ba24608bf6756f4eab11c9056f103c8deb99e5b57741b4f7f0ec44b90c
25 DIST gmp-man-6.1.2.pdf 825720 BLAKE2B b96340da5f534353b140b361fc1ff74757168024e8039d97a0ed1f14d874ff5fbc50abae2ff3505adc51d72e4acf2882ae6ca6405ae37b594f7b248e1ca05247 SHA512 85de10b2c03f7381881c3e95aa7fc53d8e018115028496ffbb5a79ab4967106c69ed7e97a5e434e6bb39752498aade8c2caa7cf77a8942b7ffd9150368a0d9c3
26 +DIST gmp-man-6.2.0.pdf 828998 BLAKE2B 0bf56bf0a6f1aac0e1fb9a5a37552f846a2d4a01bfd3f5b5c531d42a9afc48c19552e08971785805f59e3f2a5fd89e3f986f841dca2e340813596cfd76574e61 SHA512 25d129efedd329cd2d4535557c6912191f587bfd8ef028618b4ca6199ec7bf7a9ae862e7f5e5b5448c86888452a39fc7bf95cf9c18311858dd1aa9ae1c716239
27
28 diff --git a/dev-libs/gmp/gmp-6.2.0.ebuild b/dev-libs/gmp/gmp-6.2.0.ebuild
29 new file mode 100644
30 index 00000000000..c5495e13aef
31 --- /dev/null
32 +++ b/dev-libs/gmp/gmp-6.2.0.ebuild
33 @@ -0,0 +1,104 @@
34 +# Copyright 1999-2020 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=7
38 +
39 +inherit flag-o-matic eutils libtool multilib-minimal
40 +
41 +MY_PV=${PV/_p*}
42 +MY_PV=${MY_PV/_/-}
43 +MY_P=${PN}-${MY_PV}
44 +PLEVEL=${PV/*p}
45 +DESCRIPTION="Library for arbitrary-precision arithmetic on different type of numbers"
46 +HOMEPAGE="https://gmplib.org/"
47 +SRC_URI="ftp://ftp.gmplib.org/pub/${MY_P}/${MY_P}.tar.xz
48 + mirror://gnu/${PN}/${MY_P}.tar.xz
49 + doc? ( https://gmplib.org/${PN}-man-${MY_PV}.pdf )"
50 +
51 +LICENSE="|| ( LGPL-3+ GPL-2+ )"
52 +# The subslot reflects the C & C++ SONAMEs.
53 +SLOT="0/10.4"
54 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
55 +IUSE="+asm doc cxx static-libs"
56 +
57 +DEPEND="sys-devel/m4
58 + app-arch/xz-utils"
59 +RDEPEND=""
60 +
61 +S=${WORKDIR}/${MY_P%a}
62 +
63 +DOCS=( AUTHORS ChangeLog NEWS README doc/configuration doc/isa_abi_headache )
64 +HTML_DOCS=( doc )
65 +MULTILIB_WRAPPED_HEADERS=( /usr/include/gmp.h )
66 +
67 +PATCHES=(
68 + "${FILESDIR}"/${PN}-6.1.0-noexecstack-detect.patch
69 +)
70 +
71 +src_prepare() {
72 + default
73 +
74 + # note: we cannot run autotools here as gcc depends on this package
75 + elibtoolize
76 +
77 + # https://bugs.gentoo.org/536894
78 + if [[ ${CHOST} == *-darwin* ]] ; then
79 + eapply "${FILESDIR}"/${PN}-6.1.2-gcc-apple-4.0.1.patch
80 + fi
81 +
82 + # GMP uses the "ABI" env var during configure as does Gentoo (econf).
83 + # So, to avoid patching the source constantly, wrap things up.
84 + mv configure configure.wrapped || die
85 + cat <<-\EOF > configure
86 + #!/usr/bin/env sh
87 + exec env ABI="${GMPABI}" "$0.wrapped" "$@"
88 + EOF
89 + # Patches to original configure might have lost the +x bit.
90 + chmod a+rx configure{,.wrapped} || die
91 +}
92 +
93 +multilib_src_configure() {
94 + # Because of our 32-bit userland, 1.0 is the only HPPA ABI that works
95 + # https://gmplib.org/manual/ABI-and-ISA.html#ABI-and-ISA (bug #344613)
96 + if [[ ${CHOST} == hppa2.0-* ]] ; then
97 + GMPABI="1.0"
98 + fi
99 +
100 + # ABI mappings (needs all architectures supported)
101 + case ${ABI} in
102 + 32|x86) GMPABI=32;;
103 + 64|amd64|n64) GMPABI=64;;
104 + [onx]32) GMPABI=${ABI};;
105 + esac
106 + export GMPABI
107 +
108 + #367719
109 + if [[ ${CHOST} == *-mint* ]]; then
110 + filter-flags -O?
111 + fi
112 +
113 + tc-export CC
114 + ECONF_SOURCE="${S}" econf \
115 + --localstatedir="${EPREFIX}"/var/state/gmp \
116 + --enable-shared \
117 + $(use_enable asm assembly) \
118 + $(use_enable cxx) \
119 + $(use_enable static-libs static)
120 +}
121 +
122 +multilib_src_install() {
123 + emake DESTDIR="${D}" install
124 +
125 + # should be a standalone lib
126 + rm -f "${ED}"/usr/$(get_libdir)/libgmp.la
127 + # this requires libgmp
128 + local la="${ED}/usr/$(get_libdir)/libgmpxx.la"
129 + use static-libs \
130 + && sed -i 's:/[^ ]*/libgmp.la:-lgmp:' "${la}" \
131 + || rm -f "${la}"
132 +}
133 +
134 +multilib_src_install_all() {
135 + einstalldocs
136 + use doc && cp "${DISTDIR}"/gmp-man-${MY_PV}.pdf "${ED}"/usr/share/doc/${PF}/
137 +}