From 319067f7a91e2c7813aa579597535bfbf10770cc Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 24 Feb 2018 14:19:23 +0000 Subject: dev-libs/icu-layoutex : fix compiling agains glibc 226 --- .../icu-layoutex/files/icu-58.2-glibc226.patch | 16 +++ dev-libs/icu-layoutex/icu-layoutex-58.2-r1.ebuild | 116 +++++++++++++++++++++ dev-libs/icu-layoutex/icu-layoutex-58.2.ebuild | 115 -------------------- 3 files changed, 132 insertions(+), 115 deletions(-) create mode 100644 dev-libs/icu-layoutex/files/icu-58.2-glibc226.patch create mode 100644 dev-libs/icu-layoutex/icu-layoutex-58.2-r1.ebuild delete mode 100644 dev-libs/icu-layoutex/icu-layoutex-58.2.ebuild diff --git a/dev-libs/icu-layoutex/files/icu-58.2-glibc226.patch b/dev-libs/icu-layoutex/files/icu-58.2-glibc226.patch new file mode 100644 index 00000000..7003173a --- /dev/null +++ b/dev-libs/icu-layoutex/files/icu-58.2-glibc226.patch @@ -0,0 +1,16 @@ +diff -ruN a/i18n/digitlst.cpp b/i18n/digitlst.cpp +--- a/i18n/digitlst.cpp 2016-10-27 01:37:56.000000000 -0000 ++++ b/i18n/digitlst.cpp 2017-09-21 20:39:29.873030393 -0000 +@@ -61,11 +61,7 @@ + #endif + + #if U_USE_STRTOD_L +-# if U_PLATFORM_USES_ONLY_WIN32_API || U_PLATFORM == U_PF_CYGWIN +-# include +-# else +-# include +-# endif ++# include + #endif + + // *************************************************************************** diff --git a/dev-libs/icu-layoutex/icu-layoutex-58.2-r1.ebuild b/dev-libs/icu-layoutex/icu-layoutex-58.2-r1.ebuild new file mode 100644 index 00000000..b393329f --- /dev/null +++ b/dev-libs/icu-layoutex/icu-layoutex-58.2-r1.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal + +DESCRIPTION="External layout part of International Components for Unicode" +HOMEPAGE="http://www.icu-project.org/" +SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz" + +LICENSE="BSD" + +SLOT="0/${PV}" + +KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 x86" +IUSE="debug static-libs" + +RDEPEND=" + ~dev-libs/icu-${PV}[${MULTILIB_USEDEP}] + dev-libs/icu-le-hb[${MULTILIB_USEDEP}] +" + +DEPEND=" + virtual/pkgconfig[${MULTILIB_USEDEP}] + ${RDEPEND} +" + +S="${WORKDIR}/${PN/-layoutex}/source" + +PATCHES=( + "${FILESDIR}/${PN}-58.1-remove-bashisms.patch" + "${FILESDIR}/icu-${PV}-glibc226.patch" +) + +src_prepare() { + # apply patches + default + + local variable + + # Disable renaming as it is stupid thing to do + sed -i \ + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ + common/unicode/uconfig.h || die + + # Fix linking of icudata + sed -i \ + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ + config/mh-linux || die + + eautoreconf +} + +src_configure() { + # Use C++14 + append-cxxflags -std=c++14 + + if tc-is-cross-compiler; then + mkdir "${WORKDIR}"/host || die + pushd "${WORKDIR}"/host >/dev/null || die + + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ + "${S}"/configure --disable-renaming --disable-debug \ + --disable-samples --enable-static || die + emake + + popd >/dev/null || die + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --disable-renaming + --disable-samples + --enable-layoutex + $(use_enable debug) + $(use_enable static-libs static) + ) + + tc-is-cross-compiler && myeconfargs+=( + --with-cross-build="${WORKDIR}"/host + ) + + # icu tries to use clang by default + tc-export CC CXX + + ECONF_SOURCE=${S} \ + econf "${myeconfargs[@]}" +} + +multilib_src_test() { + # INTLTEST_OPTS: intltest options + # -e: Exhaustive testing + # -l: Reporting of memory leaks + # -v: Increased verbosity + # IOTEST_OPTS: iotest options + # -e: Exhaustive testing + # -v: Increased verbosity + # CINTLTST_OPTS: cintltst options + # -e: Exhaustive testing + # -v: Increased verbosity + pushd layoutex &>/dev/null || die + emake -j1 VERBOSE="1" check + popd &>/dev/null || die +} + +multilib_src_install() { + pushd layoutex &>/dev/null || die + default + popd &>/dev/null || die +} diff --git a/dev-libs/icu-layoutex/icu-layoutex-58.2.ebuild b/dev-libs/icu-layoutex/icu-layoutex-58.2.ebuild deleted file mode 100644 index 92aedc3c..00000000 --- a/dev-libs/icu-layoutex/icu-layoutex-58.2.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic toolchain-funcs autotools multilib-minimal - -DESCRIPTION="External layout part of International Components for Unicode" -HOMEPAGE="http://www.icu-project.org/" -SRC_URI="http://download.icu-project.org/files/icu4c/${PV/_/}/icu4c-${PV//./_}-src.tgz" - -LICENSE="BSD" - -SLOT="0/${PV}" - -KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 x86" -IUSE="debug static-libs" - -RDEPEND=" - ~dev-libs/icu-${PV}[${MULTILIB_USEDEP}] - dev-libs/icu-le-hb[${MULTILIB_USEDEP}] -" - -DEPEND=" - virtual/pkgconfig[${MULTILIB_USEDEP}] - ${RDEPEND} -" - -S="${WORKDIR}/${PN/-layoutex}/source" - -PATCHES=( - "${FILESDIR}/${PN}-58.1-remove-bashisms.patch" -) - -src_prepare() { - # apply patches - default - - local variable - - # Disable renaming as it is stupid thing to do - sed -i \ - -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ - common/unicode/uconfig.h || die - - # Fix linking of icudata - sed -i \ - -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ - config/mh-linux || die - - eautoreconf -} - -src_configure() { - # Use C++14 - append-cxxflags -std=c++14 - - if tc-is-cross-compiler; then - mkdir "${WORKDIR}"/host || die - pushd "${WORKDIR}"/host >/dev/null || die - - CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ - CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ - RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ - "${S}"/configure --disable-renaming --disable-debug \ - --disable-samples --enable-static || die - emake - - popd >/dev/null || die - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --disable-renaming - --disable-samples - --enable-layoutex - $(use_enable debug) - $(use_enable static-libs static) - ) - - tc-is-cross-compiler && myeconfargs+=( - --with-cross-build="${WORKDIR}"/host - ) - - # icu tries to use clang by default - tc-export CC CXX - - ECONF_SOURCE=${S} \ - econf "${myeconfargs[@]}" -} - -multilib_src_test() { - # INTLTEST_OPTS: intltest options - # -e: Exhaustive testing - # -l: Reporting of memory leaks - # -v: Increased verbosity - # IOTEST_OPTS: iotest options - # -e: Exhaustive testing - # -v: Increased verbosity - # CINTLTST_OPTS: cintltst options - # -e: Exhaustive testing - # -v: Increased verbosity - pushd layoutex &>/dev/null || die - emake -j1 VERBOSE="1" check - popd &>/dev/null || die -} - -multilib_src_install() { - pushd layoutex &>/dev/null || die - default - popd &>/dev/null || die -} -- cgit v1.2.3