Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/icu/
Date: Tue, 12 Dec 2017 12:30:31
Message-Id: 1513081820.f1b8a71940404a6eacece82ea97cde187483095d.polynomial-c@gentoo
1 commit: f1b8a71940404a6eacece82ea97cde187483095d
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Tue Dec 12 12:28:23 2017 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Tue Dec 12 12:30:20 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1b8a719
7
8 dev-libs/icu: Bump to version 60.2
9
10 Package-Manager: Portage-2.3.18, Repoman-2.3.6
11
12 dev-libs/icu/Manifest | 1 +
13 dev-libs/icu/icu-60.2.ebuild | 163 +++++++++++++++++++++++++++++++++++++++++++
14 2 files changed, 164 insertions(+)
15
16 diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest
17 index 6b3b0cb5162..ee35700f767 100644
18 --- a/dev-libs/icu/Manifest
19 +++ b/dev-libs/icu/Manifest
20 @@ -2,3 +2,4 @@ DIST icu4c-58_1-src.tgz 23366443 BLAKE2B 16f1c778d925893769c6e0f0901fe02e5728953
21 DIST icu4c-58_2-src.tgz 23369902 BLAKE2B cdd2e02c3aba050f5b7f8b38c5a3731e3e5f1cc1403ef86a50908b95560ea3cf8a2d47119fa60cf34f22a8b65eaa2392fd5bcbd3bc48b3da541fe3d9bd7392c0 SHA512 5c21af748f48b392e6c0412bd0aee92162ea931820dcbfab4ec6e0299868504b303d88f7586cc95de55c777ac0dca3a29d6c8ca0892c646ebc864c8a5b5a162a
22 DIST icu4c-59_1-src.tgz 22706578 BLAKE2B 88ec0b5a174b7f854813c66009aba695b61ec4887b845f092f5b5bf401c416cb2920c596f3f33fee4751bb8ea576a37e991fb18bc845142b322e985224b95879 SHA512 9348aa68d72a74cd1f26588c30c80eee1b48800a26930d7eb0749390fd65f7930ee8843058b6a6dd5f265e79054fef661e807ded16a1ad691cbc5ebc5ab944c4
23 DIST icu4c-60_1-src.tgz 23296064 BLAKE2B 4f90c1f4f00b686d2632429fbaa6a6ec3d977e414f8d00cf82a525a1504c9d8c9b1a19458b495e5847abbcfff933038752f96d6bd165d206582f8ec1b77fff40 SHA512 a6798f70add1b3bac2197a49e09a0bb636279af7019ce572f63a30ab713e09657ee9d9b20aac7ea806fbb84667ca2eca981411e5053b47c3c705aa496a669233
24 +DIST icu4c-60_2-src.tgz 23317794 BLAKE2B 3c65f32676dfa554e8a93a3802ebc72ae9eac2e758e47e579be946169781ec49438fc1c468b834019af971dda092551f4cfb4faa882856620539f7599605543c SHA512 d127410b17dc79b133eb36bcee7f6db441e7e3ec5edc34c142d597718b7b3dbed5b77859ab18770fe4110fce965a2e5d7bb01a923880190ad4044f47ee7102f9
25
26 diff --git a/dev-libs/icu/icu-60.2.ebuild b/dev-libs/icu/icu-60.2.ebuild
27 new file mode 100644
28 index 00000000000..773d5b35d4b
29 --- /dev/null
30 +++ b/dev-libs/icu/icu-60.2.ebuild
31 @@ -0,0 +1,163 @@
32 +# Copyright 1999-2017 Gentoo Foundation
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=6
36 +
37 +inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal
38 +
39 +DESCRIPTION="International Components for Unicode"
40 +HOMEPAGE="http://www.icu-project.org/"
41 +SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz"
42 +
43 +LICENSE="BSD"
44 +
45 +SLOT="0/${PV}"
46 +
47 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
48 +IUSE="debug doc examples static-libs"
49 +
50 +DEPEND="
51 + virtual/pkgconfig
52 + doc? (
53 + app-doc/doxygen[dot]
54 + )
55 +"
56 +
57 +S="${WORKDIR}/${PN}/source"
58 +
59 +MULTILIB_CHOST_TOOLS=(
60 + /usr/bin/icu-config
61 +)
62 +
63 +PATCHES=(
64 + "${FILESDIR}/${PN}-58.1-remove-bashisms.patch"
65 + "${FILESDIR}/${PN}-58.2-darwin.patch"
66 +)
67 +
68 +pkg_pretend() {
69 + if tc-is-gcc ; then
70 + if [[ $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 9 \
71 + || $(gcc-major-version) -lt 4 ]] ; then
72 + die "You need at least sys-devel/gcc-4.9"
73 + fi
74 + fi
75 +}
76 +
77 +src_prepare() {
78 + # apply patches
79 + default
80 +
81 + local variable
82 +
83 + # Disable renaming as it is stupid thing to do
84 + sed -i \
85 + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
86 + common/unicode/uconfig.h || die
87 +
88 + # Fix linking of icudata
89 + sed -i \
90 + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
91 + config/mh-linux || die
92 +
93 + # Append doxygen configuration to configure
94 + sed -i \
95 + -e 's:icudefs.mk:icudefs.mk Doxyfile:' \
96 + configure.ac || die
97 +
98 + eautoreconf
99 +}
100 +
101 +src_configure() {
102 + # Use C++14
103 + append-cxxflags -std=c++14
104 +
105 + if tc-is-gcc ; then
106 + if [[ $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 9 \
107 + || $(gcc-major-version) -lt 4 ]] ; then
108 + die "You need at least sys-devel/gcc-4.9"
109 + fi
110 + fi
111 +
112 + if tc-is-cross-compiler; then
113 + mkdir "${WORKDIR}"/host || die
114 + pushd "${WORKDIR}"/host >/dev/null || die
115 +
116 + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
117 + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
118 + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
119 + "${S}"/configure --disable-renaming --disable-debug \
120 + --disable-samples --enable-static || die
121 + emake
122 +
123 + popd >/dev/null || die
124 + fi
125 +
126 + multilib-minimal_src_configure
127 +}
128 +
129 +multilib_src_configure() {
130 + local myeconfargs=(
131 + --disable-renaming
132 + --disable-samples
133 + --disable-layoutex
134 + $(use_enable debug)
135 + $(use_enable static-libs static)
136 + )
137 +
138 + multilib_is_native_abi && myeconfargs+=(
139 + $(use_enable examples samples)
140 + )
141 + tc-is-cross-compiler && myeconfargs+=(
142 + --with-cross-build="${WORKDIR}"/host
143 + )
144 +
145 + # icu tries to use clang by default
146 + tc-export CC CXX
147 +
148 + # make sure we configure with the same shell as we run icu-config
149 + # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined
150 + export CONFIG_SHELL=${EPREFIX}/bin/sh
151 + # probably have no /bin/sh in prefix-chain
152 + [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL=${BASH}
153 +
154 + ECONF_SOURCE=${S} \
155 + econf "${myeconfargs[@]}"
156 +}
157 +
158 +multilib_src_compile() {
159 + default
160 +
161 + if multilib_is_native_abi && use doc; then
162 + doxygen -u Doxyfile || die
163 + doxygen Doxyfile || die
164 + fi
165 +}
166 +
167 +multilib_src_test() {
168 + # INTLTEST_OPTS: intltest options
169 + # -e: Exhaustive testing
170 + # -l: Reporting of memory leaks
171 + # -v: Increased verbosity
172 + # IOTEST_OPTS: iotest options
173 + # -e: Exhaustive testing
174 + # -v: Increased verbosity
175 + # CINTLTST_OPTS: cintltst options
176 + # -e: Exhaustive testing
177 + # -v: Increased verbosity
178 + emake -j1 VERBOSE="1" check
179 +}
180 +
181 +multilib_src_install() {
182 + default
183 +
184 + if multilib_is_native_abi && use doc; then
185 + docinto html
186 + dodoc -r doc/html/*
187 + fi
188 +}
189 +
190 +multilib_src_install_all() {
191 + einstalldocs
192 + docinto html
193 + dodoc ../readme.html
194 +}