Lines 4-10
Link Here
|
4 |
|
4 |
|
5 |
EAPI=5 |
5 |
EAPI=5 |
6 |
|
6 |
|
7 |
inherit eutils toolchain-funcs base autotools |
7 |
inherit eutils toolchain-funcs autotools multilib-minimal |
8 |
|
8 |
|
9 |
DESCRIPTION="International Components for Unicode" |
9 |
DESCRIPTION="International Components for Unicode" |
10 |
HOMEPAGE="http://www.icu-project.org/" |
10 |
HOMEPAGE="http://www.icu-project.org/" |
Lines 18-24
SLOT="0/51.2"
Link Here
|
18 |
# other irregularities occured until the consumers were rebuilt. So let's rather err on the side |
18 |
# other irregularities occured until the consumers were rebuilt. So let's rather err on the side |
19 |
# of caution and more rebuilds here. See also bug 464876. dilfridge |
19 |
# of caution and more rebuilds here. See also bug 464876. dilfridge |
20 |
|
20 |
|
21 |
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd" |
21 |
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" |
22 |
IUSE="debug doc examples static-libs" |
22 |
IUSE="debug doc examples static-libs" |
23 |
|
23 |
|
24 |
DEPEND=" |
24 |
DEPEND=" |
Lines 36-42
PATCHES=(
Link Here
|
36 |
src_prepare() { |
36 |
src_prepare() { |
37 |
local variable |
37 |
local variable |
38 |
|
38 |
|
39 |
base_src_prepare |
39 |
epatch_user |
40 |
|
40 |
|
41 |
# Do not hardcode flags in icu-config and icu-*.pc files. |
41 |
# Do not hardcode flags in icu-config and icu-*.pc files. |
42 |
# https://ssl.icu-project.org/trac/ticket/6102 |
42 |
# https://ssl.icu-project.org/trac/ticket/6102 |
Lines 66-106
src_prepare() {
Link Here
|
66 |
} |
66 |
} |
67 |
|
67 |
|
68 |
src_configure() { |
68 |
src_configure() { |
69 |
local cross_opts |
|
|
70 |
|
71 |
# bootstrap for cross compilation |
72 |
if tc-is-cross-compiler; then |
69 |
if tc-is-cross-compiler; then |
|
|
70 |
mkdir "${WORKDIR}"/host || die |
71 |
pushd "${WORKDIR}"/host >/dev/null || die |
72 |
|
73 |
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ |
73 |
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ |
74 |
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ |
74 |
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ |
75 |
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ |
75 |
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ |
76 |
./configure --disable-renaming --disable-debug \ |
76 |
"${S}"/configure --disable-renaming --disable-debug \ |
77 |
--disable-samples --enable-static || die |
77 |
--disable-samples --enable-static || die |
78 |
emake |
78 |
emake |
79 |
mkdir -p "${WORKDIR}/host/" |
|
|
80 |
cp -a {bin,lib,config,tools} "${WORKDIR}/host/" |
81 |
emake clean |
82 |
|
79 |
|
83 |
cross_opts="--with-cross-build=${WORKDIR}/host" |
80 |
popd >/dev/null || die |
84 |
fi |
81 |
fi |
85 |
|
82 |
|
86 |
econf \ |
83 |
multilib-minimal_src_configure |
87 |
--disable-renaming \ |
|
|
88 |
$(use_enable debug) \ |
89 |
$(use_enable examples samples) \ |
90 |
$(use_enable static-libs static) \ |
91 |
${cross_opts} |
92 |
} |
84 |
} |
93 |
|
85 |
|
94 |
src_compile() { |
86 |
multilib_src_configure() { |
|
|
87 |
local myeconfargs=( |
88 |
--disable-renaming |
89 |
--disable-samples |
90 |
$(use_enable debug) |
91 |
$(use_enable static-libs static) |
92 |
) |
93 |
|
94 |
multilib_build_binaries && myeconfargs+=( |
95 |
$(use_enable examples samples) |
96 |
) |
97 |
tc-is-cross-compiler && myeconfargs+=( |
98 |
--with-cross-build="${WORKDIR}"/host |
99 |
) |
100 |
|
101 |
# icu tries to use clang by default |
102 |
tc-export CC CXX |
103 |
|
104 |
ECONF_SOURCE=${S} \ |
105 |
econf "${myeconfargs[@]}" |
106 |
} |
107 |
|
108 |
multilib_src_compile() { |
95 |
default |
109 |
default |
96 |
|
110 |
|
97 |
if use doc; then |
111 |
if multilib_build_binaries && use doc; then |
98 |
doxygen -u Doxyfile || die |
112 |
doxygen -u Doxyfile || die |
99 |
doxygen Doxyfile || die |
113 |
doxygen Doxyfile || die |
100 |
fi |
114 |
fi |
101 |
} |
115 |
} |
102 |
|
116 |
|
103 |
src_test() { |
117 |
multilib_src_test() { |
104 |
# INTLTEST_OPTS: intltest options |
118 |
# INTLTEST_OPTS: intltest options |
105 |
# -e: Exhaustive testing |
119 |
# -e: Exhaustive testing |
106 |
# -l: Reporting of memory leaks |
120 |
# -l: Reporting of memory leaks |
Lines 114-123
src_test() {
Link Here
|
114 |
emake -j1 VERBOSE="1" check |
128 |
emake -j1 VERBOSE="1" check |
115 |
} |
129 |
} |
116 |
|
130 |
|
117 |
src_install() { |
131 |
multilib_src_install() { |
118 |
default |
132 |
default |
119 |
|
133 |
|
120 |
dohtml ../readme.html |
134 |
if multilib_build_binaries && use doc; then |
|
|
135 |
dohtml -p api -r doc/html/ |
136 |
fi |
137 |
} |
121 |
|
138 |
|
122 |
use doc && dohtml -p api -r doc/html/ |
139 |
multilib_src_install_all() { |
|
|
140 |
einstalldocs |
141 |
dohtml ../readme.html |
123 |
} |
142 |
} |