Gentoo Archives: gentoo-commits

From: Michael Palimaka <kensington@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-apps/kde4-l10n/, kde-apps/kde4-l10n/files/
Date: Wed, 01 Jun 2016 21:46:17
Message-Id: 1464817546.95570c77ce6b073a3849c87a6b7cf2d98d3dab77.kensington@gentoo
1 commit: 95570c77ce6b073a3849c87a6b7cf2d98d3dab77
2 Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
3 AuthorDate: Wed Jun 1 20:14:57 2016 +0000
4 Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
5 CommitDate: Wed Jun 1 21:45:46 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95570c77
7
8 kde-apps/kde4-l10n: Fix LINGUAS=nn,sr
9
10 Package-Manager: portage-2.2.28
11
12 .../kde4-l10n/files/kde4-l10n-16.04.1-remove-dirs | 43 +++++
13 kde-apps/kde4-l10n/kde4-l10n-16.04.1-r1.ebuild | 206 +++++++++++++++++++++
14 2 files changed, 249 insertions(+)
15
16 diff --git a/kde-apps/kde4-l10n/files/kde4-l10n-16.04.1-remove-dirs b/kde-apps/kde4-l10n/files/kde4-l10n-16.04.1-remove-dirs
17 new file mode 100644
18 index 0000000..9563950
19 --- /dev/null
20 +++ b/kde-apps/kde4-l10n/files/kde4-l10n-16.04.1-remove-dirs
21 @@ -0,0 +1,43 @@
22 +# Disable any subdirectories listed here. Comments are ignored
23 +# First argument: parent directory
24 +# Second argument: which subdirectory to disable in CMakeLists.txt
25 +# kde-l10n 5
26 +data/kdeedu khangman
27 +docs/applications kate
28 +docs/applications konsole
29 +docs/applications kwrite
30 +docs/kde-runtime glossary
31 +docs/kde-runtime khelpcenter
32 +docs/kdeedu kig
33 +docs/kdeedu parley
34 +docs/kdeedu step
35 +docs/kdegames bomber
36 +docs/kdegraphics gwenview
37 +docs/kdegraphics kruler
38 +docs/kdesdk kapptemplate
39 +docs/kdesdk okteta
40 +docs/kdesdk umbrello
41 +docs/kdeutils kwalletmanager
42 +scripts kdeedu
43 +# Plasma 5
44 +docs kde-workspace
45 +docs/kde-runtime fundamentals
46 +docs/kde-runtime kdesu
47 +docs/kde-runtime khelpcenter
48 +docs/kde-runtime knetattach
49 +docs/kde-runtime onlinehelp
50 +docs/kde-runtime/kcontrol bookmarks
51 +docs/kde-runtime/kcontrol cookies
52 +docs/kde-runtime/kcontrol ebrowsing
53 +docs/kde-runtime/kcontrol emoticons
54 +docs/kde-runtime/kcontrol icons
55 +docs/kde-runtime/kcontrol kcmcgi
56 +docs/kde-runtime/kcontrol nepomuk
57 +docs/kde-runtime/kcontrol smb
58 +docs/kde-runtime/kcontrol trash
59 +docs/kde-runtime/kcontrol useragent
60 +messages kde-workspace
61 +messages kdeplasma-addons
62 +# kdepim-l10n 5
63 +docs kdepim
64 +docs kdepimlibs
65
66 diff --git a/kde-apps/kde4-l10n/kde4-l10n-16.04.1-r1.ebuild b/kde-apps/kde4-l10n/kde4-l10n-16.04.1-r1.ebuild
67 new file mode 100644
68 index 0000000..d126b30
69 --- /dev/null
70 +++ b/kde-apps/kde4-l10n/kde4-l10n-16.04.1-r1.ebuild
71 @@ -0,0 +1,206 @@
72 +# Copyright 1999-2016 Gentoo Foundation
73 +# Distributed under the terms of the GNU General Public License v2
74 +# $Id$
75 +
76 +EAPI=6
77 +
78 +KDE_HANDBOOK="optional"
79 +KMNAME="kde-l10n"
80 +inherit kde4-base
81 +
82 +DESCRIPTION="KDE internationalization package"
83 +HOMEPAGE="http://l10n.kde.org"
84 +
85 +KEYWORDS="~amd64 ~x86"
86 +
87 +DEPEND="
88 + sys-devel/gettext
89 +"
90 +RDEPEND="
91 + !minimal? ( !kde-apps/kde-l10n )
92 + minimal? ( >=kde-apps/kde-l10n-${PV} )
93 +"
94 +
95 +REMOVE_DIRS="${FILESDIR}/${PN}-16.04.1-remove-dirs"
96 +REMOVE_MSGS="${FILESDIR}/${PN}-16.03.91-remove-messages"
97 +
98 +LV="4.14.3"
99 +LEGACY_LANGS="ar bg bs ca ca@valencia cs da de el en_GB es et eu fa fi fr ga gl
100 +he hi hr hu ia id is it ja kk km ko lt lv mr nb nds nl nn pa pl pt pt_BR ro ru
101 +sk sl sr sv tr ug uk wa zh_CN zh_TW"
102 +
103 +# /usr/portage/distfiles $ ls -1 kde-l10n-*-${PV}.* |sed -e 's:-${PV}.tar.xz::' -e 's:kde-l10n-::' |tr '\n' ' '
104 +MY_LANGS="ar ast bg bs ca ca@valencia cs da de el en_GB eo es et eu fa fi fr ga
105 +gl he hi hr hu ia id is it ja kk km ko lt lv mr nb nds nl nn pa pl pt pt_BR ro
106 +ru sk sl sr sv tr ug uk wa zh_CN zh_TW"
107 +
108 +IUSE="+minimal test $(printf 'linguas_%s ' ${MY_LANGS})"
109 +
110 +URI_BASE="${SRC_URI/-${PV}.tar.xz/}"
111 +LURI_BASE="mirror://kde/stable/${LV}/src/${KMNAME}"
112 +SRC_URI=""
113 +
114 +for MY_LANG in ${LEGACY_LANGS} ; do
115 + SRC_URI="${SRC_URI} linguas_${MY_LANG}? ( ${LURI_BASE}/${KMNAME}-${MY_LANG}-${LV}.tar.xz )"
116 +done
117 +
118 +for MY_LANG in ${MY_LANGS} ; do
119 + SRC_URI="${SRC_URI} linguas_${MY_LANG}? ( ${URI_BASE}/${KMNAME}-${MY_LANG}-${PV}.tar.xz )"
120 +done
121 +
122 +S="${WORKDIR}"
123 +
124 +pkg_setup() {
125 + if [[ -z ${A} ]]; then
126 + elog
127 + elog "You either have the LINGUAS variable unset, or it only"
128 + elog "contains languages not supported by ${P}."
129 + elog "You won't have any additional language support."
130 + elog
131 + elog "${P} supports these language codes:"
132 + elog "${MY_LANGS}"
133 + elog
134 + fi
135 + [[ -n ${A} ]] && kde4-base_pkg_setup
136 +}
137 +
138 +src_unpack() {
139 + for my_tar in ${A}; do
140 + [[ ${my_tar} = *${PV}* ]] && local subdir="/4"
141 + use minimal && [[ ${my_tar} = *${LV}* ]] && continue
142 + tar -xpf "${DISTDIR}/${my_tar}" --xz \
143 + "${my_tar/.tar.xz/}/CMakeLists.txt" "${my_tar/.tar.xz/}${subdir}" 2> /dev/null ||
144 + elog "${my_tar}: tar extract command failed at least partially - continuing"
145 + done
146 +}
147 +
148 +src_prepare() {
149 + default
150 + [[ -n ${A} ]] || return
151 +
152 + # LINGUAS=sr variants are subdirs within sr/ ...
153 + if use minimal && [[ -d "${KMNAME}-sr-${PV}" ]] ; then
154 + for variant in "${KMNAME}"-sr-${PV}/4/sr/sr@*; do
155 + mkdir -p "${KMNAME}-${variant##*/}-${PV}/4" ||
156 + die "Failed to create LINGUAS=${variant##*/} subdir"
157 + mv ${variant} "${KMNAME}-${variant##*/}-${PV}/4/sr" ||
158 + die "Failed to move LINGUAS=${variant##*/}"
159 + cp -f "${KMNAME}-sr-${PV}"/CMakeLists.txt "${KMNAME}-${variant##*/}-${PV}" ||
160 + die "Failed to prepare LINGUAS=${variant##*/} subdir"
161 + cp -f "${KMNAME}-sr-${PV}"/4/CMakeLists.txt "${KMNAME}-${variant##*/}-${PV}"/4 ||
162 + die "Failed to prepare LINGUAS=${variant##*/} subdir"
163 + cp -f "${KMNAME}-sr-${PV}"/4/sr/CMakeLists.txt "${KMNAME}-${variant##*/}-${PV}"/4/sr ||
164 + die "Failed to prepare LINGUAS=${variant##*/} subdir"
165 + sed -e "/^macro.*sr/d" \
166 + -e "s/sr/${variant##*/}/" \
167 + -i "${KMNAME}-${variant##*/}-${PV}"/4/sr/CMakeLists.txt ||
168 + die "Failed to prepare LINGUAS=${variant##*/} subdir"
169 + done
170 + fi
171 +
172 + # add all linguas to cmake
173 + cat <<-EOF > CMakeLists.txt || die
174 +project(kde4-l10n)
175 +cmake_minimum_required(VERSION 2.8.12)
176 +$(printf "add_subdirectory( %s )\n" `find . -mindepth 1 -maxdepth 1 -type d -name "*${PV}*"`)
177 +EOF
178 +
179 + # Drop KF5-based part
180 + find -maxdepth 2 -type f -name CMakeLists.txt -exec \
181 + sed -i -e "/add_subdirectory(5)/ s/^/#DONT/" {} + || die
182 +
183 + if use minimal; then
184 + einfo "Removing file collisions with Plasma 5 and Applications"
185 + use test && einfo "Tests enabled: Listing LINGUAS causing file collisions"
186 +
187 + einfo "Directories..."
188 + while read path; do
189 + if use test ; then # build a report w/ LINGUAS="*" to submit @upstream
190 + local lngs
191 + for lng in ${LINGUAS}; do
192 + SDIR="${S}/${KMNAME}-${lng}-${PV}/4/${lng}"
193 + if [[ -d "${SDIR}"/${path%\ *}/${path#*\ } ]] ; then
194 + lngs+=" ${lng}"
195 + fi
196 + done
197 + [[ -n "${lngs}" ]] && einfo "${path%\ *}/${path#*\ }${lngs}"
198 + unset lngs
199 + fi
200 + if ls -U ./*/4/*/${path%\ *}/${path#*\ } > /dev/null 2>&1; then
201 + sed -e "\:add_subdirectory(\s*${path#*\ }\s*): s:^:#:" \
202 + -i ./*/4/*/${path%\ *}/CMakeLists.txt || \
203 + die "Failed to comment out ${path}"
204 + else
205 + einfo "F: ${path}" # run with LINGUAS="*" to cut down list
206 + fi
207 + done < <(grep -ve "^$\|^\s*\#" "${REMOVE_DIRS}")
208 + einfo
209 + einfo "Messages..."
210 + while read path; do
211 + if use test ; then # build a report w/ LINGUAS="*" to submit @upstream
212 + local lngs
213 + for lng in ${LINGUAS}; do
214 + SDIR="${S}/${KMNAME}-${lng}-${PV}/4/${lng}"
215 + if [[ -e "${SDIR}"/messages/${path} ]] ; then
216 + lngs+=" ${lng}"
217 + fi
218 + done
219 + [[ -n "${lngs}" ]] && einfo "${path}${lngs}"
220 + unset lngs
221 + fi
222 + if ls -U ./*/4/*/messages/${path} > /dev/null 2>&1; then
223 + rm ./*/4/*/messages/${path} || die "Failed to remove ${path}"
224 + else
225 + einfo "F: ${path}" # run with LINGUAS="*" to cut down list
226 + fi
227 + done < <(grep -ve "^$\|^\s*\#" "${REMOVE_MSGS}")
228 + else
229 + local LNG LDIR
230 + for LNG in ${LINGUAS}; do
231 + LDIR="${KMNAME}-${LNG}-${LV}"
232 + if [[ -d "${KMNAME}-${LNG}-${PV}" && -d "${LDIR}" ]] ; then
233 + einfo "${LNG}: Adding legacy localisation"
234 + local dest_path
235 + # Step through directories alphabetically first
236 + for path in $(ls -R "${LDIR}" | grep ":$" | sed -e 's/:$//') ; do
237 + dest_path="${path/${LV}/${PV}/4/${LNG}}"
238 + if [[ ! -d "${dest_path}" ]] ; then
239 + einfo " $(basename ${dest_path}) subdirectory"\
240 + "added to $(basename $(dirname ${dest_path}))"
241 + mkdir "${dest_path}" || die "Failed creating ${dest_path}"
242 + echo "add_subdirectory($(basename ${dest_path}))" >> \
243 + $(dirname "${dest_path}")/CMakeLists.txt
244 + fi
245 + done
246 + einfo " merging legacy localisation..."
247 + for path in $(find "${LDIR}" -type f) ; do
248 + dest_path="${path/${LV}/${PV}/4/${LNG}}"
249 + cp -rn "${path}" "${dest_path}" || die "Failed copying ${path}"
250 + done
251 + # Disable kdepim
252 + for path in kdepim kdepimlibs kdepim-runtime ; do
253 + find "${S}/${KMNAME}-${LNG}-${PV}/4/${LNG}" -name CMakeLists.txt -type f -exec \
254 + sed -i -e "s:^ *add_subdirectory( *${path} *):# no ${path}:g" {} +
255 + done
256 + rm -rf "${LDIR}"
257 + fi
258 + done
259 + fi
260 +}
261 +
262 +src_configure() {
263 + mycmakeargs=(
264 + -DBUILD_docs=$(usex handbook)
265 + )
266 + [[ -n ${A} ]] && kde4-base_src_configure
267 +}
268 +
269 +src_compile() {
270 + [[ -n ${A} ]] && kde4-base_src_compile
271 +}
272 +
273 +src_test() { :; }
274 +
275 +src_install() {
276 + [[ -n ${A} ]] && kde4-base_src_install
277 +}