Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/icu/files/, dev-libs/icu/
Date: Sat, 05 Nov 2016 20:30:12
Message-Id: 1478377660.b4293900b8325feb1be4ad127dd4823ed022985d.dilfridge@gentoo
1 commit: b4293900b8325feb1be4ad127dd4823ed022985d
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Sat Nov 5 19:05:06 2016 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Sat Nov 5 20:27:40 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4293900
7
8 dev-libs/icu: Version bump
9
10 Package-Manager: portage-2.3.2
11
12 dev-libs/icu/Manifest | 1 +
13 dev-libs/icu/files/icu-58.1-remove-bashisms.patch | 224 ++++++++++++++++++++++
14 dev-libs/icu/icu-58.1.ebuild | 140 ++++++++++++++
15 3 files changed, 365 insertions(+)
16
17 diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest
18 index 7df2adc..2342ef9 100644
19 --- a/dev-libs/icu/Manifest
20 +++ b/dev-libs/icu/Manifest
21 @@ -1,2 +1,3 @@
22 DIST icu4c-55_1-src.tgz 25600847 SHA256 e16b22cbefdd354bec114541f7849a12f8fc2015320ca5282ee4fd787571457b SHA512 21a3eb2c3678cd27b659eed073f8f1bd99c9751291d077820e9a370fd90b7d9b3bf414cc03dec4acb7fa61087e02d04f9f40e91a32c5180c718e2102fbd0cd35 WHIRLPOOL 8c5221c82ee2c8a02beafd0fdf91e0038e49912cc8b05fb7437dd4d0a0204b97ea62c45c2dd9dde0f658620b772d706e795821865c567d2e1eb91f8b83a12c4a
23 DIST icu4c-57_1-src.tgz 22360664 SHA256 ff8c67cb65949b1e7808f2359f2b80f722697048e90e7cfc382ec1fe229e9581 SHA512 a3c701e9c81622db545bcf93f315c7b13159750f43f009d0aec59ceae3a8e1ccb751826d4b8a7387aca47f38bff2a85816b1a123b07d2bf731558c7b66e47b8a WHIRLPOOL f9107e3019a0d9b4c40b83e6e7ea5277ab7d4317e349d6c5d6731f0b2355811b37a4c12aa8408a3bc0195ffeebdc952b7df709d2fb191ae1044fffadbafc897c
24 +DIST icu4c-58_1-src.tgz 23366443 SHA256 0eb46ba3746a9c2092c8ad347a29b1a1b4941144772d13a88667a7b11ea30309 SHA512 59b2a76834192a35125fda326587e613ef4486152cf0278c6f22568d4ae02c4b2d897efcea2654ef2b11bd1c3154aecd38cb68a70f69430736f343689f94c155 WHIRLPOOL faf2624a83f0d6f874166b328522dc9c89088db2690433ab05e96371722b635b81fd5210c7e87fe8e5df6681e881cf10204832925b448552affe8c2f6c851e37
25
26 diff --git a/dev-libs/icu/files/icu-58.1-remove-bashisms.patch b/dev-libs/icu/files/icu-58.1-remove-bashisms.patch
27 new file mode 100644
28 index 00000000..ef60ce4
29 --- /dev/null
30 +++ b/dev-libs/icu/files/icu-58.1-remove-bashisms.patch
31 @@ -0,0 +1,224 @@
32 +diff -ruN a/config/Makefile.inc.in b/config/Makefile.inc.in
33 +--- a/config/Makefile.inc.in 2016-09-09 23:28:18.000000000 +0200
34 ++++ b/config/Makefile.inc.in 2016-11-05 19:43:07.688466668 +0100
35 +@@ -124,12 +124,6 @@
36 + # with usually. Many applications will want to add $(ICULIBS_I18N) as well.
37 + ICULIBS = $(ICULIBS_BASE) $(ICULIBS_I18N) $(ICULIBS_COMMON) $(ICULIBS_DATA)
38 +
39 +-# Proper echo newline handling is needed in icu-config
40 +-ECHO_N=@ICU_ECHO_N@
41 +-ECHO_C=@ICU_ECHO_C@
42 +-# Not currently being used but good to have for proper tab handling
43 +-ECHO_T=@ICU_ECHO_T@
44 +-
45 + ##################################################################
46 + ##################################################################
47 + #
48 +diff -ruN a/config/icu-config-bottom b/config/icu-config-bottom
49 +--- a/config/icu-config-bottom 2016-09-09 23:28:18.000000000 +0200
50 ++++ b/config/icu-config-bottom 2016-11-05 19:49:00.854481361 +0100
51 +@@ -218,65 +218,65 @@
52 + ;;
53 +
54 + --cflags)
55 +- echo $ECHO_N "${CFLAGS} ${ECHO_C}"
56 ++ printf "%s" "${CFLAGS} "
57 + ;;
58 +
59 + --cc)
60 +- echo $ECHO_N "${CC} ${ECHO_C}"
61 ++ printf "%s" "${CC} "
62 + ;;
63 +
64 + --cxx)
65 +- echo $ECHO_N "${CXX} ${ECHO_C}"
66 ++ printf "%s" "${CXX} "
67 + ;;
68 +
69 + --cxxflags)
70 +- echo $ECHO_N "${CXXFLAGS} ${ECHO_C}"
71 ++ printf "%s" "${CXXFLAGS} "
72 + ;;
73 +
74 + --cppflags)
75 + # Don't echo the -I. - it's unneeded.
76 +- echo $ECHO_N "${CPPFLAGS} ${ECHO_C}" | sed -e 's/-I. //'
77 ++ printf "%s" "${CPPFLAGS} " | sed -e 's/-I. //'
78 + ;;
79 +
80 + --cppflags-searchpath)
81 +- echo $ECHO_N "-I${prefix}/include ${ECHO_C}"
82 ++ printf "%s" "-I${prefix}/include "
83 + ;;
84 +
85 + --cppflags-dynamic)
86 +- echo $ECHO_N "${SHAREDLIBCPPFLAGS} ${ECHO_C}"
87 ++ printf "%s" "${SHAREDLIBCPPFLAGS} "
88 + ;;
89 +
90 + --cxxflags-dynamic)
91 +- echo $ECHO_N "${SHAREDLIBCXXFLAGS} ${ECHO_C}"
92 ++ printf "%s" "${SHAREDLIBCXXFLAGS} "
93 + ;;
94 +
95 + --cflags-dynamic)
96 +- echo $ECHO_N "${SHAREDLIBCFLAGS} ${ECHO_C}"
97 ++ printf "%s" "${SHAREDLIBCFLAGS} "
98 + ;;
99 +
100 + --ldflags-system)
101 +- echo $ECHO_N "${LIBS} ${ECHO_C}"
102 ++ printf "%s" "${LIBS} "
103 + ;;
104 +
105 + --ldflags)
106 +- echo $ECHO_N "${LDFLAGS} ${ICULIBS} ${ECHO_C}"
107 ++ printf "%s" "${LDFLAGS} ${ICULIBS} "
108 + # $RPATH_LDFLAGS
109 + ;;
110 +
111 + --ldflags-libsonly)
112 +- echo $ECHO_N "${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} ${ECHO_C}"
113 ++ printf "%s" "${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} "
114 + ;;
115 +
116 + --ldflags-icuio)
117 +- echo $ECHO_N " ${ICULIBS_ICUIO} ${ECHO_C}"
118 ++ printf "%s" " ${ICULIBS_ICUIO} "
119 + ;;
120 +
121 + --ldflags-obsolete)
122 +- echo $ECHO_N "${ICULIBS_OBSOLETE} ${ECHO_C}"
123 ++ printf "%s" "${ICULIBS_OBSOLETE} "
124 + ;;
125 +
126 + --ldflags-toolutil)
127 +- echo $ECHO_N " ${ICULIBS_TOOLUTIL} ${ECHO_C}"
128 ++ printf "%s" " ${ICULIBS_TOOLUTIL} "
129 + ;;
130 +
131 + --ldflags-layout)
132 +@@ -285,7 +285,7 @@
133 + ;;
134 +
135 + --ldflags-searchpath)
136 +- echo $ECHO_N "-L${libdir} ${ECHO_C}"
137 ++ printf "%s" "-L${libdir} "
138 + ;;
139 +
140 + --detect-prefix)
141 +@@ -321,47 +321,47 @@
142 + ;;
143 +
144 + --shared-datadir)
145 +- echo $ECHO_N "${datadir} ${ECHO_C}"
146 ++ printf "%s" "${datadir} "
147 + ;;
148 +
149 + --incfile)
150 +- echo $ECHO_N "${pkglibdir}/Makefile.inc ${ECHO_C}"
151 ++ printf "%s" "${pkglibdir}/Makefile.inc "
152 + ;;
153 +
154 + --incpkgdatafile)
155 +- echo $ECHO_N "${pkglibdir}/pkgdata.inc ${ECHO_C}"
156 ++ printf "%s" "${pkglibdir}/pkgdata.inc "
157 + ;;
158 +
159 + --icudata)
160 +- echo $ECHO_N "${ICUDATA_NAME} ${ECHO_C}"
161 ++ printf "%s" "${ICUDATA_NAME} "
162 + ;;
163 +
164 + --icudata-mode)
165 +- echo $ECHO_N "${PKGDATA_MODE} ${ECHO_C}"
166 ++ printf "%s" "${PKGDATA_MODE} "
167 + ;;
168 +
169 + --icudata-install-dir)
170 +- echo $ECHO_N "${ICUPKGDATA_DIR} ${ECHO_C}"
171 ++ printf "%s" "${ICUPKGDATA_DIR} "
172 + ;;
173 +
174 + --icudatadir)
175 +- echo $ECHO_N "${ICUDATA_DIR} ${ECHO_C}"
176 ++ printf "%s" "${ICUDATA_DIR} "
177 + ;;
178 +
179 + --shlib-c)
180 +- echo $ECHO_N "${SHLIB_c} ${ECHO_C}"
181 ++ printf "%s" "${SHLIB_c} "
182 + ;;
183 +
184 + --shlib-cc)
185 +- echo $ECHO_N "${SHLIB_cc} ${ECHO_C}"
186 ++ printf "%s" "${SHLIB_cc} "
187 + ;;
188 +
189 + --version)
190 +- echo $ECHO_N $VERSION
191 ++ printf "%s" "$VERSION"
192 + ;;
193 +
194 + --unicode-version)
195 +- echo $ECHO_N $UNICODE_VERSION
196 ++ printf "%s" "$UNICODE_VERSION"
197 + ;;
198 +
199 + --host)
200 +diff -ruN a/configure.ac b/configure.ac
201 +--- a/configure.ac 2016-10-04 21:30:20.000000000 +0200
202 ++++ b/configure.ac 2016-11-05 19:43:07.688466668 +0100
203 +@@ -22,24 +22,6 @@
204 + PACKAGE="icu"
205 + AC_SUBST(PACKAGE)
206 +
207 +-# Use custom echo test for newline option
208 +-# Current autoconf (2.65) gives incorrect echo newline option
209 +-# for icu-config
210 +-# This may be removed later - mow (June 17, 2010)
211 +-ICU_ECHO_C= ICU_ECHO_N= ICU_ECHO_T=
212 +-case `/bin/sh -c "echo -n x"` in
213 +--n*)
214 +- case `/bin/sh -c "echo 'x\c'"` in
215 +- *c*) ICU_ECHO_T=' ';; # ECHO_T is single tab character.
216 +- *) ICU_ECHO_C='\c';;
217 +- esac;;
218 +-*)
219 +- ICU_ECHO_N='-n';;
220 +-esac
221 +-AC_SUBST(ICU_ECHO_N)
222 +-AC_SUBST(ICU_ECHO_C)
223 +-AC_SUBST(ICU_ECHO_T)
224 +-
225 + AC_MSG_CHECKING(for ICU version numbers)
226 +
227 + # Get the ICU version from uversion.h or other headers
228 +diff -ruN a/icudefs.mk.in b/icudefs.mk.in
229 +--- a/icudefs.mk.in 2016-09-09 23:28:18.000000000 +0200
230 ++++ b/icudefs.mk.in 2016-11-05 19:43:07.688466668 +0100
231 +@@ -157,11 +157,6 @@
232 + ENABLE_STATIC = @ENABLE_STATIC@
233 + ENABLE_SHARED = @ENABLE_SHARED@
234 +
235 +-# Echo w/o newline
236 +-
237 +-#ECHO_N = @ICU_ECHO_N@
238 +-#ECHO_C = @ICU_ECHO_C@
239 +-
240 + # Commands to compile
241 + COMPILE.c= $(CC) $(CPPFLAGS) $(DEFS) $(CFLAGS) -c
242 + COMPILE.cc= $(CXX) $(CPPFLAGS) $(DEFS) $(CXXFLAGS) -c
243 +diff -ruN a/test/hdrtst/Makefile.in b/test/hdrtst/Makefile.in
244 +--- a/test/hdrtst/Makefile.in 2016-09-28 06:17:24.000000000 +0200
245 ++++ b/test/hdrtst/Makefile.in 2016-11-05 19:43:07.688466668 +0100
246 +@@ -35,9 +35,6 @@
247 + include $(shell icu-config --incfile)
248 + DIRS=$(prefix)/include/unicode
249 + LDIRS=$(prefix)/include/layout
250 +-ECHO_T=@ECHO_T@
251 +-ECHO_C=@ECHO_C@
252 +-ECHO_N=@ECHO_N@
253 +
254 + all:
255 + @echo Please read this Makefile for more information.
256
257 diff --git a/dev-libs/icu/icu-58.1.ebuild b/dev-libs/icu/icu-58.1.ebuild
258 new file mode 100644
259 index 00000000..e5fd0fd
260 --- /dev/null
261 +++ b/dev-libs/icu/icu-58.1.ebuild
262 @@ -0,0 +1,140 @@
263 +# Copyright 1999-2016 Gentoo Foundation
264 +# Distributed under the terms of the GNU General Public License v2
265 +# $Id$
266 +
267 +EAPI=6
268 +
269 +inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal
270 +
271 +DESCRIPTION="International Components for Unicode"
272 +HOMEPAGE="http://www.icu-project.org/"
273 +SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz"
274 +
275 +LICENSE="BSD"
276 +
277 +SLOT="0/${PV}"
278 +
279 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
280 +IUSE="debug doc examples static-libs"
281 +
282 +DEPEND="
283 + virtual/pkgconfig
284 + doc? (
285 + app-doc/doxygen[dot]
286 + )
287 +"
288 +
289 +S="${WORKDIR}/${PN}/source"
290 +
291 +MULTILIB_CHOST_TOOLS=(
292 + /usr/bin/icu-config
293 +)
294 +
295 +PATCHES=(
296 + "${FILESDIR}/${PN}-58.1-remove-bashisms.patch"
297 +)
298 +
299 +src_prepare() {
300 + # apply patches
301 + default
302 +
303 + local variable
304 +
305 + # Disable renaming as it is stupid thing to do
306 + sed -i \
307 + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
308 + common/unicode/uconfig.h || die
309 +
310 + # Fix linking of icudata
311 + sed -i \
312 + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
313 + config/mh-linux || die
314 +
315 + # Append doxygen configuration to configure
316 + sed -i \
317 + -e 's:icudefs.mk:icudefs.mk Doxyfile:' \
318 + configure.ac || die
319 +
320 + eautoreconf
321 +}
322 +
323 +src_configure() {
324 + # Use C++14
325 + append-cxxflags -std=c++14
326 +
327 + if tc-is-cross-compiler; then
328 + mkdir "${WORKDIR}"/host || die
329 + pushd "${WORKDIR}"/host >/dev/null || die
330 +
331 + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
332 + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
333 + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
334 + "${S}"/configure --disable-renaming --disable-debug \
335 + --disable-samples --enable-static || die
336 + emake
337 +
338 + popd >/dev/null || die
339 + fi
340 +
341 + multilib-minimal_src_configure
342 +}
343 +
344 +multilib_src_configure() {
345 + local myeconfargs=(
346 + --disable-renaming
347 + --disable-samples
348 + $(use_enable debug)
349 + $(use_enable static-libs static)
350 + )
351 +
352 + multilib_is_native_abi && myeconfargs+=(
353 + $(use_enable examples samples)
354 + )
355 + tc-is-cross-compiler && myeconfargs+=(
356 + --with-cross-build="${WORKDIR}"/host
357 + )
358 +
359 + # icu tries to use clang by default
360 + tc-export CC CXX
361 +
362 + ECONF_SOURCE=${S} \
363 + econf "${myeconfargs[@]}"
364 +}
365 +
366 +multilib_src_compile() {
367 + default
368 +
369 + if multilib_is_native_abi && use doc; then
370 + doxygen -u Doxyfile || die
371 + doxygen Doxyfile || die
372 + fi
373 +}
374 +
375 +multilib_src_test() {
376 + # INTLTEST_OPTS: intltest options
377 + # -e: Exhaustive testing
378 + # -l: Reporting of memory leaks
379 + # -v: Increased verbosity
380 + # IOTEST_OPTS: iotest options
381 + # -e: Exhaustive testing
382 + # -v: Increased verbosity
383 + # CINTLTST_OPTS: cintltst options
384 + # -e: Exhaustive testing
385 + # -v: Increased verbosity
386 + emake -j1 VERBOSE="1" check
387 +}
388 +
389 +multilib_src_install() {
390 + default
391 +
392 + if multilib_is_native_abi && use doc; then
393 + docinto html
394 + dodoc -r doc/html/*
395 + fi
396 +}
397 +
398 +multilib_src_install_all() {
399 + einstalldocs
400 + docinto html
401 + dodoc ../readme.html
402 +}