Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
etersoft-build-utils
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
korinf
etersoft-build-utils
Commits
3f5a538a
Commit
3f5a538a
authored
Aug 04, 2013
by
Vitaly Lipatov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
replace tarball conversion code with erc calls
parent
8f800a24
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
8 additions
and
134 deletions
+8
-134
rpmbs
bin/rpmbs
+1
-1
rpmgs
bin/rpmgs
+5
-5
etersoft-build-utils.spec
etersoft-build-utils.spec
+1
-0
tarball
share/eterbuild/functions/tarball
+1
-128
No files found.
bin/rpmbs
View file @
3f5a538a
...
...
@@ -152,7 +152,7 @@ extract_tarball_to_dest()
local
TARNAME
=
$(
querypackage
$1
""
"%{NAME}-%{VERSION}"
)
# FIXME: hack to replace alt release to eter
local
TARGETTARNAME
=
$(
querypackage
$1
""
"%{NAME}-%{VERSION}-%{RELEASE}"
|
sed
-e
"s/-alt/-eter/g"
)
copy_tarball_to_tar_bz2
$TARNAME
*
.tar
*
$2
/
$TARGETTARNAME
.tar.bz2
erc conv
$TARNAME
*
.tar
*
$2
/
$TARGETTARNAME
.tar.bz2
make_md5sum
$2
$TARGETTARNAME
.tar.bz2
# copy other tarballs
for
i
in
$(
ls
-1
*
.tar
*
|
grep
-v
"^
$TARNAME
.*
\.
tar.*"
)
;
do
...
...
bin/rpmgs
View file @
3f5a538a
...
...
@@ -362,15 +362,15 @@ do
# UpUrl for gear
download_url
"
$GETSOURCEURL
"
# FIXME: gear-update can use any tarball
copy_tarball_to_tar
$(
basename
"
$GETSOURCEURL
"
)
$FTB
erc conv
$(
basename
"
$GETSOURCEURL
"
)
$FTB
elif
[
-z
"
${
GETSOURCE
/*.tar/
}
"
]
;
then
# tar target: try to load and convert
download_any_tarball
test
-f
$WEXT
.tar.bz2
&&
FTB
=
$WEXT
.tar.bz2
elif
[
-z
"
${
GETSOURCE
/*.tar.bz2/
}
"
]
;
then
# tar.bz2 target: for src.rpm policy compatibility
download_any_tarball
test
-f
$WEXT
.tar.bz2
||
bzipit
$WEXT
.tar
||
fatal
"Cannot bzip
$WEXT
.tar"
download_any_tarball
test
-f
$WEXT
.tar.bz2
||
erc
$WEXT
.tar tar.bz2:
||
fatal
"Cannot bzip
$WEXT
.tar"
else
download_url
"
$GETSOURCE
"
fi
...
...
@@ -383,7 +383,7 @@ do
if
[
-n
"
${
GETSOURCEURL
}
"
]
;
then
# UpUrl for rpm
download_url
"
$GETSOURCEURL
"
copy_tarball_to_tar_bz2
$(
basename
"
$GETSOURCEURL
"
)
$FTB
erc conv
$(
basename
"
$GETSOURCEURL
"
)
$FTB
elif
[
-n
"
${
GETSOURCE
/*.tar.bz2/
}
"
]
;
then
# if not tar.bz2 target, direct download
download_url
"
$GETSOURCE
"
...
...
@@ -391,7 +391,7 @@ do
# if tar.bz2 target
download_any_tarball
#echog -n "Compressing to $WEXT.tar.bz2..."
test
-f
$WEXT
.tar.bz2
||
bzipit
$WEXT
.tar
||
fatal
"Cannot bzip
$WEXT
.tar"
test
-f
$WEXT
.tar.bz2
||
erc
$WEXT
.tar tar.bz2:
||
fatal
"Cannot bzip
$WEXT
.tar"
elif
[
-z
"
${
GETSOURCE
/*.bz2/
}
"
]
;
then
warning
"It is not tarball (possible single file)..."
get_bz2
||
get_gz
||
get_raw
||
fatal
"Cannot retrieve
$GETSOURCE
"
...
...
etersoft-build-utils.spec
View file @
3f5a538a
...
...
@@ -23,6 +23,7 @@ BuildArchitectures: noarch
BuildRequires: rpm-build-compat >= %altcompat_ver
Requires: eepm >= 1.3.0
Requires: erc >= 0.3
Requires: rpm-build
Requires: rpm-build-compat >= %altcompat_ver
...
...
share/eterbuild/functions/tarball
View file @
3f5a538a
...
...
@@ -3,134 +3,7 @@
# Author: Vitaly Lipatov <lav@etersoft.ru>
# Public domain
# FILE
# bzip FILE with pzip2 (if exists) or bzip2
bzipit
()
{
local
PBZIPIT
PBZIPIT
=
`
which pbzip2 2>/dev/null
`
if
[
-n
"
$PBZIPIT
"
]
;
then
echog
-n
" with pzip2..."
$PBZIPIT
-9
-f
$1
return
$?
else
echog
-n
" with bzip2..."
bzip
-f
--best
$1
return
$?
fi
}
# TODO: use external converter?
# $1 - zip name $2 - tar name
conv_zip_to_tar
()
{
local
RZ
=
$(
realpath
"
$1
"
)
local
RT
=
$(
realpath
"
$2
"
)
# FIXME: use normal mktempdir
mkdir
$1
.tmpdir
||
fatal
cd
$1
.tmpdir
||
fatal
# unzip or remove broken file
a
=
unzip
-q
"
$RZ
"
&&
tar
cf
"
$RT
"
./
*
||
{
rm
-fv
"
$RT
"
;
return
1
;
}
cd
..
rm
-rf
$1
.tmpdir
}
# TODO: use external converter?
# $1 - rar name $2 - tar name
conv_rar_to_tar
()
{
local
RZ
=
$(
realpath
"
$1
"
)
local
RT
=
$(
realpath
"
$2
"
)
# FIXME: use normal mktempdir
mkdir
$1
.tmpdir
||
fatal
cd
$1
.tmpdir
||
fatal
# unzip or remove broken file
a
=
unrar x
"
$RZ
"
&&
tar
cf
"
$RT
"
./
*
||
{
rm
-fv
"
$RT
"
;
return
1
;
}
cd
..
rm
-rf
$1
.tmpdir
}
get_archive_type
()
{
file
"
$1
"
|
grep
-q
"Zip archive data"
&&
echo
"zip"
&&
return
file
"
$1
"
|
grep
-q
"RAR archive data"
&&
echo
"rar"
&&
return
return
1
}
# TODO: use bzipit
copy_tarball_to_tar_bz2
()
{
local
SNAME
=
$1
local
TNAME
=
$2
#echo SNAME: $SNAME
test
-r
"
$SNAME
"
||
return
1
# copying from tar.bz2
if
[
!
${
SNAME
/.tar.bz2/
}
=
"
$SNAME
"
]
;
then
#echo O tar.bz2
cp
-fv
"
$SNAME
"
"
$TNAME
"
return
fi
if
[
!
${
SNAME
/.tar.gz/
}
=
"
$SNAME
"
]
;
then
gunzip
-c
"
$SNAME
"
| bzip
-c
>
"
$TNAME
"
return
fi
# FIXME: matchs with .tarNNN
if
[
!
${
SNAME
/.tar/
}
=
"
$SNAME
"
]
;
then
bzip
-c
"
$SNAME
"
>
"
$TNAME
"
return
fi
fatal
"Can't repack
$SNAME
to tar.bz2"
}
copy_tarball_to_tar
()
{
local
SNAME
=
$1
local
TNAME
=
$2
test
-r
"
$SNAME
"
||
return
1
# copying from tar.bz2
if
[
!
${
SNAME
/.tar.bz2/
}
=
"
$SNAME
"
]
;
then
bunzip
-c
"
$SNAME
"
>
"
$TNAME
"
return
fi
if
[
!
${
SNAME
/.tar.gz/
}
=
"
$SNAME
"
]
;
then
gunzip
-c
"
$SNAME
"
>
"
$TNAME
"
return
fi
if
[
!
${
SNAME
/.tar.xz/
}
=
"
$SNAME
"
]
;
then
a
=
xz
-d
"
$SNAME
"
>
"
$TNAME
"
return
fi
if
[
!
${
SNAME
/.tgz/
}
=
"
$SNAME
"
]
;
then
gunzip
-c
"
$SNAME
"
>
"
$TNAME
"
return
fi
# FIXME: matchs with .tarNNN
if
[
!
${
SNAME
/.tar/
}
=
"
$SNAME
"
]
;
then
cp
-fv
"
$SNAME
"
"
$TNAME
"
return
fi
# TODO: use conv_$type_to_tar (type may be undetected)
if
[
"
$(
get_archive_type
$SNAME
)
"
=
"zip"
]
;
then
conv_zip_to_tar
$SNAME
$TNAME
&&
return
fi
# TODO: use conv_$type_to_tar (type may be undetected)
if
[
"
$(
get_archive_type
$SNAME
)
"
=
"rar"
]
;
then
conv_rar_to_tar
$SNAME
$TNAME
&&
return
fi
fatal
"Can't repack
$SNAME
to tar"
}
# Use erc universal archivator instead
# DIR FILE
make_md5sum
()
...
...
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