Gentoo Archives: gentoo-commits

From: Johannes Huber <johu@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/kde:master commit in: eclass/
Date: Wed, 13 Jul 2016 18:23:40
Message-Id: 1468434112.887c2ec6d8ca7ddf7cb39ffa320043747e9add2e.johu@gentoo
1 commit: 887c2ec6d8ca7ddf7cb39ffa320043747e9add2e
2 Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
3 AuthorDate: Sun Jul 10 18:06:59 2016 +0000
4 Commit: Johannes Huber <johu <AT> gentoo <DOT> org>
5 CommitDate: Wed Jul 13 18:21:52 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/kde.git/commit/?id=887c2ec6
7
8 kde5.eclass: Prepare for re-use of code w/ kde4-l10n
9
10 Signed-off-by: Johannes Huber <johu <AT> gentoo.org>
11
12 eclass/kde5.eclass | 35 +++++++++++++++++++++++++----------
13 1 file changed, 25 insertions(+), 10 deletions(-)
14
15 diff --git a/eclass/kde5.eclass b/eclass/kde5.eclass
16 index 763029c..8e6a6f1 100644
17 --- a/eclass/kde5.eclass
18 +++ b/eclass/kde5.eclass
19 @@ -471,11 +471,13 @@ kde5_src_unpack() {
20 ;;
21 esac
22 elif [[ ${KDEBASE} = kdel10n ]]; then
23 + local l10npart=5
24 + [[ ${PN} = kde4-l10n ]] && l10npart=4
25 mkdir -p "${S}" || die "Failed to create source dir ${S}"
26 cd "${S}"
27 for my_tar in ${A}; do
28 tar -xpf "${DISTDIR}/${my_tar}" --xz \
29 - "${my_tar/.tar.xz/}/CMakeLists.txt" "${my_tar/.tar.xz/}/5" 2> /dev/null ||
30 + "${my_tar/.tar.xz/}/CMakeLists.txt" "${my_tar/.tar.xz/}/${l10npart}" 2> /dev/null ||
31 elog "${my_tar}: tar extract command failed at least partially - continuing"
32 done
33 else
34 @@ -490,12 +492,14 @@ kde5_src_prepare() {
35 debug-print-function ${FUNCNAME} "$@"
36
37 if [[ ${KDEBASE} = kdel10n ]]; then
38 + local l10npart=5
39 + [[ ${PN} = kde4-l10n ]] && l10npart=4
40 # move known variant subdirs to root dir, currently sr@*
41 use_if_iuse l10n_sr-ijekavsk && _l10n_variant_subdir2root sr-ijekavsk sr
42 use_if_iuse l10n_sr-Latn-ijekavsk && _l10n_variant_subdir2root sr-Latn-ijekavsk sr
43 use_if_iuse l10n_sr-Latn && _l10n_variant_subdir2root sr-Latn sr
44 if use_if_iuse l10n_sr; then
45 - rm -rf kde-l10n-sr-${PV}/5/sr/sr@* || die "Failed to cleanup L10N=sr"
46 + rm -rf kde-l10n-sr-${PV}/${l10npart}/sr/sr@* || die "Failed to cleanup L10N=sr"
47 _l10n_variant_subdir_buster sr
48 elif [[ -d kde-l10n-sr-${PV} ]]; then
49 # having any variant selected means parent lingua will be unpacked as well
50 @@ -510,9 +514,13 @@ $(printf "add_subdirectory( %s )\n" \
51 `find . -mindepth 1 -maxdepth 1 -type d | sed -e "s:^\./::"`)
52 EOF
53
54 - # drop KDE4-based part
55 - find -maxdepth 2 -type f -name CMakeLists.txt -exec \
56 - sed -i -e "/add_subdirectory(4)/ s/^/#DONT/" {} + || die
57 + # for KF5: drop KDE4-based part; for KDE4: drop KF5-based part
58 + case ${l10npart} in
59 + 5) find -maxdepth 2 -type f -name CMakeLists.txt -exec \
60 + sed -i -e "/add_subdirectory(4)/ s/^/#DONT/" {} + || die ;;
61 + 4) find -maxdepth 2 -type f -name CMakeLists.txt -exec \
62 + sed -i -e "/add_subdirectory(5)/ s/^/#DONT/" {} + || die ;;
63 + esac
64 fi
65
66 cmake-utils_src_prepare
67 @@ -791,17 +799,19 @@ kde5_pkg_postrm() {
68 }
69
70 _l10n_variant_subdir2root() {
71 + local l10npart=5
72 + [[ ${PN} = kde4-l10n ]] && l10npart=4
73 local lingua=$(kde_l10n2lingua ${1})
74 local src=kde-l10n-${2}-${PV}
75 - local dest=kde-l10n-${lingua}-${PV}/5
76 + local dest=kde-l10n-${lingua}-${PV}/${l10npart}
77
78 # create variant rootdir structure from parent lingua and adapt it
79 mkdir -p ${dest} || die "Failed to create ${dest}"
80 - mv ${src}/5/${2}/${lingua} ${dest}/${lingua} || die "Failed to create ${dest}/${lingua}"
81 + mv ${src}/${l10npart}/${2}/${lingua} ${dest}/${lingua} || die "Failed to create ${dest}/${lingua}"
82 cp -f ${src}/CMakeLists.txt kde-l10n-${lingua}-${PV} || die "Failed to prepare L10N=${1} subdir"
83 echo "add_subdirectory(${lingua})" > ${dest}/CMakeLists.txt ||
84 die "Failed to prepare ${dest}/CMakeLists.txt"
85 - cp -f ${src}/5/${2}/CMakeLists.txt ${dest}/${lingua} ||
86 + cp -f ${src}/${l10npart}/${2}/CMakeLists.txt ${dest}/${lingua} ||
87 die "Failed to create ${dest}/${lingua}/CMakeLists.txt"
88 sed -e "s/${2}/${lingua}/" -i ${dest}/${lingua}/CMakeLists.txt ||
89 die "Failed to prepare ${dest}/${lingua}/CMakeLists.txt"
90 @@ -810,9 +820,14 @@ _l10n_variant_subdir2root() {
91 }
92
93 _l10n_variant_subdir_buster() {
94 - local dir=kde-l10n-$(kde_l10n2lingua ${1})-${PV}/5/$(kde_l10n2lingua ${1})
95 + local l10npart=5
96 + [[ ${PN} = kde4-l10n ]] && l10npart=4
97 + local dir=kde-l10n-$(kde_l10n2lingua ${1})-${PV}/${l10npart}/$(kde_l10n2lingua ${1})
98
99 - sed -e "/^add_subdirectory(/d" -i ${dir}/CMakeLists.txt || die "Failed to cleanup ${dir} subdir"
100 + case ${l10npart} in
101 + 5) sed -e "/^add_subdirectory(/d" -i ${dir}/CMakeLists.txt || die "Failed to cleanup ${dir} subdir" ;;
102 + 4) sed -e "/^macro.*subdirectory(/d" -i ${dir}/CMakeLists.txt || die "Failed to cleanup ${dir} subdir" ;;
103 + esac
104
105 for subdir in $(find ${dir} -mindepth 1 -maxdepth 1 -type d | sed -e "s:^\./::"); do
106 echo "add_subdirectory(${subdir##*/})" >> ${dir}/CMakeLists.txt