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/
Date: Mon, 29 Feb 2016 13:25:02
Message-Id: 1456752279.f6686f843c2368b08f0692ea0419987982453dd8.dilfridge@gentoo
1 commit: f6686f843c2368b08f0692ea0419987982453dd8
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 29 13:24:39 2016 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 29 13:24:39 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6686f84
7
8 dev-libs/icu: Add experimental, untested revbump using C++11. No keywords. Bug 575198
9
10 Package-Manager: portage-2.2.27
11
12 dev-libs/icu/icu-56.1-r1.ebuild | 134 ++++++++++++++++++++++++++++++++++++++++
13 1 file changed, 134 insertions(+)
14
15 diff --git a/dev-libs/icu/icu-56.1-r1.ebuild b/dev-libs/icu/icu-56.1-r1.ebuild
16 new file mode 100644
17 index 0000000..7929af2
18 --- /dev/null
19 +++ b/dev-libs/icu/icu-56.1-r1.ebuild
20 @@ -0,0 +1,134 @@
21 +# Copyright 1999-2016 Gentoo Foundation
22 +# Distributed under the terms of the GNU General Public License v2
23 +# $Id$
24 +
25 +EAPI=5
26 +
27 +inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal
28 +
29 +DESCRIPTION="International Components for Unicode"
30 +HOMEPAGE="http://www.icu-project.org/"
31 +SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz"
32 +
33 +LICENSE="BSD"
34 +
35 +SLOT="0/56.C++11"
36 +
37 +KEYWORDS=""
38 +IUSE="debug doc examples static-libs"
39 +
40 +DEPEND="
41 + virtual/pkgconfig
42 + doc? (
43 + app-doc/doxygen[dot]
44 + )
45 +"
46 +
47 +S="${WORKDIR}/${PN}/source"
48 +
49 +MULTILIB_CHOST_TOOLS=(
50 + /usr/bin/icu-config
51 +)
52 +
53 +src_prepare() {
54 + local variable
55 +
56 + epatch "${FILESDIR}/${PN}-remove-bashisms.patch"
57 + epatch_user
58 +
59 + # Disable renaming as it is stupind thing to do
60 + sed -i \
61 + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
62 + common/unicode/uconfig.h || die
63 +
64 + # Fix linking of icudata
65 + sed -i \
66 + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
67 + config/mh-linux || die
68 +
69 + # Append doxygen configuration to configure
70 + sed -i \
71 + -e 's:icudefs.mk:icudefs.mk Doxyfile:' \
72 + configure.ac || die
73 +
74 + eautoreconf
75 +}
76 +
77 +src_configure() {
78 + # Use C++11 now. Let's see what else breaks.
79 + append-cxxflags -std=c++11
80 +
81 + if tc-is-cross-compiler; then
82 + mkdir "${WORKDIR}"/host || die
83 + pushd "${WORKDIR}"/host >/dev/null || die
84 +
85 + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
86 + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
87 + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
88 + "${S}"/configure --disable-renaming --disable-debug \
89 + --disable-samples --enable-static || die
90 + emake
91 +
92 + popd >/dev/null || die
93 + fi
94 +
95 + multilib-minimal_src_configure
96 +}
97 +
98 +multilib_src_configure() {
99 + local myeconfargs=(
100 + --disable-renaming
101 + --disable-samples
102 + $(use_enable debug)
103 + $(use_enable static-libs static)
104 + )
105 +
106 + multilib_is_native_abi && myeconfargs+=(
107 + $(use_enable examples samples)
108 + )
109 + tc-is-cross-compiler && myeconfargs+=(
110 + --with-cross-build="${WORKDIR}"/host
111 + )
112 +
113 + # icu tries to use clang by default
114 + tc-export CC CXX
115 +
116 + ECONF_SOURCE=${S} \
117 + econf "${myeconfargs[@]}"
118 +}
119 +
120 +multilib_src_compile() {
121 + default
122 +
123 + if multilib_is_native_abi && use doc; then
124 + doxygen -u Doxyfile || die
125 + doxygen Doxyfile || die
126 + fi
127 +}
128 +
129 +multilib_src_test() {
130 + # INTLTEST_OPTS: intltest options
131 + # -e: Exhaustive testing
132 + # -l: Reporting of memory leaks
133 + # -v: Increased verbosity
134 + # IOTEST_OPTS: iotest options
135 + # -e: Exhaustive testing
136 + # -v: Increased verbosity
137 + # CINTLTST_OPTS: cintltst options
138 + # -e: Exhaustive testing
139 + # -v: Increased verbosity
140 + emake -j1 VERBOSE="1" check
141 +}
142 +
143 +multilib_src_install() {
144 + default
145 +
146 + if multilib_is_native_abi && use doc; then
147 + dohtml -p api -r doc/html/
148 + fi
149 +}
150 +
151 +multilib_src_install_all() {
152 + einstalldocs
153 + dohtml ../readme.html
154 +}