Debian Patches

Status for 7zip/23.01+dfsg-12

Patch Description Author Forwarded Bugs Origin Last update
0001-Accept-Debian-build-flags.patch Accept Debian build flags YOKOTA Hiroshi <yokota.hgml@gmail.com> not-needed 2021-05-09
0002-Disable-hardware-acceleration-support-on-armel.patch Disable hardware acceleration support on armel

Use "__ARM_ARCH" to split "armel" and "armhf".

ARM v7 feature breaks ARM v5 compiler because the feature is not supported
by ARM v5 compiler.

__ARM_ARCH:
armel = 5
armhf = 7
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2021-09-14
0003-Guard-ARM-v8-feature-from-old-architecture.patch Guard ARM v8 feature from old architecture YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2021-10-13
0004-Use-getcwd-3-POSIX-extension-to-avoid-PATH_MAX-macro.patch Use getcwd(3) POSIX extension to avoid PATH_MAX macro

This fix helps GNU Hurd.
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2021-09-15
0005-Disable-local-echo-display-when-in-input-passwords-C.patch Disable local echo display when in input passwords (Closes: #1006238) YOKOTA Hiroshi <yokota.hgml@gmail.com> yes debian 2022-02-22
0006-Fix-ARM-architecture-selection-code.patch Fix ARM architecture selection code

This fix guards NEON function usage from older ARM architectures like armel
(__ARM_ARCH == 5).
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2023-06-21
0007-Add-__target__-fpu-neon-attribute-to-use-NEON-specif.patch Add __target__("fpu=neon") attribute to use NEON specific codes

https://sourceforge.net/p/sevenzip/patches/413/#8bce
> Igor Pavlov:
> 7-zip detects neon availability at runtime via hwcap.
> And 7-zip can select between neon and non-neon code.
> So we want to use NEON in some functions, even if main code is not neon.
> for x86, we just use `__attribute__` for avx2 functions:
>
> ```
> __attribute__((__target__("avx2")))
> ```
>
> What way to do similar thing for arm-neon ?

From armhf build log:
> /usr/lib/gcc/arm-linux-gnueabihf/12/include/arm_neon.h:9186:1:
> error: inlining failed in call to ‘always_inline’ ‘vrev16q_u8’:
> target specific option mismatch

vrev16q_u8() requires NEON option to use.
Add __target__("fpu=neon") attribute to enable NEON intrinsics.

__target__("fpu=crypto-neon-fp-armv8") is too much to use vrev16q_u8().
Use simple __target__("fpu=neon") to satisfy lowest requirement to
use vrev16q_u8().
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2023-06-21
0008-PPC-is-already-defined-as-1-on-PowerPC-compilers.patch "PPC" is already defined as "1" on PowerPC compilers

Use "Z7_PPC" to avoid symbol name conflicts
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2023-06-21
0009-64bit-time-data-type-fix.patch 64bit time data type fix

Use C++17 function timespec_get() to get current UTC time.

On 32bit architecture (armel,armhf,m68k,powerpc,sh4):
```
../../../Windows/TimeUtils.cpp: In function ‘void NWindows::NTime::GetCurUtc_FiTime(timespec&)’:
../../../Windows/TimeUtils.cpp:264:30: error: conversion from ‘__suseconds64_t’ {aka ‘long long int’} to ‘long int’ may change value [-Werror=conversion]
264 | ft.tv_nsec = now.tv_usec * 1000;
| ~~~~~~~~~~~~^~~~~~
```
YOKOTA Hiroshi <yokota.hgml@gmail.com> yes 2024-04-11

All known versions for source package '7zip'

Links