Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
alpine
abuild
Commits
5d9012c0
Commit
5d9012c0
authored
Jan 04, 2011
by
Natanael Copa
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
abuild: add support for language packs
parent
21829533
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
46 additions
and
13 deletions
+46
-13
abuild.in
abuild.in
+46
-13
No files found.
abuild.in
View file @
5d9012c0
...
...
@@ -322,11 +322,21 @@ cleancache() {
done
}
listpkgnames
()
{
local
i
for
i
in
$pkgname
$subpackages
;
do
echo
${
i
%
:
*
}
done
for
i
in
$linguas
;
do
echo
$pkgname
-lang-
$i
done
}
cleanpkg
()
{
local
i
getpkgver
||
return
1
msg
"Cleaning built packages..."
for
i
in
$pkgname
$subpackage
s
;
do
for
i
in
$
(
list
pkgnames
)
;
do
local
p
=
"
${
i
%
:
*
}
-
$pkgver
-r
$pkgrel
"
rm
-f
"
$PKGDEST
/
$p
.apk"
"
$PKGDEST
/
$p
.src.tar.gz"
\
"
$abuildrepo
"
/
$p
.apk
...
...
@@ -339,7 +349,7 @@ cleanoldpkg() {
local
i j
getpkgver
||
return
1
msg
"Cleaning all packages except
$pkgver
-r
$pkgrel
..."
for
i
in
$pkgname
$subpackage
s
;
do
for
i
in
$
(
list
pkgnames
)
;
do
for
j
in
"
$PKGDEST
"
/
${
i
%
:
*
}
-[0-9]
*
.apk
;
do
[
"
$j
"
!=
"
$PKGDEST
/
${
i
%
:
*
}
-
$pkgver
-r
$pkgrel
.apk"
]
\
&&
rm
-f
"
$j
"
...
...
@@ -404,9 +414,6 @@ get_split_func() {
}
prepare_subpackages
()
{
if
[
-z
"
$subpackages
"
]
;
then
return
0
fi
local
i
cd
"
$startdir
"
for
i
in
$subpackages
;
do
...
...
@@ -418,6 +425,28 @@ prepare_subpackages() {
done
}
lang_subpkg
()
{
if
[
-z
"
$lang
"
]
;
then
error
"lang is not set"
return
1
fi
arch
=
"noarch"
install_if
=
"
$pkgname
=
$pkgver
-r
$pkgrel
lang-
$lang
"
mkdir
-p
"
$subpkgdir
"
/usr/share/locale
mv
"
$pkgdir
"
/usr/share/locale/
$lang
*
\
"
$subpkgdir
"
/usr/share/locale/
\
||
return
1
}
prepare_language_packs
()
{
for
lang
in
$linguas
;
do
lang
=
"
$lang
"
\
subpkgname
=
"
$pkgname
-lang-
$lang
"
\
subpkgdir
=
"
$pkgbasedir
"
/
$subpkgname
\
$0
lang_subpkg prepare_package
||
return
1
done
}
prepare_metafiles
()
{
getpkgver
||
return
1
local
name
=
${
subpkgname
:-
$pkgname
}
...
...
@@ -506,6 +535,7 @@ EOF
prepare_tracedeps
()
{
local dir
=
${
subpkgdir
:-
$pkgdir
}
[
"
$arch
"
=
"noarch"
]
&&
return
0
options_has
"!tracedeps"
&&
return
0
# lets tell all the .so files this package provides in .provides-so
find
-name
'*.so'
-o
-name
'*.so.[0-9]*'
|
sed
's:.*/::'
\
...
...
@@ -600,12 +630,12 @@ trace_apk_deps() {
fi
# special case for libpthread: we need depend on libgcc
if
grep
-q
-w
'^libpthread.so.*'
"
$dir
"
/.needs-so
2>/dev/null
\
if
[
-f
"
$dir
"
/.needs-so
]
&&
grep
-q
-w
'^libpthread.so.*'
"
$dir
"
/.needs-so
\
&&
!
grep
-q
-w
"^depend = libgcc"
"
$dir
"
/.PKGINFO
;
then
autodeps
=
"
$autodeps
libgcc"
msg
" added libgcc (due to libpthread)"
fi
for
i
in
$(
cat
"
$dir
"
/.needs-so
2>/dev/null
)
;
do
[
-f
"
$dir
"
/.needs-so
]
&&
for
i
in
$(
cat
"
$dir
"
/.needs-so
)
;
do
found
=
# first check if its provide by same apkbuild
for
j
in
"
$dir
"
/../.control.
*
/.provides-so
;
do
...
...
@@ -624,9 +654,11 @@ trace_apk_deps() {
done
# find all packages that holds the so files
so_files
=
$(
find_so_files
"
$dir
"
/.rpaths
$missing
)
||
return
1
deppkgs
=
$(
$APK
info
-q
-W
$so_files
)
||
return
1
if
[
-f
"
$dir
"
/.rpaths
]
;
then
so_files
=
$(
find_so_files
"
$dir
"
/.rpaths
$missing
)
||
return
1
deppkgs
=
$(
$APK
info
-q
-W
$so_files
)
||
return
1
fi
for
found
in
$self_provided
$deppkgs
;
do
if
grep
-w
"^depend =
${
found
}
$"
"
$dir
"
/.PKGINFO
>
/dev/null
;
then
warning
"You can remove '
$found
' from depends"
...
...
@@ -822,6 +854,7 @@ rootpkg() {
[
-n
"
$FAKEROOT
"
]
&&
msg
"Entering fakeroot..."
$FAKEROOT
--
"
$abuild_path
"
$color_opt
$do_build
\
prepare_subpackages
\
prepare_language_packs
\
prepare_package
\
create_apks
}
...
...
@@ -1072,10 +1105,10 @@ stripbin() {
# simply list target apks
listpkg
()
{
local
i
local
name
getpkgver
||
return
1
for
i
in
$pkgname
$subpackages
;
do
echo
"
$
{
i
%
:
*
}
-
$pkgver
-r
$pkgrel
.apk"
for
name
in
$
(
list
pkgname
s
)
;
do
echo
"
$
name
-
$pkgver
-r
$pkgrel
.apk"
done
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment