1 |
commit: 5389746d57023f3c8094bc178f6773eaf2d79f48 |
2 |
Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Jul 13 21:57:19 2016 +0000 |
4 |
Commit: Johannes Huber <johu <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Jul 14 06:54:11 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5389746d |
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 c095aae..90700cc 100644 |
17 |
--- a/eclass/kde5.eclass |
18 |
+++ b/eclass/kde5.eclass |
19 |
@@ -386,11 +386,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 |
@@ -405,12 +407,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 |
@@ -425,9 +429,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 |
@@ -639,17 +647,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 |
@@ -658,9 +668,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 |