# HG changeset patch # User Stanislas Leduc # Date 1752612017 0 # Node ID e92a5b32321f2f17327294a40e5074ac993674c5 # Parent 22f2b8a2ea08a84c9f2cdf95465f44b951e1a62f Mass rebuild after bump to glibc 2.31, add epson printer and scanner package diff -r 22f2b8a2ea08 -r e92a5b32321f busybox/receipt --- a/busybox/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/busybox/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -60,6 +60,7 @@ scriptreplay.u mkfs_vfat.u ash.u +remove-stime-function-calls.patch EOT cp $stuff/$PACKAGE-${VERSION%.*}.config .config cp $stuff/$PACKAGE-${VERSION%.*}.config . diff -r 22f2b8a2ea08 -r e92a5b32321f busybox/stuff/busybox-1.31-remove-stime-function-calls.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/busybox/stuff/busybox-1.31-remove-stime-function-calls.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,88 @@ +From d3539be8f27b8cbfdfee460fe08299158f08bcd9 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Tue, 19 Nov 2019 13:06:40 +0100 +Subject: Remove stime() function calls + +stime() has been deprecated in glibc 2.31 and replaced with +clock_settime(). Let's replace the stime() function calls with +clock_settime() in preperation. + +function old new delta +rdate_main 197 224 +27 +clock_settime - 27 +27 +date_main 926 941 +15 +stime 37 - -37 +------------------------------------------------------------------------------ +(add/remove: 2/2 grow/shrink: 2/0 up/down: 69/-37) Total: 32 bytes + +Signed-off-by: Alistair Francis +Signed-off-by: Denys Vlasenko +--- + +https://git.busybox.net/busybox/patch/?id=d3539be8f27b8cbfdfee460fe08299158f08bcd9 + +diff --git a/coreutils/date.c b/coreutils/date.c +index 3414d38ae..4ade6abb4 100644 +--- a/coreutils/date.c ++++ b/coreutils/date.c +@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, char **argv) + time(&ts.tv_sec); + #endif + } ++#if !ENABLE_FEATURE_DATE_NANO ++ ts.tv_nsec = 0; ++#endif + localtime_r(&ts.tv_sec, &tm_time); + + /* If date string is given, update tm_time, and maybe set date */ +@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, char **argv) + if (date_str[0] != '@') + tm_time.tm_isdst = -1; + ts.tv_sec = validate_tm_time(date_str, &tm_time); ++ ts.tv_nsec = 0; + + /* if setting time, set it */ +- if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) { ++ if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) { + bb_perror_msg("can't set date"); + } + } +diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c +index 87cf59b3d..dc40d9155 100644 +--- a/libbb/missing_syscalls.c ++++ b/libbb/missing_syscalls.c +@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid) + return syscall(__NR_getsid, pid); + } + +-int stime(const time_t *t) +-{ +- struct timeval tv; +- tv.tv_sec = *t; +- tv.tv_usec = 0; +- return settimeofday(&tv, NULL); +-} +- + int sethostname(const char *name, size_t len) + { + return syscall(__NR_sethostname, name, len); +diff --git a/util-linux/rdate.c b/util-linux/rdate.c +index 70f829e7f..878375d78 100644 +--- a/util-linux/rdate.c ++++ b/util-linux/rdate.c +@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, char **argv) + if (!(flags & 2)) { /* no -p (-s may be present) */ + if (time(NULL) == remote_time) + bb_error_msg("current time matches remote time"); +- else +- if (stime(&remote_time) < 0) ++ else { ++ struct timespec ts; ++ ts.tv_sec = remote_time; ++ ts.tv_nsec = 0; ++ if (clock_settime(CLOCK_REALTIME, &ts) < 0) + bb_perror_msg_and_die("can't set time of day"); ++ } + } + + if (flags != 1) /* not lone -s */ diff -r 22f2b8a2ea08 -r e92a5b32321f cacerts/receipt --- a/cacerts/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/cacerts/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="cacerts" -VERSION="20240625" +VERSION="20250709" CATEGORY="security" SHORT_DESC="Certificate Authority Certificates." MAINTAINER="al.bobylev@gmail.com" diff -r 22f2b8a2ea08 -r e92a5b32321f dropbear-pam/receipt --- a/dropbear-pam/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/dropbear-pam/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="dropbear-pam" -VERSION="2022.83" +VERSION="2025.88" CATEGORY="security" SHORT_DESC="Light SSH client and server using PAM." MAINTAINER="pascal.bellard@slitaz.org" diff -r 22f2b8a2ea08 -r e92a5b32321f dropbear/receipt --- a/dropbear/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/dropbear/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="dropbear" -VERSION="2022.83" +VERSION="2025.88" CATEGORY="security" SHORT_DESC="Lightweight SSH2 server and client" MAINTAINER="pascal.bellard@slitaz.org" @@ -38,7 +38,7 @@ compile_rules() { # CVE-2023-48795 - patch -p1 < $stuff/CVE-2023-48795.patch + #patch -p1 < $stuff/CVE-2023-48795.patch local i local DROPBEARS @@ -47,8 +47,8 @@ #define SFTPSERVER_PATH "/usr/sbin/sftp-server" #define DROPBEAR_X11FWD 1 EOT - sed -i 's|"SSH-2.0-dropbear_" DROPBEAR_VERSION|"SSH-2.0-dropbear"|' sysoptions.h - sed -i 's|DROPBEAR_CHANNEL_PRIO_INTERACTIVE|DROPBEAR_PRIO_LOWDELAY|' svr-x11fwd.c + sed -i 's|"SSH-2.0-dropbear_" DROPBEAR_VERSION|"SSH-2.0-dropbear"|' src/sysoptions.h + sed -i 's|DROPBEAR_CHANNEL_PRIO_INTERACTIVE|DROPBEAR_PRIO_LOWDELAY|' src/svr-x11fwd.c sed -i 's|shell arch|shell uname -m|' libtommath/makefile_include.mk ./configure --prefix=/usr --without-pam $CONFIGURE_ARGS $CROSS_ARGS && make PROGRAMS="dropbear $DROPBEARS" MULTI=1 SCPPROGRESS=1 && @@ -74,12 +74,6 @@ for i in $DROPBEARS ssh; do ln -s ../sbin/dropbear $DESTDIR/usr/bin/$i || exit 1 done - install -d -m 755 $DESTDIR/usr/share/man/man1 && - install -m 644 $src/*.1 $DESTDIR/usr/share/man/man1 && - install -d -m 755 $DESTDIR/usr/share/man/man8 && - install -m 644 $src/*.8 $DESTDIR/usr/share/man/man8 && - install -d -m 755 $DESTDIR/usr/share/doc && - install -m 644 $src/[A-Z][A-Z]* $DESTDIR/usr/share/doc } # Rules to gen a SliTaz package suitable for Tazpkg. diff -r 22f2b8a2ea08 -r e92a5b32321f epson-inkjet-printer-escpr/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-inkjet-printer-escpr/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,45 @@ +# SliTaz package receipt. + +PACKAGE="epson-inkjet-printer-escpr" +VERSION="1.8.6" +CATEGORY="system-tools" +SHORT_DESC="Epson Inkjet Printer XP Series" +MAINTAINER="maintainer@slitaz.org" +LICENSE="LGPL" +WEB_SITE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX" +TARBALL="$PACKAGE-$VERSION-1.src.rpm" +WGET_URL="https://download3.ebz.epson.net/dsc/f/03/00/16/21/79/6d53e6ec3f8c1e55733eb7860e992a425883bf88/$TARBALL" + +DEPENDS="cups" +BUILD_DEPENDS="automake libtool cups-dev" + +HOST_ARCH="x86_64" + +# Rules to configure and make the package. +compile_rules() +{ + # Extract filters and ppds files + tar xf ${PACKAGE}-${VERSION}-1.tar.gz + + cd ${PACKAGE}-$VERSION + autoreconf -f -i + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + $CONFIGURE_ARGS && + make && + make install +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr/lib $fs/usr/share/ppd + + # Copy and compress ppd + cp -a $install/usr/share/ppd/$PACKAGE $fs/usr/share/ppd + gzip -9 $fs/usr/share/ppd/$PACKAGE/*.ppd + + cp -a $install/usr/lib/*so* $fs/usr/lib + cp -a $install/usr/lib/cups $fs/usr/lib +} diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,63 @@ +# SliTaz package receipt. + +PACKAGE="epson-iscan" +SOURCE="iscan" +VERSION="2.30.4" +CATEGORY="system-tools" +SHORT_DESC="EPSON Image Scan frontend for scanners and all-in-ones" +MAINTAINER="maintainer@slitaz.org" +LICENSE="GPL2 custon" +WEB_SITE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX" +TARBALL="${SOURCE}_${VERSION}-2.tar.gz" +WGET_URL="https://sourceforge.net/projects/fabiololix-os-archive/files/src/$TARBALL" + +DEPENDS="gtk+ sane-backends libltdl libpng libusb libxml2" +BUILD_DEPENDS="coreutils-file-summarize gtk+-dev libusb-dev \ +libtool sane-backends-dev" + +HOST_ARCH="x86_64" + +# Rules to configure and make the package. +compile_rules() +{ + # Patchs from archlinux + # see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=iscan + patch -p0 < $stuff/libpng15.patch + patch -p0 < $stuff/jpegstream.cc.patch + patch -p0 < $stuff/hain01commits2dip-obj.patch + patch -p0 < $stuff/iscan-${VERSION}.2-c99.patch + patch -p0 < $stuff/iscan-2.30.3_fix-sscanf-modifier-in-cfg-obj.patch + + # add fix for CXX ABI different than 1002 + ln -s libesmod-x86_64.c2.so non-free/libesmod-x86_64.so + + export CFLAGS="$CFLAGS -std=gnu89" + export LDFLAGS="$LDFLAGS -ldl -lpng16" + + ./configure \ + --prefix=/usr \ + --localstatedir=/var \ + --enable-dependency-reduction \ + --sysconfdir=/etc \ + --enable-frontend \ + --enable-jpeg \ + --enable-tiff \ + --enable-png \ + --disable-gimp \ + $CONFIGURE_ARGS && + make && + make install +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/etc/sane.d/dll.d $fs/usr/lib + + cp -a $src/backend/epkowa.conf $fs/etc/sane.d + cp -a $stuff/epkowa.conf $fs/etc/sane.d/dll.d + cp -a $install/usr/bin $fs/usr + cp -a $install/usr/sbin $fs/usr + cp -a $install/usr/lib/*so* $fs/usr/lib + cp -a $install/usr/lib/sane $fs/usr/lib +} diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/epkowa.conf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/epkowa.conf Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,1 @@ +epkowa diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/hain01commits2dip-obj.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/hain01commits2dip-obj.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,95 @@ +--- backend/dip-obj.c ++++ backend/dip-obj.c +@@ -556,43 +556,72 @@ + } + + /*! \todo Add support for 16 bit color values (#816). ++ Added the commits of https://github.com/hean01/iscan/commit/147edc66ceddb34b5e0c8745a08ce6c96e7e02b5 and https://github.com/hean01/iscan/commit/575468d83bb70d928f5893c4c4b4ce7faa15e3d5 to support 16bit color. + */ + void + dip_apply_color_profile (const void *self, const buffer *buf, + const double profile[9]) + { + SANE_Int i; +- SANE_Byte *r_buf, *g_buf, *b_buf; + double red, grn, blu; + +- SANE_Byte *data; + SANE_Int size; + + require (dip == self && buf && profile); +- require (8 == buf->ctx.depth); ++ require (buf->ctx.depth == 8 || buf->ctx.depth == 16); + + if (SANE_FRAME_RGB != buf->ctx.format) + return; + +- data = buf->ptr; +- size = buf->end - buf->ptr; ++ if (buf->ctx.depth == 8) ++ { ++ SANE_Byte *r_buf, *g_buf, *b_buf; ++ SANE_Byte *data; + +- for (i = 0; i < size / 3; i++) ++ data = buf->ptr; ++ size = buf->end - buf->ptr; ++ ++ for (i = 0; i < size / 3; i++) ++ { ++ r_buf = data; ++ g_buf = data + 1; ++ b_buf = data + 2; ++ ++ red = ++ profile[0] * (*r_buf) + profile[1] * (*g_buf) + profile[2] * (*b_buf); ++ grn = ++ profile[3] * (*r_buf) + profile[4] * (*g_buf) + profile[5] * (*b_buf); ++ blu = ++ profile[6] * (*r_buf) + profile[7] * (*g_buf) + profile[8] * (*b_buf); ++ ++ *data++ = clamp (red, 0, 255); ++ *data++ = clamp (grn, 0, 255); ++ *data++ = clamp (blu, 0, 255); ++ } ++ } ++ else if (buf->ctx.depth == 16) + { +- r_buf = data; +- g_buf = data + 1; +- b_buf = data + 2; +- +- red = +- profile[0] * (*r_buf) + profile[1] * (*g_buf) + profile[2] * (*b_buf); +- grn = +- profile[3] * (*r_buf) + profile[4] * (*g_buf) + profile[5] * (*b_buf); +- blu = +- profile[6] * (*r_buf) + profile[7] * (*g_buf) + profile[8] * (*b_buf); +- +- *data++ = clamp (red, 0, 255); +- *data++ = clamp (grn, 0, 255); +- *data++ = clamp (blu, 0, 255); ++ uint16_t *r_buf, *g_buf, *b_buf; ++ uint16_t *data; ++ ++ data = (uint16_t *)buf->ptr; ++ while(data < buf->end) ++ { ++ r_buf = data; ++ g_buf = data + 1; ++ b_buf = data + 2; ++ ++ red = ++ profile[0] * (*r_buf) + profile[1] * (*g_buf) + profile[2] * (*b_buf); ++ grn = ++ profile[3] * (*r_buf) + profile[4] * (*g_buf) + profile[5] * (*b_buf); ++ blu = ++ profile[6] * (*r_buf) + profile[7] * (*g_buf) + profile[8] * (*b_buf); ++ ++ *data++ = clamp (red, 0, 65535); ++ *data++ = clamp (grn, 0, 65535); ++ *data++ = clamp (blu, 0, 65535); ++ } + } + } + diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/iscan-2.30.3_fix-sscanf-modifier-in-cfg-obj.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/iscan-2.30.3_fix-sscanf-modifier-in-cfg-obj.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,20 @@ +--- backend/cfg-obj.c ++++ backend/cfg-obj.c +@@ -1026,7 +1026,7 @@ + char *vendor = NULL; + char *model = NULL; + +- sscanf (string, "%*s %as %as", &vendor, &model); ++ sscanf (string, "%*s %ms %ms", &vendor, &model); + + if (list_append (_cfg->seen[CFG_KEY_SCSI], info)) + { +@@ -1108,7 +1108,7 @@ + char *library = NULL; + char *firmware = NULL; + +- sscanf (string, "%*s %*s %x %x %as %as", ++ sscanf (string, "%*s %*s %x %x %ms %ms", + &vendor, &product, &library, &firmware); + + if (library && _cfg_have_interpreter (library, firmware) \ No newline at end of file diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/iscan-2.30.4.2-c99.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/iscan-2.30.4.2-c99.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,24 @@ +--- backend/defines.h 2021-01-04 08:13:48.995137756 -0000 ++++ backend/defines.h 2021-01-04 08:16:00.524563361 -0000 +@@ -31,6 +31,13 @@ + + + #ifndef __cplusplus ++ ++/* Use the C99 bool type if available ++ */ ++#ifdef HAVE_STDBOOL_H ++#include ++#else ++ + /*! A C++ Boolean type and corresponding keywords for our C code. + */ + typedef enum { +@@ -38,6 +45,7 @@ + true + } bool; + #endif ++#endif + + + /* Run-time contract validation. diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/jpegstream.cc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/jpegstream.cc.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,21 @@ +--- lib/jpegstream.cc.orig 2016-06-20 06:10:38.000000000 +0200 ++++ lib/jpegstream.cc 2016-07-10 18:45:40.511301054 +0200 +@@ -33,7 +33,7 @@ + + #include "jpegstream.hh" + +-#include ++// #include + #include + + namespace iscan +@@ -82,7 +82,8 @@ + // only that _bits != 8. + for (unsigned int i = 0; i < _h_sz; ++i) + { +- div_t index = div (i, 8 * sizeof (JSAMPLE)); ++ div_t index = div (static_cast(i), ++ static_cast(8 * sizeof (JSAMPLE))); + int offset = 8 * sizeof (JSAMPLE) - 1 - index.rem; + _scanline[i] = ((line[index.quot] & (1 << offset)) + ? 0 : ~0); diff -r 22f2b8a2ea08 -r e92a5b32321f epson-iscan/stuff/libpng15.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epson-iscan/stuff/libpng15.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,52 @@ +# +# Thanks to Fabio Castelli, ArchLinux: +# https://projects.archlinux.org/svntogit/community.git/tree/trunk/libpng15.patch?h=packages/iscan +# +--- lib/pngstream.cc 2011-12-01 02:30:53.000000000 +0100 ++++ lib/pngstream.cc 2012-02-06 03:06:22.000000000 +0100 +@@ -83,7 +83,12 @@ + #if HAVE_PNG_H + set_error_handler (_png, _info); + ++/* when not interlacing (ie, only one pass), number of rows is image height: _v_sz */ ++#if PNG_LIBPNG_VER > 10499 ++ if (!_footer && _v_sz == lib->get_current_row_number(_png)) ++#else + if (_header && !_footer && _png->num_rows == _png->flush_rows) ++#endif + { + lib->write_end (_png, _info); + _footer = true; +@@ -167,6 +172,9 @@ + funcsym (write_row); + funcsym (write_flush); + funcsym (write_end); ++#if PNG_LIBPNG_VER > 10499 ++ funcsym (get_current_row_number); ++#endif + + if (lib->access_version_number + && lib->create_write_struct +@@ -176,6 +184,9 @@ + && lib->set_IHDR + && lib->set_pHYs + && lib->set_invert_mono ++#if PNG_LIBPNG_VER > 10499 ++ && lib->get_current_row_number ++#endif + && lib->write_info + && lib->write_row + && lib->write_flush +--- lib/pngstream.hh 2011-12-01 02:30:53.000000000 +0100 ++++ lib/pngstream.hh 2012-02-06 03:09:09.000000000 +0100 +@@ -108,6 +108,10 @@ + png_structp); + fundecl (void, write_end, + png_structp, png_infop); ++#if PNG_LIBPNG_VER > 10499 ++ fundecl (png_uint_32, get_current_row_number, ++ png_structp); ++#endif + #endif /* HAVE_PNG_H */ + }; + static png_lib_handle *lib; diff -r 22f2b8a2ea08 -r e92a5b32321f gcc/receipt --- a/gcc/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/gcc/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -56,6 +56,11 @@ # Allow build gcc 6.3.0 from gcc > 6.3.0 patch -p1 < $stuff/gcc-6.3.0-ubsan.patch + # Patch libsanitizer to be build with glibc > 2.30 + # see https://bugs.gentoo.org/708346 + patch -p1 < $stuff/glibc-2.31-libsanitizer-1.patch + patch -p1 < $stuff/glibc-2.31-libsanitizer-2.patch + mkdir -p ../gcc-build && cd ../gcc-build # This is the default GCC and we want a native build to cross compile after. diff -r 22f2b8a2ea08 -r e92a5b32321f gcc/stuff/glibc-2.31-libsanitizer-1.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc/stuff/glibc-2.31-libsanitizer-1.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,37 @@ +From ce9568e9e9cf6094be30e748821421e703754ffc Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Fri, 8 Nov 2019 19:53:18 +0100 +Subject: [PATCH] backport: re PR sanitizer/92154 (new glibc breaks arm + bootstrap due to libsanitizer) + + Backported from mainline + 2019-10-22 Tamar Christina + + PR sanitizer/92154 + * sanitizer_common/sanitizer_platform_limits_posix.cc: + Cherry-pick compiler-rt revision r375220. + +From-SVN: r277981 +--- + libsanitizer/ChangeLog | 9 +++++++++ + .../sanitizer_common/sanitizer_platform_limits_posix.cc | 6 +++++- + 2 files changed, 14 insertions(+), 1 deletion(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +index 6cd4a5bac8b0..06a605ff4670 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -1156,8 +1156,12 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid); + CHECK_SIZE_AND_OFFSET(ipc_perm, gid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cuid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cgid); +-#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21) ++#if (!defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)) && \ ++ !defined(__arm__) + /* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */ ++/* On Arm glibc 2.31 and later provide a different mode field, this field is ++ never used by libsanitizer so we can simply ignore this assert for all glibc ++ versions. */ + CHECK_SIZE_AND_OFFSET(ipc_perm, mode); + #endif + diff -r 22f2b8a2ea08 -r e92a5b32321f gcc/stuff/glibc-2.31-libsanitizer-2.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc/stuff/glibc-2.31-libsanitizer-2.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,73 @@ +From 75003cdd23c310ec385344e8040d490e8dd6d2be Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Fri, 20 Dec 2019 17:58:35 +0100 +Subject: [PATCH] backport: re PR sanitizer/92154 (new glibc breaks arm + bootstrap due to libsanitizer) + + Backported from mainline + 2019-11-26 Jakub Jelinek + + PR sanitizer/92154 + * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry-pick + llvm-project revision 947f9692440836dcb8d88b74b69dd379d85974ce. + * sanitizer_common/sanitizer_platform_limits_posix.cc: Likewise. + +From-SVN: r279653 +--- + libsanitizer/ChangeLog | 10 ++++++++++ + .../sanitizer_platform_limits_posix.cc | 9 +++------ + .../sanitizer_platform_limits_posix.h | 15 +-------------- + 3 files changed, 14 insertions(+), 20 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +index 06a605ff4670..d823a12190c0 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -1156,12 +1156,9 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid); + CHECK_SIZE_AND_OFFSET(ipc_perm, gid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cuid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cgid); +-#if (!defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)) && \ +- !defined(__arm__) +-/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */ +-/* On Arm glibc 2.31 and later provide a different mode field, this field is +- never used by libsanitizer so we can simply ignore this assert for all glibc +- versions. */ ++#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31) ++/* glibc 2.30 and earlier provided 16-bit mode field instead of 32-bit ++ on many architectures. */ + CHECK_SIZE_AND_OFFSET(ipc_perm, mode); + #endif + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +index 73af92af1e8f..6a673a7c9959 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +@@ -211,26 +211,13 @@ namespace __sanitizer { + u64 __unused1; + u64 __unused2; + #elif defined(__sparc__) +-#if defined(__arch64__) + unsigned mode; +- unsigned short __pad1; +-#else +- unsigned short __pad1; +- unsigned short mode; + unsigned short __pad2; +-#endif + unsigned short __seq; + unsigned long long __unused1; + unsigned long long __unused2; +-#elif defined(__mips__) || defined(__aarch64__) || defined(__s390x__) +- unsigned int mode; +- unsigned short __seq; +- unsigned short __pad1; +- unsigned long __unused1; +- unsigned long __unused2; + #else +- unsigned short mode; +- unsigned short __pad1; ++ unsigned int mode; + unsigned short __seq; + unsigned short __pad2; + #if defined(__x86_64__) && !defined(_LP64) diff -r 22f2b8a2ea08 -r e92a5b32321f glibc-base/receipt --- a/glibc-base/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc-base/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="glibc-base" -VERSION="2.28" +VERSION="2.31" CATEGORY="base-system" SHORT_DESC="GNU libc minimal libraries and UTF-8 support for SliTaz." WEB_SITE="http://www.gnu.org/software/libc/" diff -r 22f2b8a2ea08 -r e92a5b32321f glibc-base/stuff/i486-files.list --- a/glibc-base/stuff/i486-files.list Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc-base/stuff/i486-files.list Tue Jul 15 20:40:17 2025 +0000 @@ -1,18 +1,18 @@ -/lib/libutil-2.28.so -/lib/libnss_dns-2.28.so -/lib/libnsl-2.28.so -/lib/libanl-2.28.so -/lib/libm-2.28.so -/lib/libpthread-2.28.so +/lib/libutil-2.31.so +/lib/libnss_dns-2.31.so +/lib/libnsl-2.31.so +/lib/libanl-2.31.so +/lib/libm-2.31.so +/lib/libpthread-2.31.so /lib/libthread_db-1.0.so -/lib/libnss_compat-2.28.so -/lib/libc-2.28.so -/lib/librt-2.28.so -/lib/libcrypt-2.28.so -/lib/ld-2.28.so -/lib/libresolv-2.28.so -/lib/libnss_files-2.28.so -/lib/libdl-2.28.so +/lib/libnss_compat-2.31.so +/lib/libc-2.31.so +/lib/librt-2.31.so +/lib/libcrypt-2.31.so +/lib/ld-2.31.so +/lib/libresolv-2.31.so +/lib/libnss_files-2.31.so +/lib/libdl-2.31.so /usr/lib/gconv/UNICODE.so /usr/lib/gconv/gconv-modules diff -r 22f2b8a2ea08 -r e92a5b32321f glibc-base/stuff/wanted-files.list --- a/glibc-base/stuff/wanted-files.list Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc-base/stuff/wanted-files.list Tue Jul 15 20:40:17 2025 +0000 @@ -1,19 +1,19 @@ -/lib/libutil-2.28.so -/lib/libnss_dns-2.28.so -/lib/libnsl-2.28.so -/lib/libanl-2.28.so -/lib/libm-2.28.so -/lib/libmvec-2.28.so -/lib/libpthread-2.28.so +/lib/libutil-2.31.so +/lib/libnss_dns-2.31.so +/lib/libnsl-2.31.so +/lib/libanl-2.31.so +/lib/libm-2.31.so +/lib/libmvec-2.31.so +/lib/libpthread-2.31.so /lib/libthread_db-1.0.so -/lib/libnss_compat-2.28.so -/lib/libc-2.28.so -/lib/librt-2.28.so -/lib/libcrypt-2.28.so -/lib/ld-2.28.so -/lib/libresolv-2.28.so -/lib/libnss_files-2.28.so -/lib/libdl-2.28.so +/lib/libnss_compat-2.31.so +/lib/libc-2.31.so +/lib/librt-2.31.so +/lib/libcrypt-2.31.so +/lib/ld-2.31.so +/lib/libresolv-2.31.so +/lib/libnss_files-2.31.so +/lib/libdl-2.31.so /usr/lib/gconv/UNICODE.so /usr/lib/gconv/gconv-modules diff -r 22f2b8a2ea08 -r e92a5b32321f glibc-dev/receipt --- a/glibc-dev/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc-dev/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="glibc-dev" -VERSION="2.28" +VERSION="2.31" CATEGORY="development" SHORT_DESC="The GNU C libraries devel files (Part of SliTaz toolchain)." MAINTAINER="pankso@slitaz.org" diff -r 22f2b8a2ea08 -r e92a5b32321f glibc-locale/receipt --- a/glibc-locale/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc-locale/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="glibc-locale" -VERSION="2.28" +VERSION="2.31" CATEGORY="system-tools" SHORT_DESC="The GNU C libraries locale files and utilities (see also locale-*)." MAINTAINER="pankso@slitaz.org" diff -r 22f2b8a2ea08 -r e92a5b32321f glibc/receipt --- a/glibc/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="glibc" -VERSION="2.28" +VERSION="2.31" CATEGORY="meta" SHORT_DESC="The GNU C libraries. This package is used to compile the libc." MAINTAINER="pankso@slitaz.org" @@ -134,11 +134,13 @@ # see https://sourceware.org/git/?p=glibc.git;a=blob;f=advisories/GLIBC-SA-2024-0004;h=23a8115d;hb=HEAD # https://sourceware.org/git/?p=glibc.git;a=patch;h=682ad4c8 (adjust little for 2.28) patch -p1 < $stuff/glibc-2.28-CVE-2024-2961.patch + #patch -p1 < $stuff/glibc-2.32-CVE-2024-2961.patch - # Patch for CVE-2025-4802, adjust for backport to 2.28 + # Patch for CVE-2025-4802, adjust for backport to 2.28 and 2.31 # see https://www.cve.org/CVERecord?id=CVE-2025-4802 # see https://sourceware.org/cgit/glibc/commit/?id=1e18586c - patch -p1 -i $stuff/CVE-2025-4802.patch + patch -p1 -i $stuff/glibc-2.28-CVE-2025-4802.patch + #patch -p1 -i $stuff/CVE-2025-4802.patch # Update for binutils 2.29, see https://sourceware.org/bugzilla/show_bug.cgi?id=21661 sed -i 's|obstack_compat;|obstack_compat __attribute__ ((nocommon));|' malloc/obstack.c @@ -158,7 +160,7 @@ mkdir -p $WOK/$PACKAGE/install/etc touch $WOK/$PACKAGE/install/etc/ld.so.conf mkdir ../glibc-build && cd ../glibc-build - + # Read the INSTALL file in glibc. Also Glibc dont build with -Os flag. # --enale-kernel use latest SliTaz Kernel version. From Glibc INSTALL: # "The higher the VERSION number is, the less compatibility code is diff -r 22f2b8a2ea08 -r e92a5b32321f glibc/stuff/CVE-2025-4802.patch --- a/glibc/stuff/CVE-2025-4802.patch Sun Jul 06 15:33:46 2025 +0000 +++ b/glibc/stuff/CVE-2025-4802.patch Tue Jul 15 20:40:17 2025 +0000 @@ -1,4 +1,4 @@ -From 5451fa962cd0a90a0e2ec1d8910a559ace02bba0 Mon Sep 17 00:00:00 2001 +From bff3b0f16c991b825016afee53a85b4d2b4f6b72 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Mon, 6 Nov 2023 17:25:49 -0300 Subject: elf: Ignore LD_LIBRARY_PATH and debug env var for setuid for static @@ -7,44 +7,52 @@ Checked on x86_64-linux-gnu. Reviewed-by: Siddhesh Poyarekar -Adjust for backport to glibc 2.28 + +(cherry picked from commit 5451fa962cd0a90a0e2ec1d8910a559ace02bba0) + +Changes: + + git/elf/dl-support.c + (missing commit 55f41ef8de4a4d0c5762d78659e11202d3c765d4 + ("elf: Remove LD_PROFILE for static binaries"), + missing removal of tunables support) --- - elf/dl-support.c | 32 ++++++++++++++++---------------- - 1 file changed, 16 insertions(+), 16 deletions(-) + elf/dl-support.c | 45 +++++++++++++++++++++------------------------ + 1 file changed, 21 insertions(+), 24 deletions(-) diff --git a/elf/dl-support.c b/elf/dl-support.c -index 31a608df87..837fa1c836 100644 +index 09079c124d..1963f8a28a 100644 --- a/elf/dl-support.c +++ b/elf/dl-support.c -@@ -317,12 +317,34 @@ - if (HP_SMALL_TIMING_AVAIL) - HP_TIMING_NOW (_dl_cpuclock_offset); +@@ -272,8 +272,6 @@ _dl_non_dynamic_init (void) + _dl_main_map.l_phdr = GL(dl_phdr); + _dl_main_map.l_phnum = GL(dl_phnum); - _dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1; - /* Set up the data structures for the system-supplied DSO early, so they can influence _dl_init_paths. */ setup_vdso (NULL, NULL); +@@ -281,6 +279,27 @@ _dl_non_dynamic_init (void) + /* With vDSO setup we can initialize the function pointers. */ + setup_vdso_pointers (); + if (__libc_enable_secure) + { + static const char unsecure_envvars[] = -+ UNSECURE_ENVVARS -+#ifdef EXTRA_UNSECURE_ENVVARS -+ EXTRA_UNSECURE_ENVVARS -+#endif -+ ; ++ UNSECURE_ENVVARS ++ ; + const char *cp = unsecure_envvars; + + while (cp < unsecure_envvars + sizeof (unsecure_envvars)) -+ { -+ __unsetenv (cp); -+ cp = (const char *) __rawmemchr (cp, '\0') + 1; -+ } ++ { ++ __unsetenv (cp); ++ cp = strchr (cp, '\0') + 1; ++ } + +#if !HAVE_TUNABLES + if (__access ("/etc/suid-debug", F_OK) != 0) -+ __unsetenv ("MALLOC_CHECK_"); ++ __unsetenv ("MALLOC_CHECK_"); +#endif + } + @@ -52,36 +60,56 @@ + /* Initialize the data structures for the search paths for shared objects. */ - _dl_init_paths (getenv ("LD_LIBRARY_PATH")); -@@ -340,28 +362,6 @@ - if (_dl_profile_output == NULL || _dl_profile_output[0] == '\0') - _dl_profile_output - = &"/var/tmp\0/var/profile"[__libc_enable_secure ? 9 : 0]; -- -- if (__libc_enable_secure) -- { -- static const char unsecure_envvars[] = -- UNSECURE_ENVVARS --#ifdef EXTRA_UNSECURE_ENVVARS -- EXTRA_UNSECURE_ENVVARS --#endif -- ; -- const char *cp = unsecure_envvars; -- -- while (cp < unsecure_envvars + sizeof (unsecure_envvars)) -- { -- __unsetenv (cp); -- cp = (const char *) __rawmemchr (cp, '\0') + 1; -- } -- --#if !HAVE_TUNABLES -- if (__access ("/etc/suid-debug", F_OK) != 0) -- __unsetenv ("MALLOC_CHECK_"); --#endif -- } + _dl_init_paths (getenv ("LD_LIBRARY_PATH"), "LD_LIBRARY_PATH", +-- +cgit + +From 08aea7712d1470649537c8d2d17089ea40d478e5 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Mon, 23 Dec 2024 13:57:55 +0100 +Subject: support: Add support_record_failure_barrier + +This can be used to stop execution after a TEST_COMPARE_BLOB +failure, for example. + +(cherry picked from commit d0b8aa6de4529231fadfe604ac2c434e559c2d9e) +--- + support/check.h | 3 +++ + support/support_record_failure.c | 10 ++++++++++ + 2 files changed, 13 insertions(+) + +diff --git a/support/check.h b/support/check.h +index 43f4208a0a..dac6f04b56 100644 +--- a/support/check.h ++++ b/support/check.h +@@ -207,6 +207,9 @@ void support_record_failure_reset (void); + failures or not. */ + int support_record_failure_is_failed (void); - #ifdef DL_PLATFORM_INIT - DL_PLATFORM_INIT; ++/* Terminate the process if any failures have been encountered so far. */ ++void support_record_failure_barrier (void); ++ + __END_DECLS + + #endif /* SUPPORT_CHECK_H */ +diff --git a/support/support_record_failure.c b/support/support_record_failure.c +index 7e57fe97fb..b00387ff80 100644 +--- a/support/support_record_failure.c ++++ b/support/support_record_failure.c +@@ -112,3 +112,13 @@ support_record_failure_is_failed (void) + synchronization for reliable test error reporting anyway. */ + return __atomic_load_n (&state->failed, __ATOMIC_RELAXED); + } ++ ++void ++support_record_failure_barrier (void) ++{ ++ if (__atomic_load_n (&state->failed, __ATOMIC_RELAXED)) ++ { ++ puts ("error: exiting due to previous errors"); ++ exit (1); ++ } ++} +-- +cgit --- -cgit diff -r 22f2b8a2ea08 -r e92a5b32321f glibc/stuff/glibc-2.28-CVE-2025-4802.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/glibc/stuff/glibc-2.28-CVE-2025-4802.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,87 @@ +From 5451fa962cd0a90a0e2ec1d8910a559ace02bba0 Mon Sep 17 00:00:00 2001 +From: Adhemerval Zanella +Date: Mon, 6 Nov 2023 17:25:49 -0300 +Subject: elf: Ignore LD_LIBRARY_PATH and debug env var for setuid for static + +It mimics the ld.so behavior. + +Checked on x86_64-linux-gnu. +Reviewed-by: Siddhesh Poyarekar +Adjust for backport to glibc 2.28 +--- + elf/dl-support.c | 32 ++++++++++++++++---------------- + 1 file changed, 16 insertions(+), 16 deletions(-) + +diff --git a/elf/dl-support.c b/elf/dl-support.c +index 31a608df87..837fa1c836 100644 +--- a/elf/dl-support.c ++++ b/elf/dl-support.c +@@ -317,12 +317,34 @@ + if (HP_SMALL_TIMING_AVAIL) + HP_TIMING_NOW (_dl_cpuclock_offset); + +- _dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1; +- + /* Set up the data structures for the system-supplied DSO early, + so they can influence _dl_init_paths. */ + setup_vdso (NULL, NULL); + ++ if (__libc_enable_secure) ++ { ++ static const char unsecure_envvars[] = ++ UNSECURE_ENVVARS ++#ifdef EXTRA_UNSECURE_ENVVARS ++ EXTRA_UNSECURE_ENVVARS ++#endif ++ ; ++ const char *cp = unsecure_envvars; ++ ++ while (cp < unsecure_envvars + sizeof (unsecure_envvars)) ++ { ++ __unsetenv (cp); ++ cp = (const char *) __rawmemchr (cp, '\0') + 1; ++ } ++ ++#if !HAVE_TUNABLES ++ if (__access ("/etc/suid-debug", F_OK) != 0) ++ __unsetenv ("MALLOC_CHECK_"); ++#endif ++ } ++ ++ _dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1; ++ + /* Initialize the data structures for the search paths for shared + objects. */ + _dl_init_paths (getenv ("LD_LIBRARY_PATH")); +@@ -340,28 +362,6 @@ + if (_dl_profile_output == NULL || _dl_profile_output[0] == '\0') + _dl_profile_output + = &"/var/tmp\0/var/profile"[__libc_enable_secure ? 9 : 0]; +- +- if (__libc_enable_secure) +- { +- static const char unsecure_envvars[] = +- UNSECURE_ENVVARS +-#ifdef EXTRA_UNSECURE_ENVVARS +- EXTRA_UNSECURE_ENVVARS +-#endif +- ; +- const char *cp = unsecure_envvars; +- +- while (cp < unsecure_envvars + sizeof (unsecure_envvars)) +- { +- __unsetenv (cp); +- cp = (const char *) __rawmemchr (cp, '\0') + 1; +- } +- +-#if !HAVE_TUNABLES +- if (__access ("/etc/suid-debug", F_OK) != 0) +- __unsetenv ("MALLOC_CHECK_"); +-#endif +- } + + #ifdef DL_PLATFORM_INIT + DL_PLATFORM_INIT; + +-- +cgit diff -r 22f2b8a2ea08 -r e92a5b32321f irda-utils/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/irda-utils/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,51 @@ +# SliTaz package receipt. + +PACKAGE="irda-utils" +VERSION="0.9.18" +CATEGORY="system-tools" +SHORT_DESC="Utilities for infrared communication between devices" +MAINTAINER="maintainer@slitaz.org" +LICENSE="GPL" +TARBALL="$PACKAGE-$VERSION.tar.gz" +WEB_SITE="http://irda.sourceforge.net" +WGET_URL="$SF_MIRROR/irda/$TARBALL" +HOST_ARCH="i486 x86_64" + +DEPENDS="glibc-base" +BUILD_DEPENDS="pciutils-dev" + +# Rules to configure and make the package. +compile_rules() +{ + export CFLAGS="$CFLAGS -std=gnu89 -fno-strict-aliasing" + export CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" + + # Fix header locations / paths + # see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=irda-utils + sed -e 's|asm/io.h|sys/io.h|' -i \ + findchip/winbond.c findchip/smc.c \ + findchip/nsc.c pcmcia/ircard_cs.c + + sed -i -e 's|inline ||g' irdadump/*.c + + sed -e 's|$(PREFIX)/usr/man|$(ROOT)/usr/share/man|' -i man/Makefile + sed -e 's|/usr/sbin/|$(ROOT)/usr/sbin|' -i irnetd/Makefile + + # Patch for new kernel + # see https://bugs.gentoo.org/692428 + patch -p1 < $stuff/irda-utils-SIOCGSTAMP.patch + + # wk for install folder + mkdir $install/usr/bin $install/usr/sbin -p + + make ROOT=$install DIRS="irdadump irattach irdaping irnetd psion findchip smcinit" + make ROOT=$install install +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr + cp -a $install/usr/bin $fs/usr + cp -a $install/usr/sbin $fs/usr +} diff -r 22f2b8a2ea08 -r e92a5b32321f irda-utils/stuff/irda-utils-SIOCGSTAMP.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/irda-utils/stuff/irda-utils-SIOCGSTAMP.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,11 @@ +https://bugs.gentoo.org/692428 +--- a/irdadump/irdadump.c ++++ b/irdadump/irdadump.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include /* SIOCGSTAMP */ + + #include + #include diff -r 22f2b8a2ea08 -r e92a5b32321f libgusb-dev/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libgusb-dev/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,25 @@ +# SliTaz package receipt. + +PACKAGE="libgusb-dev" +VERSION="0.3.0" +CATEGORY="development" +SHORT_DESC="GObject wrapper for libusb1 dev files." +MAINTAINER="shann@slitaz.org" +LICENSE="LGPL2.1" +WEB_SITE="https://github.com/hughsie/libgusb" +WANTED="libgusb" + +DEPENDS="libgusb" + +HOST_ARCH="i486 x86_64" + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr/lib + cp -a $install/usr/include $fs/usr + cp -a $install/usr/lib/pkgconfig $fs/usr/lib + cp -a $install/usr/lib/girepository-1.0 $fs/usr/lib + cp -a $install/usr/share/gir-1.0 $fs/usr/share + cp -a $install/usr/share/vala $fs/usr/share +} diff -r 22f2b8a2ea08 -r e92a5b32321f libgusb/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libgusb/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,34 @@ +# SliTaz package receipt. + +PACKAGE="libgusb" +VERSION="0.3.0" +CATEGORY="libdevel" +SHORT_DESC="GObject wrapper for libusb1" +MAINTAINER="shann@slitaz.org" +LICENSE="LGPL2.1" +WEB_SITE="https://github.com/hughsie/libgusb" + +TARBALL="$PACKAGE-$VERSION.tar.xz" +WGET_URL="https://people.freedesktop.org/~hughsient/releases/$TARBALL" + +DEPENDS="glib libusb" +BUILD_DEPENDS="meson ninja glib-dev libusb-dev gobject-introspection-dev vala" + +HOST_ARCH="i486 x86_64" + +# Rules to configure and make the package. +compile_rules() { + meson _build \ + --prefix=/usr \ + -Ddocs=false && + ninja -C _build && + ninja -C _build install +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr/lib + cp -a $install/usr/bin $fs/usr + cp -a $install/usr/lib/*.so* $fs/usr/lib +} diff -r 22f2b8a2ea08 -r e92a5b32321f make/receipt --- a/make/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/make/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -12,7 +12,7 @@ WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL" DEPENDS="glibc-base" -BUILD_DEPENDS="" +BUILD_DEPENDS="automake" HOST_ARCH="i486 arm x86_64" @@ -26,6 +26,10 @@ # Rules to configure and make the package. compile_rules() { + #patch -p1 < $stuff/make-4.2.1.patch + #patch -p1 < $stuff/make-glob.patch + #autoreconf -vif + ./configure $CONFIGURE_ARGS && make -j 1 && make install diff -r 22f2b8a2ea08 -r e92a5b32321f pkg-config/receipt --- a/pkg-config/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/pkg-config/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -30,8 +30,13 @@ # Rules to configure and make the package. compile_rules() { + # Fix issue happen sometime + # see https://github.com/msys2/MINGW-packages/pull/1686 + patch -p1 < $stuff/1031-fix-glib-gettext-m4-error.patch + autoreconf sed -i 's/\$(LN).*pkg-config\$(EXEEXT) \$(host_tool)/echo \1/' Makefile* + case "$ARCH" in arm) ./configure \ diff -r 22f2b8a2ea08 -r e92a5b32321f pkg-config/stuff/1031-fix-glib-gettext-m4-error.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pkg-config/stuff/1031-fix-glib-gettext-m4-error.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,13 @@ +--- a/glib/m4macros/glib-gettext.m4 2016-08-30 17:11:06.937292400 +0200 ++++ b/glib/m4macros/glib-gettext.m4 2016-08-30 17:11:28.137412200 +0200 +@@ -36,8 +36,8 @@ + dnl try to pull in the installed version of these macros + dnl when running aclocal in the glib directory. + dnl +-m4_copy([AC_DEFUN],[glib_DEFUN]) +-m4_copy([AC_REQUIRE],[glib_REQUIRE]) ++m4_copy_force([AC_DEFUN],[glib_DEFUN]) ++m4_copy_force([AC_REQUIRE],[glib_REQUIRE]) + dnl + dnl At the end, if we're not within glib, we'll define the public + dnl definitions in terms of our private definitions. diff -r 22f2b8a2ea08 -r e92a5b32321f simple-scan/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/simple-scan/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,45 @@ +# SliTaz package receipt. + +PACKAGE="simple-scan" +VERSION="3.34.1" +CATEGORY="office" +SHORT_DESC="Simple scanning utility." +MAINTAINER="shann@slitaz.org" +LICENSE="GPL3" +TARBALL="$PACKAGE-$VERSION.tar.gz" +WEB_SITE="https://apps.gnome.org/SimpleScan/" +WGET_URL="https://gitlab.gnome.org/GNOME/$PACKAGE/-/archive/$VERSION/$TARBALL" + +DEPENDS="gtk+3 sane-backends libgusb adwaita-icon-theme librsvg gsettings-desktop-schemas" +BUILD_DEPENDS="meson cairo-dev dbus-glib-dev gettext gtk+3-dev gdk-pixbuf-dev glib-dev \ +itstool libgusb-dev libusb-dev pango-dev vala xz sane-backends-dev" + +HOST_ARCH="i486 x86_64" + +current_version() +{ + wget -O - "${WGET_URL%/arch*}/tags?sort=updated_desc" 2>/dev/null | \ + sed '/tar.gz/!d;s|.*/simple-scan-\(.*\).tar.gz".*|\1|;q' +} + +# Rules to configure and make the package. +compile_rules() +{ + # Fix build with meson > 0.60 + # see https://gitlab.gnome.org/GNOME/simple-scan/-/issues/284 + patch -p1 < $stuff/fix_meson.patch + + meson _build \ + --prefix=/usr && + ninja -C _build && + ninja -C _build install +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr/share/glib-2.0 + cp -a $install/usr/bin $fs/usr + cp -a $install/usr/share/glib-2.0 $fs/usr/share + cp -a $install/usr/share/locale $fs/usr/share +} diff -r 22f2b8a2ea08 -r e92a5b32321f simple-scan/stuff/fix_meson.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/simple-scan/stuff/fix_meson.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,37 @@ +From da6626debe00be1a0660f30cf2bf7629186c01d5 Mon Sep 17 00:00:00 2001 +From: r-value +Date: Tue, 16 Nov 2021 02:43:11 +0800 +Subject: [PATCH] Remove incorrect i18n.merge_file argument + +The positional argument was being silently ignored until meson 0.60.0 where +it fails with "ERROR: Function does not take positional arguments". +--- + data/meson.build | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index 2b5a0ee3..cf6e4ae1 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -8,16 +8,14 @@ install_data ('org.gnome.SimpleScan.gschema.xml', + install_dir: join_paths (datadir, 'glib-2.0', 'schemas')) + meson.add_install_script ('meson_compile_gschema.py') + +-i18n.merge_file ('desktop-file', +- input: 'simple-scan.desktop.in', ++i18n.merge_file (input: 'simple-scan.desktop.in', + output: 'simple-scan.desktop', + install: true, + install_dir: join_paths (datadir, 'applications'), + po_dir: '../po', + type: 'desktop') + +-i18n.merge_file ('appdata-file', +- input: 'simple-scan.appdata.xml.in', ++i18n.merge_file (input: 'simple-scan.appdata.xml.in', + output: 'simple-scan.appdata.xml', + install: true, + install_dir: join_paths (datadir, 'metainfo'), +-- +GitLab + diff -r 22f2b8a2ea08 -r e92a5b32321f simple-scan/stuff/fix_vala.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/simple-scan/stuff/fix_vala.patch Tue Jul 15 20:40:17 2025 +0000 @@ -0,0 +1,22 @@ +diff --git a/src/page.vala b/src/page.vala +index 582aef8eaeb95b4e6fef783babb8df22c77807a6..c859df91f5bf87e4b834410c2d33a73389bd8ac2 100644 +--- a/src/page.vala ++++ b/src/page.vala +@@ -86,7 +86,7 @@ public class Page + public bool is_color { get { return n_channels > 1; } } + + /* Rotation of scanned data */ +- private ScanDirection scan_direction_; ++ private ScanDirection scan_direction_ = ScanDirection.TOP_TO_BOTTOM; + public ScanDirection scan_direction + { + get { return scan_direction_; } +@@ -142,8 +142,6 @@ public class Page + if (has_crop) + crop_changed (); + } +- +- default = ScanDirection.TOP_TO_BOTTOM; + } + + /* True if the page has a crop set */ diff -r 22f2b8a2ea08 -r e92a5b32321f slitaz-configs/receipt --- a/slitaz-configs/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/slitaz-configs/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -16,6 +16,8 @@ BUILD_DEPENDS="" # see below SIBLINGS="slitaz-configs-base" +CONFIG_FILES="/etc/xdg/openbox/menu.xml" + # Special case for ARM since some (most) config files are in slitaz-arm repo. # i486/arm common configs are provided by slitaz-configs-base. case "$SLITAZ_ARCH" in @@ -80,6 +82,12 @@ chown -R root.root $fs } +pre_install() +{ + # Save previous menu.xml symlink + cp -a /etc/xdg/openbox/menu.xml /etc/xdg/openbox/menu.xml.save +} + post_install() { case "$SLITAZ_ARCH" in @@ -92,4 +100,7 @@ "$1/etc/slim.conf" fi ;; esac + + # Restore previous menu.xml symlink + mv /etc/xdg/openbox/menu.xml.save /etc/xdg/openbox/menu.xml } diff -r 22f2b8a2ea08 -r e92a5b32321f slitaz-tools-boxes/receipt --- a/slitaz-tools-boxes/receipt Sun Jul 06 15:33:46 2025 +0000 +++ b/slitaz-tools-boxes/receipt Tue Jul 15 20:40:17 2025 +0000 @@ -14,7 +14,7 @@ GENERIC_MENUS="no" HOST_ARCH="i486 arm x86_64" -DEPENDS="slitaz-tools gettext-base yad xorg-xhost" +DEPENDS="slitaz-tools gettext-base yad-gtk2 xorg-xhost" BUILD_DEPENDS="tzdata" SIBLINGS="slitaz-tools tazdrop"