mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-19 13:31:28 +02:00
Merge pull request #3689 from bgilbert/bzip2
app-arch/bzip2: move to overlay; drop bad patch
This commit is contained in:
commit
d50f87ef28
1
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/Manifest
vendored
Normal file
1
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/Manifest
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
DIST bzip2-1.0.6.tar.gz 782025 BLAKE2B b31533af7c71d715e6600874bb0a11b9b3aebbb08af0414a6d88bd5a2ad879a482ad408338159cb6c241815da8f48798d2ea7789ea971431d0be42ee827b0a7e SHA512 00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12
|
117
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/bzip2-1.0.6-r12.ebuild
vendored
Normal file
117
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/bzip2-1.0.6-r12.ebuild
vendored
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
# Copyright 1999-2019 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
|
||||||
|
# (since we're building shared libs) ...
|
||||||
|
|
||||||
|
EAPI=6
|
||||||
|
|
||||||
|
inherit toolchain-funcs multilib-minimal
|
||||||
|
|
||||||
|
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
|
||||||
|
HOMEPAGE="https://sourceware.org/bzip2/"
|
||||||
|
SRC_URI="mirror://gentoo/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="BZIP2"
|
||||||
|
SLOT="0/1" # subslot = SONAME
|
||||||
|
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
|
||||||
|
IUSE="static static-libs"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-saneso.patch
|
||||||
|
"${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-progress.patch
|
||||||
|
"${FILESDIR}"/${PN}-1.0.3-no-test.patch
|
||||||
|
"${FILESDIR}"/${PN}-1.0.4-POSIX-shell.patch #193365
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-mingw.patch #393573
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-out-of-tree-build.patch
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-CVE-2016-3189.patch #620466
|
||||||
|
"${FILESDIR}"/${PN}-1.0.6-ubsan-error.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf )
|
||||||
|
HTML_DOCS=( manual.html )
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# - Use right man path
|
||||||
|
# - Generate symlinks instead of hardlinks
|
||||||
|
# - pass custom variables to control libdir
|
||||||
|
sed -i \
|
||||||
|
-e 's:\$(PREFIX)/man:\$(PREFIX)/share/man:g' \
|
||||||
|
-e 's:ln -s -f $(PREFIX)/bin/:ln -s -f :' \
|
||||||
|
-e 's:$(PREFIX)/lib:$(PREFIX)/$(LIBDIR):g' \
|
||||||
|
Makefile || die
|
||||||
|
}
|
||||||
|
|
||||||
|
bemake() {
|
||||||
|
emake \
|
||||||
|
VPATH="${S}" \
|
||||||
|
CC="$(tc-getCC)" \
|
||||||
|
AR="$(tc-getAR)" \
|
||||||
|
RANLIB="$(tc-getRANLIB)" \
|
||||||
|
"$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_compile() {
|
||||||
|
bemake -f "${S}"/Makefile-libbz2_so all
|
||||||
|
# Make sure we link against the shared lib #504648
|
||||||
|
ln -s libbz2.so.${PV} libbz2.so || die
|
||||||
|
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install() {
|
||||||
|
into /usr
|
||||||
|
|
||||||
|
# Install the shared lib manually. We install:
|
||||||
|
# .x.x.x - standard shared lib behavior
|
||||||
|
# .x.x - SONAME some distros use #338321
|
||||||
|
# .x - SONAME Gentoo uses
|
||||||
|
dolib.so libbz2.so.${PV}
|
||||||
|
local v
|
||||||
|
for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
|
||||||
|
dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
|
||||||
|
done
|
||||||
|
use static-libs && dolib.a libbz2.a
|
||||||
|
|
||||||
|
if multilib_is_native_abi ; then
|
||||||
|
gen_usr_ldscript -a bz2
|
||||||
|
|
||||||
|
dobin bzip2recover
|
||||||
|
into /
|
||||||
|
dobin bzip2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
multilib_src_install_all() {
|
||||||
|
# `make install` doesn't cope with out-of-tree builds, nor with
|
||||||
|
# installing just non-binaries, so handle things ourselves.
|
||||||
|
insinto /usr/include
|
||||||
|
doins bzlib.h
|
||||||
|
into /usr
|
||||||
|
dobin bz{diff,grep,more}
|
||||||
|
doman *.1
|
||||||
|
|
||||||
|
dosym bzdiff /usr/bin/bzcmp
|
||||||
|
dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
|
||||||
|
|
||||||
|
dosym bzmore /usr/bin/bzless
|
||||||
|
dosym bzmore.1 /usr/share/man/man1/bzless.1
|
||||||
|
|
||||||
|
local x
|
||||||
|
for x in bunzip2 bzcat bzip2recover ; do
|
||||||
|
dosym bzip2.1 /usr/share/man/man1/${x}.1
|
||||||
|
done
|
||||||
|
for x in bz{e,f}grep ; do
|
||||||
|
dosym bzgrep /usr/bin/${x}
|
||||||
|
dosym bzgrep.1 /usr/share/man/man1/${x}.1
|
||||||
|
done
|
||||||
|
|
||||||
|
einstalldocs
|
||||||
|
|
||||||
|
# move "important" bzip2 binaries to /bin and use the shared libbz2.so
|
||||||
|
dosym bzip2 /bin/bzcat
|
||||||
|
dosym bzip2 /bin/bunzip2
|
||||||
|
}
|
9
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.3-no-test.patch
vendored
Normal file
9
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.3-no-test.patch
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -23,5 +23,5 @@
|
||||||
|
bzlib.o
|
||||||
|
|
||||||
|
-all: libbz2.a bzip2 bzip2recover test
|
||||||
|
+all: libbz2.a bzip2 bzip2recover
|
||||||
|
|
||||||
|
bzip2: libbz2.a bzip2.o
|
21
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch
vendored
Normal file
21
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.4-POSIX-shell.patch
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
bzgrep uses !/bin/sh but then uses the bashism ${var//} so replace those
|
||||||
|
with calls to sed so POSIX shells work
|
||||||
|
|
||||||
|
http://bugs.gentoo.org/193365
|
||||||
|
|
||||||
|
--- a/bzgrep
|
||||||
|
+++ b/bzgrep
|
||||||
|
@@ -63,10 +63,9 @@
|
||||||
|
bzip2 -cdfq "$i" | $grep $opt "$pat"
|
||||||
|
r=$?
|
||||||
|
else
|
||||||
|
- j=${i//\\/\\\\}
|
||||||
|
- j=${j//|/\\|}
|
||||||
|
- j=${j//&/\\&}
|
||||||
|
- j=`printf "%s" "$j" | tr '\n' ' '`
|
||||||
|
+ # the backslashes here are doubled up as we have to escape each one for the
|
||||||
|
+ # shell and then escape each one for the sed expression
|
||||||
|
+ j=`printf "%s" "${i}" | sed -e 's:\\\\:\\\\\\\\:g' -e 's:[|]:\\\\|:g' -e 's:[&]:\\\\&:g' | tr '\n' ' '`
|
||||||
|
bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|"
|
||||||
|
r=$?
|
||||||
|
fi
|
@ -0,0 +1,25 @@
|
|||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -18,10 +18,9 @@
|
||||||
|
CC=gcc
|
||||||
|
AR=ar
|
||||||
|
RANLIB=ranlib
|
||||||
|
-LDFLAGS=
|
||||||
|
|
||||||
|
BIGFILES=-D_FILE_OFFSET_BITS=64
|
||||||
|
-CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
|
||||||
|
+CFLAGS+=-Wall -Winline $(BIGFILES) $(CPPFLAGS)
|
||||||
|
|
||||||
|
# Where you want it installed when you do 'make install'
|
||||||
|
PREFIX=/usr/local
|
||||||
|
--- a/Makefile-libbz2_so
|
||||||
|
+++ b/Makefile-libbz2_so
|
||||||
|
@@ -24,7 +24,7 @@
|
||||||
|
SHELL=/bin/sh
|
||||||
|
CC=gcc
|
||||||
|
BIGFILES=-D_FILE_OFFSET_BITS=64
|
||||||
|
-CFLAGS=-fpic -fPIC -Wall -Winline -O2 -g $(BIGFILES)
|
||||||
|
+CFLAGS+=-fpic -fPIC -Wall -Winline $(BIGFILES) $(CPPFLAGS)
|
||||||
|
|
||||||
|
OBJS= blocksort.o \
|
||||||
|
huffman.o \
|
12
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.4-man-links.patch
vendored
Normal file
12
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.4-man-links.patch
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
http://bugs.gentoo.org/172986
|
||||||
|
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -85,4 +85,7 @@
|
||||||
|
cp -f bzip2.1 $(PREFIX)/share/man/man1
|
||||||
|
chmod a+r $(PREFIX)/share/man/man1/bzip2.1
|
||||||
|
+ ln -s -f bzip2.1 $(PREFIX)/share/man/man1/bunzip2.1
|
||||||
|
+ ln -s -f bzip2.1 $(PREFIX)/share/man/man1/bzcat.1
|
||||||
|
+ ln -s -f bzip2.1 $(PREFIX)/share/man/man1/bzip2recover.1
|
||||||
|
cp -f bzlib.h $(PREFIX)/include
|
||||||
|
chmod a+r $(PREFIX)/include/bzlib.h
|
@ -0,0 +1,18 @@
|
|||||||
|
Upstream-Status: Backport
|
||||||
|
https://bugzilla.suse.com/attachment.cgi?id=681334
|
||||||
|
|
||||||
|
CVE: CVE-2016-3189
|
||||||
|
Signed-off-by: Armin Kuster <akuster@mvista.com>
|
||||||
|
|
||||||
|
Index: bzip2-1.0.6/bzip2recover.c
|
||||||
|
===================================================================
|
||||||
|
--- a/bzip2recover.c
|
||||||
|
+++ b/bzip2recover.c
|
||||||
|
@@ -457,6 +457,7 @@ Int32 main ( Int32 argc, Char** argv )
|
||||||
|
bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 );
|
||||||
|
bsPutUInt32 ( bsWr, blockCRC );
|
||||||
|
bsClose ( bsWr );
|
||||||
|
+ outFile = NULL;
|
||||||
|
}
|
||||||
|
if (wrBlock >= rbCtr) break;
|
||||||
|
wrBlock++;
|
27
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-mingw.patch
vendored
Normal file
27
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-mingw.patch
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
make it build for mingw targets
|
||||||
|
|
||||||
|
https://bugs.gentoo.org/393573
|
||||||
|
|
||||||
|
--- a/bzip2.c
|
||||||
|
+++ b/bzip2.c
|
||||||
|
@@ -129,7 +129,7 @@
|
||||||
|
#if BZ_LCCWIN32
|
||||||
|
# include <io.h>
|
||||||
|
# include <fcntl.h>
|
||||||
|
-# include <sys\stat.h>
|
||||||
|
+# include <sys/stat.h>
|
||||||
|
|
||||||
|
# define NORETURN /**/
|
||||||
|
# define PATH_SEP '\\'
|
||||||
|
--- a/bzlib.h
|
||||||
|
+++ b/bzlib.h
|
||||||
|
@@ -81,6 +81,9 @@ typedef
|
||||||
|
/* windows.h define small to char */
|
||||||
|
# undef small
|
||||||
|
# endif
|
||||||
|
+# ifndef WINAPI
|
||||||
|
+# define WINAPI
|
||||||
|
+# endif
|
||||||
|
# ifdef BZ_EXPORT
|
||||||
|
# define BZ_API(func) WINAPI func
|
||||||
|
# define BZ_EXTERN extern
|
@ -0,0 +1,79 @@
|
|||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -53,7 +53,6 @@ libbz2.a: $(OBJS)
|
||||||
|
|
||||||
|
check: test
|
||||||
|
test: bzip2
|
||||||
|
- @cat words1
|
||||||
|
./bzip2 -1 < sample1.ref > sample1.rb2
|
||||||
|
./bzip2 -2 < sample2.ref > sample2.rb2
|
||||||
|
./bzip2 -3 < sample3.ref > sample3.rb2
|
||||||
|
@@ -66,7 +65,6 @@ test: bzip2
|
||||||
|
cmp sample1.tst sample1.ref
|
||||||
|
cmp sample2.tst sample2.ref
|
||||||
|
cmp sample3.tst sample3.ref
|
||||||
|
- @cat words3
|
||||||
|
|
||||||
|
install: bzip2 bzip2recover
|
||||||
|
if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
|
||||||
|
@@ -115,25 +113,8 @@ clean:
|
||||||
|
sample1.rb2 sample2.rb2 sample3.rb2 \
|
||||||
|
sample1.tst sample2.tst sample3.tst
|
||||||
|
|
||||||
|
-blocksort.o: blocksort.c
|
||||||
|
- @cat words0
|
||||||
|
- $(CC) $(CFLAGS) -c blocksort.c
|
||||||
|
-huffman.o: huffman.c
|
||||||
|
- $(CC) $(CFLAGS) -c huffman.c
|
||||||
|
-crctable.o: crctable.c
|
||||||
|
- $(CC) $(CFLAGS) -c crctable.c
|
||||||
|
-randtable.o: randtable.c
|
||||||
|
- $(CC) $(CFLAGS) -c randtable.c
|
||||||
|
-compress.o: compress.c
|
||||||
|
- $(CC) $(CFLAGS) -c compress.c
|
||||||
|
-decompress.o: decompress.c
|
||||||
|
- $(CC) $(CFLAGS) -c decompress.c
|
||||||
|
-bzlib.o: bzlib.c
|
||||||
|
- $(CC) $(CFLAGS) -c bzlib.c
|
||||||
|
-bzip2.o: bzip2.c
|
||||||
|
- $(CC) $(CFLAGS) -c bzip2.c
|
||||||
|
-bzip2recover.o: bzip2recover.c
|
||||||
|
- $(CC) $(CFLAGS) -c bzip2recover.c
|
||||||
|
+%.o: %.c
|
||||||
|
+ $(CC) $(CFLAGS) -c $<
|
||||||
|
|
||||||
|
|
||||||
|
distclean: clean
|
||||||
|
--- a/Makefile-libbz2_so
|
||||||
|
+++ b/Makefile-libbz2_so
|
||||||
|
@@ -36,9 +36,7 @@ OBJS= blocksort.o \
|
||||||
|
|
||||||
|
all: $(OBJS)
|
||||||
|
$(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.6 $(OBJS)
|
||||||
|
- $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
|
||||||
|
- rm -f libbz2.so.1.0
|
||||||
|
- ln -s libbz2.so.1.0.6 libbz2.so.1.0
|
||||||
|
+ ln -sf libbz2.so.1.0.6 libbz2.so.1.0
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
|
||||||
|
@@ -43,17 +43,5 @@ all: $(OBJS)
|
||||||
|
clean:
|
||||||
|
rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
|
||||||
|
|
||||||
|
-blocksort.o: blocksort.c
|
||||||
|
- $(CC) $(CFLAGS) -c blocksort.c
|
||||||
|
-huffman.o: huffman.c
|
||||||
|
- $(CC) $(CFLAGS) -c huffman.c
|
||||||
|
-crctable.o: crctable.c
|
||||||
|
- $(CC) $(CFLAGS) -c crctable.c
|
||||||
|
-randtable.o: randtable.c
|
||||||
|
- $(CC) $(CFLAGS) -c randtable.c
|
||||||
|
-compress.o: compress.c
|
||||||
|
- $(CC) $(CFLAGS) -c compress.c
|
||||||
|
-decompress.o: decompress.c
|
||||||
|
- $(CC) $(CFLAGS) -c decompress.c
|
||||||
|
-bzlib.o: bzlib.c
|
||||||
|
- $(CC) $(CFLAGS) -c bzlib.c
|
||||||
|
+%.o: %.c
|
||||||
|
+ $(CC) $(CFLAGS) -c $<
|
163
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-progress.patch
vendored
Normal file
163
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-progress.patch
vendored
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
Ripped from Mandrake
|
||||||
|
|
||||||
|
http://bugs.gentoo.org/82192
|
||||||
|
|
||||||
|
--- a/bzip2.1
|
||||||
|
+++ b/bzip2.1
|
||||||
|
@@ -235,6 +235,10 @@
|
||||||
|
Suppress non-essential warning messages. Messages pertaining to
|
||||||
|
I/O errors and other critical events will not be suppressed.
|
||||||
|
.TP
|
||||||
|
+.B \-p \-\-show\-progress
|
||||||
|
+Show percentage of input\-file done and while compressing show the percentage
|
||||||
|
+of the original file the new file is.
|
||||||
|
+.TP
|
||||||
|
.B \-v --verbose
|
||||||
|
Verbose mode -- show the compression ratio for each file processed.
|
||||||
|
Further \-v's increase the verbosity level, spewing out lots of
|
||||||
|
--- a/bzip2.c
|
||||||
|
+++ b/bzip2.c
|
||||||
|
@@ -145,6 +145,7 @@
|
||||||
|
#include <signal.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <errno.h>
|
||||||
|
+#include <time.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include "bzlib.h"
|
||||||
|
|
||||||
|
@@ -301,6 +302,7 @@
|
||||||
|
Char progNameReally[FILE_NAME_LEN];
|
||||||
|
FILE *outputHandleJustInCase;
|
||||||
|
Int32 workFactor;
|
||||||
|
+Char showProgress;
|
||||||
|
|
||||||
|
static void panic ( Char* ) NORETURN;
|
||||||
|
static void ioError ( void ) NORETURN;
|
||||||
|
@@ -425,6 +427,12 @@
|
||||||
|
UInt32 nbytes_in_lo32, nbytes_in_hi32;
|
||||||
|
UInt32 nbytes_out_lo32, nbytes_out_hi32;
|
||||||
|
Int32 bzerr, bzerr_dummy, ret;
|
||||||
|
+ double fileSize = 0; /* initialized to make the compiler stop crying */
|
||||||
|
+ /* double because big files might otherwhise give
|
||||||
|
+ * overflows. not long long since not all compilers
|
||||||
|
+ * support that one
|
||||||
|
+ */
|
||||||
|
+ time_t startTime, currentTime;
|
||||||
|
|
||||||
|
SET_BINARY_MODE(stream);
|
||||||
|
SET_BINARY_MODE(zStream);
|
||||||
|
@@ -432,12 +440,21 @@
|
||||||
|
if (ferror(stream)) goto errhandler_io;
|
||||||
|
if (ferror(zStream)) goto errhandler_io;
|
||||||
|
|
||||||
|
+ if ((srcMode == SM_F2F || srcMode == SM_F2O) && showProgress == True) {
|
||||||
|
+ (void)fseek(stream, 0, SEEK_END);
|
||||||
|
+ fileSize = ftello(stream);
|
||||||
|
+ rewind(stream);
|
||||||
|
+ if (verbosity >= 1)
|
||||||
|
+ fprintf(stderr, "Input-file size: %ld\n", (long)fileSize);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
bzf = BZ2_bzWriteOpen ( &bzerr, zStream,
|
||||||
|
blockSize100k, verbosity, workFactor );
|
||||||
|
if (bzerr != BZ_OK) goto errhandler;
|
||||||
|
|
||||||
|
if (verbosity >= 2) fprintf ( stderr, "\n" );
|
||||||
|
|
||||||
|
+ time(&startTime);
|
||||||
|
while (True) {
|
||||||
|
|
||||||
|
if (myfeof(stream)) break;
|
||||||
|
@@ -446,6 +463,22 @@
|
||||||
|
if (nIbuf > 0) BZ2_bzWrite ( &bzerr, bzf, (void*)ibuf, nIbuf );
|
||||||
|
if (bzerr != BZ_OK) goto errhandler;
|
||||||
|
|
||||||
|
+ if ((srcMode == SM_F2F || srcMode == SM_F2O) && showProgress == True) {
|
||||||
|
+ time(¤tTime);
|
||||||
|
+
|
||||||
|
+ if ((currentTime - startTime) > 1) { /* show progress every 2 seconds */
|
||||||
|
+ double curInPos = ftello(stream);
|
||||||
|
+ double curOutPos = ftello(zStream);
|
||||||
|
+
|
||||||
|
+ startTime = currentTime;
|
||||||
|
+
|
||||||
|
+ fprintf(stderr, "%.2f%% done", (curInPos * 100.0) / fileSize);
|
||||||
|
+ if (srcMode == SM_F2F)
|
||||||
|
+ fprintf(stderr, ", new size: %.2f%%", (curOutPos * 100.0) / curInPos);
|
||||||
|
+
|
||||||
|
+ fprintf(stderr, " \r");
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
BZ2_bzWriteClose64 ( &bzerr, bzf, 0,
|
||||||
|
@@ -526,6 +559,8 @@
|
||||||
|
UChar unused[BZ_MAX_UNUSED];
|
||||||
|
Int32 nUnused;
|
||||||
|
UChar* unusedTmp;
|
||||||
|
+ double fileSize = 0; /* initialized to make the compiler stop crying */
|
||||||
|
+ time_t startTime, currentTime;
|
||||||
|
|
||||||
|
nUnused = 0;
|
||||||
|
streamNo = 0;
|
||||||
|
@@ -533,9 +568,19 @@
|
||||||
|
SET_BINARY_MODE(stream);
|
||||||
|
SET_BINARY_MODE(zStream);
|
||||||
|
|
||||||
|
+ if ((srcMode == SM_F2F || srcMode == SM_F2O) && showProgress == True) {
|
||||||
|
+ off_t dummy = ftello(zStream);
|
||||||
|
+ (void)fseeko(zStream, 0, SEEK_END);
|
||||||
|
+ fileSize = ftello(zStream);
|
||||||
|
+ (void)fseeko(zStream, dummy, SEEK_SET);
|
||||||
|
+ if (verbosity >= 1)
|
||||||
|
+ fprintf(stderr, "Input-file size: %ld\n", (long)fileSize);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (ferror(stream)) goto errhandler_io;
|
||||||
|
if (ferror(zStream)) goto errhandler_io;
|
||||||
|
|
||||||
|
+ time(&startTime);
|
||||||
|
while (True) {
|
||||||
|
|
||||||
|
bzf = BZ2_bzReadOpen (
|
||||||
|
@@ -551,6 +596,16 @@
|
||||||
|
if ((bzerr == BZ_OK || bzerr == BZ_STREAM_END) && nread > 0)
|
||||||
|
fwrite ( obuf, sizeof(UChar), nread, stream );
|
||||||
|
if (ferror(stream)) goto errhandler_io;
|
||||||
|
+
|
||||||
|
+ if ((srcMode == SM_F2F || srcMode == SM_F2O) && showProgress == True) {
|
||||||
|
+ time(¤tTime);
|
||||||
|
+ if ((currentTime - startTime) >= 2) {
|
||||||
|
+ double curInPos = ftello(zStream);
|
||||||
|
+ startTime = currentTime;
|
||||||
|
+
|
||||||
|
+ fprintf(stderr, "%.2f%% done\r", (curInPos * 100.0) / fileSize);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
if (bzerr != BZ_STREAM_END) goto errhandler;
|
||||||
|
|
||||||
|
@@ -1872,6 +1927,7 @@
|
||||||
|
deleteOutputOnInterrupt = False;
|
||||||
|
exitValue = 0;
|
||||||
|
i = j = 0; /* avoid bogus warning from egcs-1.1.X */
|
||||||
|
+ showProgress = False;
|
||||||
|
|
||||||
|
/*-- Set up signal handlers for mem access errors --*/
|
||||||
|
signal (SIGSEGV, mySIGSEGVorSIGBUScatcher);
|
||||||
|
@@ -1949,6 +2005,7 @@
|
||||||
|
case 'k': keepInputFiles = True; break;
|
||||||
|
case 's': smallMode = True; break;
|
||||||
|
case 'q': noisy = False; break;
|
||||||
|
+ case 'p': showProgress = True; break;
|
||||||
|
case '1': blockSize100k = 1; break;
|
||||||
|
case '2': blockSize100k = 2; break;
|
||||||
|
case '3': blockSize100k = 3; break;
|
||||||
|
@@ -1985,6 +2042,7 @@
|
||||||
|
if (ISFLAG("--keep")) keepInputFiles = True; else
|
||||||
|
if (ISFLAG("--small")) smallMode = True; else
|
||||||
|
if (ISFLAG("--quiet")) noisy = False; else
|
||||||
|
+ if (ISFLAG("--show-progress")) showProgress = True; else
|
||||||
|
if (ISFLAG("--version")) license(); else
|
||||||
|
if (ISFLAG("--license")) license(); else
|
||||||
|
if (ISFLAG("--exponential")) workFactor = 1; else
|
13
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-saneso.patch
vendored
Normal file
13
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-saneso.patch
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
--- a/Makefile-libbz2_so
|
||||||
|
+++ b/Makefile-libbz2_so
|
||||||
|
@@ -35,8 +35,8 @@
|
||||||
|
bzlib.o
|
||||||
|
|
||||||
|
all: $(OBJS)
|
||||||
|
- $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
|
||||||
|
- $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
|
||||||
|
+ $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1 -o libbz2.so.1.0.6 $(OBJS)
|
||||||
|
+ $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
|
||||||
|
rm -f libbz2.so.1.0
|
||||||
|
ln -s libbz2.so.1.0.6 libbz2.so.1.0
|
||||||
|
|
24
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
vendored
Normal file
24
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/files/bzip2-1.0.6-ubsan-error.patch
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
Author: Manoj Gupta <manojgupta@google.com>
|
||||||
|
|
||||||
|
Use unsigned 1 for shifting instead of signed 1.
|
||||||
|
|
||||||
|
This fixed an issue with shift caught by undefined behavior
|
||||||
|
sanitizer in clang.
|
||||||
|
bzip2-1.0.6/blocksort.c:255:7
|
||||||
|
runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
|
||||||
|
|
||||||
|
--- a/blocksort.c
|
||||||
|
+++ b/blocksort.c
|
||||||
|
@@ -202,9 +202,9 @@ void fallbackQSort3 ( UInt32* fmap,
|
||||||
|
bhtab [ 0 .. 2+(nblock/32) ] destroyed
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#define SET_BH(zz) bhtab[(zz) >> 5] |= (1 << ((zz) & 31))
|
||||||
|
-#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1 << ((zz) & 31))
|
||||||
|
-#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1 << ((zz) & 31)))
|
||||||
|
+#define SET_BH(zz) bhtab[(zz) >> 5] |= (1u << ((zz) & 31))
|
||||||
|
+#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1u << ((zz) & 31))
|
||||||
|
+#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1u << ((zz) & 31)))
|
||||||
|
#define WORD_BH(zz) bhtab[(zz) >> 5]
|
||||||
|
#define UNALIGNED_BH(zz) ((zz) & 0x01f)
|
||||||
|
|
11
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/metadata.xml
vendored
Normal file
11
sdk_container/src/third_party/coreos-overlay/app-arch/bzip2/metadata.xml
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="project">
|
||||||
|
<email>base-system@gentoo.org</email>
|
||||||
|
<name>Gentoo Base System</name>
|
||||||
|
</maintainer>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="cpe">cpe:/a:bzip:bzip2</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
11
sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-arch/bzip2-1.0.6-r12
vendored
Normal file
11
sdk_container/src/third_party/coreos-overlay/metadata/md5-cache/app-arch/bzip2-1.0.6-r12
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
DEFINED_PHASES=compile configure install prepare test
|
||||||
|
DESCRIPTION=A high-quality data compressor used extensively by Gentoo Linux
|
||||||
|
EAPI=6
|
||||||
|
HOMEPAGE=https://sourceware.org/bzip2/
|
||||||
|
IUSE=static static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_riscv_lp64d abi_riscv_lp64 abi_s390_32 abi_s390_64
|
||||||
|
KEYWORDS=alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd
|
||||||
|
LICENSE=BZIP2
|
||||||
|
SLOT=0/1
|
||||||
|
SRC_URI=mirror://gentoo/bzip2-1.0.6.tar.gz
|
||||||
|
_eclasses_=multibuild 40fe59465edacd730c644ec2bc197809 multilib 1d91b03d42ab6308b5f4f6b598ed110e multilib-build 0d0c25170069d06d0eb233154229af97 multilib-minimal 8bddda43703ba94d8341f4e247f97566 toolchain-funcs 8c7f9d80beedd16f2e5a7f612c609529
|
||||||
|
_md5_=1ff50a224acdb8ed8fed287949d66850
|
Loading…
x
Reference in New Issue
Block a user