Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/prefix:master commit in: sys-devel/gettext/, sys-devel/gettext/files/
Date: Mon, 03 Aug 2020 06:53:16
Message-Id: 1596437578.5a162a149bf1b24dadd6277a12728019929d2de2.grobian@gentoo
1 commit: 5a162a149bf1b24dadd6277a12728019929d2de2
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Mon Aug 3 06:52:58 2020 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Mon Aug 3 06:52:58 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=5a162a14
7
8 sys-devel/gettext-0.21: sync with gx86
9
10 Package-Manager: Portage-3.0.1-prefix, Repoman-2.3.23
11 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
12
13 sys-devel/gettext/Manifest | 1 +
14 .../files/gettext-0.20-parallel_install.patch | 37 +++++
15 .../files/gettext-0.21_rc1-avoid_eautomake.patch | 22 +++
16 sys-devel/gettext/gettext-0.21.ebuild | 169 +++++++++++++++++++++
17 4 files changed, 229 insertions(+)
18
19 diff --git a/sys-devel/gettext/Manifest b/sys-devel/gettext/Manifest
20 index d3eb9b6db9..993bbc9245 100644
21 --- a/sys-devel/gettext/Manifest
22 +++ b/sys-devel/gettext/Manifest
23 @@ -1,2 +1,3 @@
24 DIST gettext-0.19.7.tar.gz 19235781 BLAKE2B 4c2cfcb0b21a66a9f8d2d57de7420e624a1235f97180ad5ac194a5eb629760a9cacc7f3966cdf893d7af86c1740d8bb2266c639ebe2664ea44f2c47a962a841a SHA512 7ba89074d3eddd0b4a5e2980e1ec74b53c49b7a04a1fa91c70c4bc11ce9c30415e4df9d79698148eaaed325fb4feb25a340a2e8e01fbe86b1a66b1376a4c9e3d
25 DIST gettext-0.19.8.1.tar.gz 19704011 BLAKE2B 17dc7aad338a26d71b818fea51e46a47dccf14744ee575ce86b591becaea402e36d64dc018e1a84113c356122ffef367cf2fa424e51ebc9720350040b4960091 SHA512 073042fa2dc48804c58e76f036130a669e19612c25427b0ab14d0b366b549a63751bf3af03bfd0745d7c4f72497a4b2aab26a3cc6de83189ce111679073878e1
26 +DIST gettext-0.21.tar.gz 24181849 BLAKE2B 2eae99d0916b00b2af6fbc6bf7e309076519a10fea16cd49e7aa29fe8aec1ee7c784c6277281b764dc4abacf400cd3fe461129586303c8cd337db15c76cb4b87 SHA512 bbe590c5dd3580c75bf30ff768da99a88eb8d466ec1ac9eea20be4cab4357ecf72448e6b81b47425e39d50fa6320ba426632914d7898dfebb4f159abc39c31d1
27
28 diff --git a/sys-devel/gettext/files/gettext-0.20-parallel_install.patch b/sys-devel/gettext/files/gettext-0.20-parallel_install.patch
29 new file mode 100644
30 index 0000000000..e47beaf944
31 --- /dev/null
32 +++ b/sys-devel/gettext/files/gettext-0.20-parallel_install.patch
33 @@ -0,0 +1,37 @@
34 +From 829660df1583c6c3ee1d90291dd910f08e3b777e Mon Sep 17 00:00:00 2001
35 +From: Arfrever Frehtes Taifersar Arahesis <Arfrever@××××××.Org>
36 +Date: Fri, 10 May 2019 20:08:25 +0200
37 +Subject: [PATCH] Fix parallel install issue
38 +
39 +Signed-off-by: Lars Wendler <polynomial-c@g.o>
40 +---
41 + gettext-tools/src/Makefile.am | 13 ++++++++++---
42 + 1 file changed, 10 insertions(+), 3 deletions(-)
43 +
44 +diff --git a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am
45 +index 09a3c153d..1ee49cdca 100644
46 +--- a/gettext-tools/src/Makefile.am
47 ++++ b/gettext-tools/src/Makefile.am
48 +@@ -252,9 +252,16 @@ cldr_plurals_LDADD = libgettextsrc.la $(LDADD)
49 +
50 + # How to get the include files of libtextstyle.
51 + textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h:
52 +- here=`pwd`; \
53 +- cd ../../libtextstyle/lib && \
54 +- $(MAKE) install-nobase_includeHEADERS install-nobase_nodist_includeHEADERS includedir="$$here"
55 ++ cd "$(abs_top_builddir)/../libtextstyle/lib" && $(MAKE) $@
56 ++ if test -f "$(abs_top_builddir)/../libtextstyle/lib/$@"; then \
57 ++ file="$(abs_top_builddir)/../libtextstyle/lib/$@"; \
58 ++ else \
59 ++ file="$(abs_top_srcdir)/../libtextstyle/lib/$@"; \
60 ++ fi; \
61 ++ target_dir="$(abs_builddir)/$@"; \
62 ++ target_dir="$${target_dir%/*}"; \
63 ++ $(MKDIR_P) "$${target_dir}"; \
64 ++ $(INSTALL_HEADER) "$$file" $@
65 + BUILT_SOURCES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h
66 + MOSTLYCLEANFILES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h
67 +
68 +--
69 +2.21.0
70 +
71
72 diff --git a/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch b/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch
73 new file mode 100644
74 index 0000000000..8adae5d548
75 --- /dev/null
76 +++ b/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch
77 @@ -0,0 +1,22 @@
78 +--- gettext-0.21-rc1/gettext-tools/src/Makefile.in
79 ++++ gettext-0.21-rc1/gettext-tools/src/Makefile.in
80 +@@ -4106,9 +4106,16 @@
81 +
82 + # How to get the include files of libtextstyle.
83 + @USE_INSTALLED_LIBTEXTSTYLE_FALSE@textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h:
84 +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ here=`pwd`; \
85 +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ cd ../../libtextstyle/lib && \
86 +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(MAKE) install-nobase_includeHEADERS install-nobase_nodist_includeHEADERS includedir="$$here"
87 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ cd "$(abs_top_builddir)/../libtextstyle/lib" && $(MAKE) $@
88 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ if test -f "$(abs_top_builddir)/../libtextstyle/lib/$@"; then \
89 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ file="$(abs_top_builddir)/../libtextstyle/lib/$@"; \
90 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ else \
91 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ file="$(abs_top_srcdir)/../libtextstyle/lib/$@"; \
92 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ fi; \
93 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ target_dir="$(abs_builddir)/$@"; \
94 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ target_dir="$${target_dir%/*}"; \
95 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(MKDIR_P) "$${target_dir}"; \
96 ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(INSTALL_HEADER) "$$file" $@
97 +
98 + # No need to install libgettextsrc.a, except on AIX.
99 + install-exec-hook: install-exec-clean
100
101 diff --git a/sys-devel/gettext/gettext-0.21.ebuild b/sys-devel/gettext/gettext-0.21.ebuild
102 new file mode 100644
103 index 0000000000..69790191b8
104 --- /dev/null
105 +++ b/sys-devel/gettext/gettext-0.21.ebuild
106 @@ -0,0 +1,169 @@
107 +# Copyright 1999-2020 Gentoo Authors
108 +# Distributed under the terms of the GNU General Public License v2
109 +
110 +# Note: Keep version bumps in sync with dev-libs/libintl.
111 +
112 +EAPI=7
113 +
114 +inherit mono-env libtool java-pkg-opt-2 multilib-minimal
115 +
116 +DESCRIPTION="GNU locale utilities"
117 +HOMEPAGE="https://www.gnu.org/software/gettext/"
118 +if [[ "${PV}" == *_rc* ]] ; then
119 + SRC_URI="mirror://gnu-alpha/${PN}/${P/_/-}.tar.bz2"
120 + S="${WORKDIR}/${P/_/-}"
121 +else
122 + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
123 + KEYWORDS="~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
124 +fi
125 +# Only libasprintf is under the LGPL (and libintl is in a sep package),
126 +# so put that license behind USE=cxx.
127 +LICENSE="GPL-3+ cxx? ( LGPL-2.1+ )"
128 +SLOT="0"
129 +IUSE="acl -cvs +cxx doc emacs git java ncurses nls openmp static-libs"
130 +
131 +# only runtime goes multilib
132 +# Note: The version of libxml2 corresponds to the version bundled via gnulib.
133 +# If the build detects too old of a system version, it will end up falling back
134 +# to the bundled copy. #596918
135 +# Note: expat lacks a subslot because it is dynamically loaded at runtime. We
136 +# would depend on older subslots if they were available (based on the ABIs that
137 +# are explicitly handled), but expat doesn't currently use subslots.
138 +DEPEND=">=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
139 + >=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
140 + >=dev-libs/libxml2-2.9.3:=
141 + dev-libs/expat
142 + acl? ( virtual/acl )
143 + ncurses? ( sys-libs/ncurses:0= )
144 + java? ( >=virtual/jdk-1.4:= )"
145 +RDEPEND="${DEPEND}
146 + !git? ( cvs? ( dev-vcs/cvs ) )
147 + git? ( dev-vcs/git )
148 + java? ( >=virtual/jre-1.4 )"
149 +BDEPEND="
150 + git? ( dev-vcs/git )
151 +"
152 +PDEPEND="emacs? ( app-emacs/po-mode )"
153 +
154 +MULTILIB_WRAPPED_HEADERS=(
155 + # only installed for native ABI
156 + /usr/include/gettext-po.h
157 +
158 + /usr/include/autosprintf.h
159 + /usr/include/textstyle.h
160 + /usr/include/textstyle/stdbool.h
161 + /usr/include/textstyle/version.h
162 + /usr/include/textstyle/woe32dll.h
163 +)
164 +
165 +PATCHES=(
166 + "${FILESDIR}"/${PN}-0.19.7-disable-libintl.patch #564168
167 + "${FILESDIR}"/${PN}-0.20-parallel_install.patch #685530
168 + "${FILESDIR}"/${PN}-0.21_rc1-avoid_eautomake.patch
169 +)
170 +
171 +QA_SONAME_NO_SYMLINK=".*/preloadable_libintl.so"
172 +
173 +pkg_setup() {
174 + mono-env_pkg_setup
175 + java-pkg-opt-2_pkg_setup
176 +}
177 +
178 +src_prepare() {
179 + java-pkg-opt-2_src_prepare
180 +
181 + if use elibc_Cygwin; then
182 + PATCHES+=(
183 + "${FILESDIR}"/0.19.8.1-no-woe32dll.patch
184 + "${FILESDIR}"/0.19.3-localename.patch
185 + "${FILESDIR}"/0.19.8.1-tests-cygwin.patch
186 + "${FILESDIR}"/0.19.8.1-cygwin-ftm.patch
187 + )
188 + fi
189 +
190 + default
191 +
192 + # this script uses syntax that Solaris /bin/sh doesn't grok
193 + sed -i -e '1c\#!/usr/bin/env sh' \
194 + gettext-tools/misc/convert-archive.in || die
195 +
196 + elibtoolize
197 +}
198 +
199 +multilib_src_configure() {
200 + local myconf=(
201 + # switches common to runtime and top-level
202 + --cache-file="${BUILD_DIR}"/config.cache
203 + #--docdir="\$(datarootdir)/doc/${PF}"
204 +
205 + # Emacs support is now in a separate package
206 + --without-emacs
207 + --without-lispdir
208 + # glib depends on us so avoid circular deps
209 + --with-included-glib
210 + # libcroco depends on glib which ... ^^^
211 + --with-included-libcroco
212 + # this will _disable_ libunistring (since it is not bundled),
213 + # see bug #326477
214 + --with-included-libunistring
215 + # Never build libintl since it's in dev-libs/libintl now.
216 + --without-included-gettext
217 + # Never build bundled copy of libxml2.
218 + --without-included-libxml
219 +
220 + $(use_enable acl)
221 + $(use_enable cxx c++)
222 + $(use_enable cxx libasprintf)
223 + $(use_with git)
224 + $(usex git --without-cvs $(use_with cvs))
225 + $(use_enable java)
226 + $(use_enable ncurses curses)
227 + $(use_enable nls)
228 + $(use_enable openmp)
229 + $(use_enable static-libs static)
230 + )
231 +
232 + local ECONF_SOURCE="${S}"
233 + if ! multilib_is_native_abi ; then
234 + # for non-native ABIs, we build runtime only
235 + ECONF_SOURCE+=/gettext-runtime
236 + fi
237 +
238 + econf "${myconf[@]}"
239 +}
240 +
241 +multilib_src_install() {
242 + emake DESTDIR="${D}" install
243 +
244 + if multilib_is_native_abi ; then
245 + dosym msgfmt /usr/bin/gmsgfmt #43435
246 + dobin gettext-tools/misc/gettextize
247 + fi
248 +}
249 +
250 +multilib_src_install_all() {
251 + find "${ED}" -type f -name "*.la" -delete || die
252 +
253 + if use java ; then
254 + java-pkg_dojar "${ED}"/usr/share/${PN}/*.jar
255 + rm "${ED}"/usr/share/${PN}/*.jar || die
256 + rm "${ED}"/usr/share/${PN}/*.class || die
257 + if use doc ; then
258 + java-pkg_dojavadoc "${ED}"/usr/share/doc/${PF}/html/javadoc2
259 + fi
260 + fi
261 +
262 + dodoc AUTHORS ChangeLog NEWS README THANKS
263 +
264 + if use doc ; then
265 + docinto html
266 + dodoc "${ED}"/usr/share/doc/${PF}/*.html
267 + else
268 + rm -rf "${ED}"/usr/share/doc/${PF}/{csharpdoc,examples,javadoc2,javadoc1}
269 + fi
270 + rm "${ED}"/usr/share/doc/${PF}/*.html || die
271 +}
272 +
273 +pkg_preinst() {
274 + java-pkg-opt-2_pkg_preinst
275 +}