summaryrefslogtreecommitdiffstats
path: root/source/ap
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap')
-rwxr-xr-xsource/ap/amp/amp.SlackBuild2
-rwxr-xr-xsource/ap/bpe/bpe.SlackBuild7
-rwxr-xr-xsource/ap/cdrtools/cdrtools.SlackBuild3
-rwxr-xr-xsource/ap/cups-browsed/cups-browsed.SlackBuild17
-rwxr-xr-xsource/ap/cups-filters/cups-filters.SlackBuild11
-rwxr-xr-xsource/ap/ghostscript/ghostscript.SlackBuild14
-rw-r--r--source/ap/ghostscript/ghostscript.url2
-rwxr-xr-xsource/ap/gutenprint/gutenprint.SlackBuild4
-rw-r--r--source/ap/hplip/hplip-covscan.patch615
-rw-r--r--source/ap/hplip/hplip-hpaio-gcc14.patch114
-rw-r--r--source/ap/hplip/hplip-pcardext-disable.patch16
-rw-r--r--source/ap/hplip/hplip-pserror-c99.patch17
-rw-r--r--source/ap/hplip/hplip-scan-hpaio-include.patch19
-rw-r--r--source/ap/hplip/hplip-scan-orblite-c99.patch21
-rwxr-xr-xsource/ap/hplip/hplip.SlackBuild16
-rwxr-xr-xsource/ap/inxi/fetch-inxi.sh2
-rwxr-xr-xsource/ap/inxi/inxi.SlackBuild11
-rwxr-xr-xsource/ap/ksh93/ksh93.SlackBuild17
-rwxr-xr-xsource/ap/libx86/libx86.SlackBuild3
-rw-r--r--source/ap/lxc/lxc-slackware.in17
-rwxr-xr-xsource/ap/lxc/lxc.SlackBuild89
-rwxr-xr-xsource/ap/man-db/man-db.SlackBuild19
-rw-r--r--source/ap/man-db/man-db.cron2
-rwxr-xr-xsource/ap/man-pages/man-pages.SlackBuild22
-rwxr-xr-xsource/ap/mariadb/mariadb.SlackBuild19
-rwxr-xr-xsource/ap/mc/mc.SlackBuild10
-rw-r--r--source/ap/moc/0011-ffmpeg-7.0.patch37
-rwxr-xr-xsource/ap/moc/moc.SlackBuild20
-rwxr-xr-xsource/ap/mpg123/mpg123.SlackBuild14
-rwxr-xr-xsource/ap/nano/nano.SlackBuild11
-rwxr-xr-xsource/ap/nvme-cli/nvme-cli.SlackBuild17
-rwxr-xr-xsource/ap/rpm/rpm.SlackBuild8
-rwxr-xr-xsource/ap/rzip/rzip.SlackBuild3
-rwxr-xr-xsource/ap/sc-im/sc-im.SlackBuild22
-rwxr-xr-xsource/ap/sc/sc.SlackBuild1
-rw-r--r--source/ap/sc/sc.gcc14.diff11
-rwxr-xr-xsource/ap/scdoc/scdoc.SlackBuild110
-rw-r--r--source/ap/scdoc/scdoc.url2
-rw-r--r--source/ap/scdoc/slack-desc19
-rw-r--r--source/ap/screen/26source_encoding.patch353
-rw-r--r--source/ap/screen/45suppress_remap.patch13
-rw-r--r--source/ap/screen/52fix_screen_utf8_nfd.patch41
-rwxr-xr-xsource/ap/screen/screen.SlackBuild19
-rwxr-xr-xsource/ap/seejpeg/seejpeg.SlackBuild3
-rw-r--r--source/ap/slackpkg/files/core-functions.sh21
-rwxr-xr-xsource/ap/slackpkg/slackpkg.SlackBuild2
-rwxr-xr-xsource/ap/sox/sox.SlackBuild3
-rwxr-xr-xsource/ap/sqlite/sqlite.SlackBuild11
-rw-r--r--source/ap/stow/slack-desc19
-rwxr-xr-xsource/ap/stow/stow.SlackBuild145
-rwxr-xr-xsource/ap/sudo/sudo.SlackBuild14
-rwxr-xr-xsource/ap/texinfo/texinfo.SlackBuild17
-rwxr-xr-xsource/ap/vim/vim-gvim.SlackBuild4
-rwxr-xr-xsource/ap/vim/vim.SlackBuild4
-rwxr-xr-xsource/ap/vorbis-tools/vorbis-tools.SlackBuild3
-rwxr-xr-xsource/ap/xfsdump/xfsdump.SlackBuild4
-rw-r--r--source/ap/zsh/0007-zsh-configure-c99.patch44
-rwxr-xr-xsource/ap/zsh/zsh.SlackBuild2
58 files changed, 1427 insertions, 659 deletions
diff --git a/source/ap/amp/amp.SlackBuild b/source/ap/amp/amp.SlackBuild
index 1f955b2a9..85ee4749d 100755
--- a/source/ap/amp/amp.SlackBuild
+++ b/source/ap/amp/amp.SlackBuild
@@ -58,7 +58,7 @@ zcat $CWD/amp-gcc34.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exi
# Avoid crashes caused by using agressive optimization with newer compilers:
zcat $CWD/amp.do.not.overoptimize.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
chown -R root:root .
-./configure --prefix=/usr $ARCH-slackware-linux || exit 1
+CFLAGS="-Wno-error=implicit-int" ./configure --prefix=/usr $ARCH-slackware-linux || exit 1
make || exit 1
mkdir -p $PKG/usr/doc $PKG/usr/bin $PKG/usr/man/man1
strip amp
diff --git a/source/ap/bpe/bpe.SlackBuild b/source/ap/bpe/bpe.SlackBuild
index f353c1430..3ed4529e1 100755
--- a/source/ap/bpe/bpe.SlackBuild
+++ b/source/ap/bpe/bpe.SlackBuild
@@ -54,6 +54,9 @@ else
SLKCFLAGS="-O2"
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=implicit-int"
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-bpe
@@ -71,7 +74,8 @@ zcat $CWD/bpe.port.to.strerror.diff.gz | patch -p1 --verbose || exit 1
CFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/usr || exit 1
+ --prefix=/usr \
+ $ARCH-slackware-linux-gnu || exit 1
make || exit 1
make install DESTDIR=$PKG || exit 1
( cd $PKG
@@ -88,4 +92,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
makepkg -l y -c n $TMP/bpe-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/ap/cdrtools/cdrtools.SlackBuild b/source/ap/cdrtools/cdrtools.SlackBuild
index 34334abbf..fe4f79166 100755
--- a/source/ap/cdrtools/cdrtools.SlackBuild
+++ b/source/ap/cdrtools/cdrtools.SlackBuild
@@ -66,6 +66,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# GCC 14 "fix":
+export CFLAGS="-Wno-error=implicit-int -Wno-error=implicit-function-declaration"
+
# When running make below, you'll see "errors" like these:
# config.h:34:10: fatal error: lconfig.h: No such file or directory
# 34 | #include "lconfig.h"
diff --git a/source/ap/cups-browsed/cups-browsed.SlackBuild b/source/ap/cups-browsed/cups-browsed.SlackBuild
index 3823d256e..e8c295b70 100755
--- a/source/ap/cups-browsed/cups-browsed.SlackBuild
+++ b/source/ap/cups-browsed/cups-browsed.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -47,21 +47,12 @@ fi
NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/source/ap/cups-filters/cups-filters.SlackBuild b/source/ap/cups-filters/cups-filters.SlackBuild
index e9cb6e17d..6e184adbf 100755
--- a/source/ap/cups-filters/cups-filters.SlackBuild
+++ b/source/ap/cups-filters/cups-filters.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -46,14 +46,11 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
diff --git a/source/ap/ghostscript/ghostscript.SlackBuild b/source/ap/ghostscript/ghostscript.SlackBuild
index af557de3e..ae0360ac0 100755
--- a/source/ap/ghostscript/ghostscript.SlackBuild
+++ b/source/ap/ghostscript/ghostscript.SlackBuild
@@ -32,7 +32,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -54,20 +54,20 @@ PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=incompatible-pointer-types -Wno-error=int-conversion"
+
cd $TMP
rm -rf ${SRCPREFIX}${PKGNAM}-${VERSION}
tar xvf $CWD/${SRCPREFIX}${PKGNAM}-$VERSION.tar.?z || exit 1
diff --git a/source/ap/ghostscript/ghostscript.url b/source/ap/ghostscript/ghostscript.url
index 12b9848de..7e133e7f9 100644
--- a/source/ap/ghostscript/ghostscript.url
+++ b/source/ap/ghostscript/ghostscript.url
@@ -1,2 +1,2 @@
https://github.com/ArtifexSoftware/ghostpdl-downloads
-https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10030/ghostscript-10.03.0.tar.xz
+https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.xz
diff --git a/source/ap/gutenprint/gutenprint.SlackBuild b/source/ap/gutenprint/gutenprint.SlackBuild
index 90c829319..2904ee44c 100755
--- a/source/ap/gutenprint/gutenprint.SlackBuild
+++ b/source/ap/gutenprint/gutenprint.SlackBuild
@@ -60,6 +60,9 @@ else
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=int-conversion"
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-gutenprint
rm -rf $PKG
@@ -76,6 +79,7 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/ap/hplip/hplip-covscan.patch b/source/ap/hplip/hplip-covscan.patch
new file mode 100644
index 000000000..6c8858165
--- /dev/null
+++ b/source/ap/hplip/hplip-covscan.patch
@@ -0,0 +1,615 @@
+diff -up hplip-3.23.3/common/utils.c.covscan hplip-3.23.3/common/utils.c
+--- hplip-3.23.3/common/utils.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/common/utils.c 2023-05-29 13:58:10.969395214 +0200
+@@ -1,5 +1,9 @@
++#ifndef _GNU_SOURCE
++#define _GNU_SOURCE
++#endif
++
+ #include "utils.h"
+-#include "string.h"
++#include <string.h>
+ #include <dlfcn.h>
+ #include <sys/stat.h>
+ #include <errno.h>
+diff -up hplip-3.23.3/io/hpmud/hpmud.c.covscan hplip-3.23.3/io/hpmud/hpmud.c
+--- hplip-3.23.3/io/hpmud/hpmud.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/io/hpmud/hpmud.c 2023-05-29 13:58:10.970395208 +0200
+@@ -759,6 +759,7 @@ enum HPMUD_RESULT hpmud_get_dstat(HPMUD_
+ }
+
+ strncpy(ds->uri, msp->device[dd].uri, sizeof(ds->uri));
++ ds->uri[sizeof(ds->uri)-1] = '\0';
+ ds->io_mode = msp->device[dd].io_mode;
+ ds->channel_cnt = msp->device[dd].channel_cnt;
+ ds->mlc_up = msp->device[dd].mlc_up;
+diff -up hplip-3.23.3/io/hpmud/jd.c.covscan hplip-3.23.3/io/hpmud/jd.c
+--- hplip-3.23.3/io/hpmud/jd.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/io/hpmud/jd.c 2023-05-29 13:58:10.970395208 +0200
+@@ -31,6 +31,7 @@
+ #endif
+
+ #include <signal.h>
++#include <stdlib.h>
+ #include "hpmud.h"
+ #include "hpmudi.h"
+
+diff -up hplip-3.23.3/io/hpmud/model.c.covscan hplip-3.23.3/io/hpmud/model.c
+--- hplip-3.23.3/io/hpmud/model.c.covscan 2023-05-29 13:58:10.958395279 +0200
++++ hplip-3.23.3/io/hpmud/model.c 2023-05-29 13:58:10.970395208 +0200
+@@ -117,6 +117,7 @@ static int ReadConfig()
+ if (rcbuf[0] == '[')
+ {
+ strncpy(section, rcbuf, sizeof(section)); /* found new section */
++ section[sizeof(section)-1] = '\0';
+ continue;
+ }
+
+@@ -125,6 +126,7 @@ static int ReadConfig()
+ if ((strncasecmp(section, "[dirs]", 6) == 0) && (strcasecmp(key, "home") == 0))
+ {
+ strncpy(homedir, value, sizeof(homedir));
++ homedir[sizeof(homedir)-1] = '\0';
+ break; /* done */
+ }
+ }
+diff -up hplip-3.23.3/io/hpmud/musb.c.covscan hplip-3.23.3/io/hpmud/musb.c
+--- hplip-3.23.3/io/hpmud/musb.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/io/hpmud/musb.c 2023-05-29 13:58:10.970395208 +0200
+@@ -776,7 +776,7 @@ static int device_id(int fd, unsigned ch
+ len = size-1; /* leave byte for zero termination */
+ if (len > 2)
+ len -= 2;
+- memcpy(buffer, buffer+2, len); /* remove length */
++ memmove(buffer, buffer+2, len); /* remove length */
+ buffer[len]=0;
+ DBG("read actual device_id successfully fd=%d len=%d\n", fd, len);
+
+diff -up hplip-3.23.3/io/hpmud/pp.c.covscan hplip-3.23.3/io/hpmud/pp.c
+--- hplip-3.23.3/io/hpmud/pp.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/io/hpmud/pp.c 2023-05-29 13:58:10.970395208 +0200
+@@ -632,7 +632,7 @@ static int device_id(int fd, char *buffe
+ len = size-1; /* leave byte for zero termination */
+ if (len > 2)
+ len -= 2;
+- memcpy(buffer, buffer+2, len); /* remove length */
++ memmove(buffer, buffer+2, len); /* remove length */
+ buffer[len]=0;
+
+ DBG("read actual device_id successfully fd=%d len=%d\n", fd, len);
+diff -up hplip-3.23.3/Makefile.am.covscan hplip-3.23.3/Makefile.am
+--- hplip-3.23.3/Makefile.am.covscan 2023-05-29 13:58:10.944395361 +0200
++++ hplip-3.23.3/Makefile.am 2023-05-29 13:58:10.969395214 +0200
+@@ -3,7 +3,7 @@
+ #
+ # (c) 2004-2015 Copyright HP Development Company, LP
+ # Author: David Suffield, Naga Samrat Chowdary Narla, Sarbeswar Meher
+-INCLUDES = -Iip -Iio/hpmud -Iscan/sane -Iprnt/hpijs -Icommon/
++INCLUDES = -Iip -Iio/hpmud -Iscan/sane -Iprnt/hpijs -Icommon/ -Iprotocol
+ CFLAGS+= -DCONFDIR=\"$(hplip_confdir)\"
+ CXXFLAGS+= -DCONFDIR=\"$(hplip_confdir)\"
+
+@@ -310,7 +310,7 @@ dist_pcard_DATA = pcard/__init__.py pcar
+ pcardextdir = $(pyexecdir)
+ pcardext_LTLIBRARIES = pcardext.la
+ pcardext_la_LDFLAGS = -module -avoid-version
+-pcardext_la_SOURCES = pcard/pcardext/pcardext.c pcard/fat.c
++pcardext_la_SOURCES = pcard/pcardext/pcardext.c pcard/fat.c pcard/pcardext/pcardext.h
+ pcardext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
+
+ # prnt
+@@ -322,7 +322,7 @@ lib_LTLIBRARIES += libhpipp.la
+ #hpipp_LTLIBRARIES = hpipp.la
+ #hpipp_la_LDFLAGS = -module -avoid-version
+ libhpipp_la_SOURCES = protocol/hp_ipp.c protocol/hp_ipp.h protocol/hp_ipp_i.h
+-libhpipp_la_CFLAGS = -DCONFDIR=\"$(hplip_confdir)\"
++libhpipp_la_CFLAGS = -DCONFDIR=\"$(hplip_confdir)\" -D_GNU_SOURCE
+ libhpipp_la_LDFLAGS = -version-info 0:1:0
+ libhpipp_la_LIBADD = libhpmud.la
+
+diff -up hplip-3.23.3/pcard/fat.c.covscan hplip-3.23.3/pcard/fat.c
+--- hplip-3.23.3/pcard/fat.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/pcard/fat.c 2023-05-29 13:58:10.971395203 +0200
+@@ -519,14 +519,17 @@ int FatFreeSpace(void)
+
+ int FatDiskAttributes( PHOTO_CARD_ATTRIBUTES * pa )
+ {
+- strncpy( pa->OEMID, bpb.OEMID, 8 );
++ strncpy(pa->OEMID, bpb.OEMID, sizeof(pa->OEMID));
++ pa->OEMID[sizeof(pa->OEMID)-1] = '\0';
+ pa->BytesPerSector = bpb.BytesPerSector;
+ pa->SectorsPerCluster = bpb.SectorsPerCluster;
+ pa->ReservedSectors = bpb.ReservedSectors;
+ pa->SectorsPerFat = bpb.SectorsPerFat;
+ pa->RootEntries = bpb.RootEntries;
+- strncpy( pa->SystemID, (char *)bpb.SystemID, 8 );
+- strncpy( pa->VolumeLabel, (char *)bpb.VolumeLabel, 11 );
++ strncpy(pa->SystemID, (char *)bpb.SystemID, sizeof(pa->SystemID));
++ pa->SystemID[sizeof(pa->SystemID)-1] = '\0';
++ strncpy(pa->VolumeLabel, (char *)bpb.VolumeLabel, sizeof(pa->VolumeLabel));
++ pa->VolumeLabel[sizeof(pa->VolumeLabel)-1] = '\0';
+ pa->WriteProtect = da.WriteProtect;
+
+ return 0;
+@@ -741,6 +744,7 @@ int FatSetCWD(char *dir)
+ return 1;
+
+ strncpy(cwd.Name, fa.Name, sizeof(cwd.Name));
++ cwd.Name[sizeof(cwd.Name)-1] = '\0';
+ cwd.StartSector = ConvertClusterToSector(fa.StartCluster);
+ cwd.CurrSector = cwd.StartSector;
+ cwd.StartCluster = fa.StartCluster;
+diff -up hplip-3.23.3/prnt/hpijs/context2.cpp.covscan hplip-3.23.3/prnt/hpijs/context2.cpp
+--- hplip-3.23.3/prnt/hpijs/context2.cpp.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/prnt/hpijs/context2.cpp 2023-05-29 13:58:10.971395203 +0200
+@@ -1302,6 +1302,7 @@ DRIVER_ERROR PrintContext::SelectDevice
+ if(0 == strnlen((const char *)pSS->strDevID, DevIDBuffSize))
+ {
+ strncpy((char *)pSS->strDevID,szDeviceId,DevIDBuffSize);
++ pSS->strDevID[sizeof(pSS->strDevID)-1] = '\0';
+ }
+ thePrinter = pPFI->CreatePrinter (pSS, familyHandle);
+ if (thePrinter->constructor_error != NO_ERROR)
+diff -up hplip-3.23.3/prnt/hpijs/systemservices.cpp.covscan hplip-3.23.3/prnt/hpijs/systemservices.cpp
+--- hplip-3.23.3/prnt/hpijs/systemservices.cpp.covscan 2023-03-28 09:26:27.000000000 +0200
++++ hplip-3.23.3/prnt/hpijs/systemservices.cpp 2023-05-29 13:58:10.971395203 +0200
+@@ -396,7 +396,10 @@ void SystemServices::AdjustIO(IO_MODE IM
+ IOMode.bDevID =IM.bDevID && IOMode.bDevID;
+
+ if (model)
++ {
+ strncpy(strModel,model, sizeof(strModel));
++ strModel[sizeof(strModel)-1] = '\0';
++ }
+ }
+
+ APDK_END_NAMESPACE
+diff -up hplip-3.23.3/prnt/hpps/hppsfilter.c.covscan hplip-3.23.3/prnt/hpps/hppsfilter.c
+--- hplip-3.23.3/prnt/hpps/hppsfilter.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/prnt/hpps/hppsfilter.c 2023-05-29 13:58:10.972395197 +0200
+@@ -274,13 +274,13 @@ static void WriteHeader(char **argument)
+ /* Writing Header Information
+ argument[1] = JOB ID , argument[2]= USERNAME, argument[3] = TITLE */
+ hpwrite("\x1b%-12345X@PJL JOBNAME=", strlen("\x1b%-12345X@PJL JOBNAME="));
+- sprintf(buffer, "hplip_%s_%s\x0a", argument[2], argument[1]);
++ snprintf(buffer, MAX_BUFFER-1, "hplip_%s_%s\x0a", argument[2], argument[1]);
+ hpwrite(buffer, strlen(buffer));
+ memset(buffer, 0, sizeof(buffer));
+- sprintf(buffer, "@PJL SET USERNAME=\"%s\"\x0a", argument[2]);
++ snprintf(buffer, MAX_BUFFER-1, "@PJL SET USERNAME=\"%s\"\x0a", argument[2]);
+ hpwrite(buffer, strlen(buffer));
+ memset(buffer, 0, sizeof(buffer));
+- sprintf(buffer, "@PJL SET JOBNAME=\"%s\"\x0a", argument[3]);
++ snprintf(buffer, MAX_BUFFER-1, "@PJL SET JOBNAME=\"%s\"\x0a", argument[3]);
+ hpwrite(buffer, strlen(buffer));
+ fprintf(stderr, "HP PS filter func = WriteHeader : WRITING PJL HEADER INFO\n");
+ return;
+diff -up hplip-3.23.3/protocol/hp_ipp.h.covscan hplip-3.23.3/protocol/hp_ipp.h
+--- hplip-3.23.3/protocol/hp_ipp.h.covscan 2023-05-29 13:58:10.972395197 +0200
++++ hplip-3.23.3/protocol/hp_ipp.h 2023-05-29 13:59:03.645085468 +0200
+@@ -168,6 +168,11 @@ HPIPP_RESULT parseResponseHeader(char* h
+ HPIPP_RESULT prepend_http_header(raw_ipp *raw_request,const char *resource);
+ enum HPMUD_RESULT sendUSBRequest(char *buf, int size, raw_ipp *responseptr, char * device_uri);
+ enum HPMUD_RESULT sendUSBFileRequest(char *buf, int size, int fileHandle,raw_ipp *responseptr, char *device_uri);
++void _releaseCupsInstance();
++int addCupsPrinter(char *name, char *device_uri, char *location, char *ppd_file, char *model, char *info);
++int delCupsPrinter(char *pr_name);
++int setDefaultCupsPrinter(char *pr_name);
++int controlCupsPrinter(char *pr_name, int op);
+
+ ipp_t * createFaxDetailRequest(const char *printer_name);
+ ipp_t * getDeviceFaxModemAttributes(char* device_uri,char* printer_name, int *count);
+diff -up hplip-3.23.3/scan/sane/bb_ledm.c.covscan hplip-3.23.3/scan/sane/bb_ledm.c
+--- hplip-3.23.3/scan/sane/bb_ledm.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/bb_ledm.c 2023-05-29 13:58:10.972395197 +0200
+@@ -26,6 +26,7 @@
+ # include "http.h"
+ # include "xml.h"
+ # include <stdlib.h>
++# include <unistd.h>
+
+ # include <stdint.h>
+
+diff -up hplip-3.23.3/scan/sane/common.h.covscan hplip-3.23.3/scan/sane/common.h
+--- hplip-3.23.3/scan/sane/common.h.covscan 2023-05-29 13:58:10.727396637 +0200
++++ hplip-3.23.3/scan/sane/common.h 2023-05-29 13:58:10.972395197 +0200
+@@ -36,7 +36,7 @@
+ #define _STRINGIZE(x) #x
+ #define STRINGIZE(x) _STRINGIZE(x)
+
+-#define BUG(args...) {syslog(LOG_ERR, __FILE__ " " STRINGIZE(__LINE__) ": " args); DBG(2, __FILE__ " " STRINGIZE(__LINE__) ": " args);}
++#define BUG_SCAN(args...) {syslog(LOG_ERR, __FILE__ " " STRINGIZE(__LINE__) ": " args); DBG(2, __FILE__ " " STRINGIZE(__LINE__) ": " args);}
+ #define BUG_DUMP(data, size) bugdump((data), (size))
+ #define BUG_SZ(args...) {syslog(LOG_ERR, args); DBG(2, args);}
+
+diff -up hplip-3.23.3/scan/sane/escl.c.covscan hplip-3.23.3/scan/sane/escl.c
+--- hplip-3.23.3/scan/sane/escl.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/escl.c 2023-05-29 13:58:10.972395197 +0200
+@@ -849,7 +849,7 @@ SANE_Status escl_control_option(SANE_Han
+ //DBG8("escl_control_option (option=%s) action=%d\n", ps->option[option].name, action);
+ if (stat != SANE_STATUS_GOOD)
+ {
+- BUG("control_option failed: option=%s action=%s\n", ps->option[option].name, action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
++ BUG_SCAN("control_option failed: option=%s action=%s\n", ps->option[option].name, action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
+ }
+
+ return stat;
+@@ -1159,7 +1159,7 @@ void escl_close(SANE_Handle handle)
+
+ if (ps == NULL || ps != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+diff -up hplip-3.23.3/scan/sane/http.c.covscan hplip-3.23.3/scan/sane/http.c
+--- hplip-3.23.3/scan/sane/http.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/http.c 2023-05-29 13:58:10.973395191 +0200
+@@ -36,6 +36,7 @@
+ #include <string.h>
+ #include <syslog.h>
+ #include <ctype.h>
++#include <unistd.h>
+ #include "hpmud.h"
+ #include "http.h"
+
+diff -up hplip-3.23.3/scan/sane/io.c.covscan hplip-3.23.3/scan/sane/io.c
+--- hplip-3.23.3/scan/sane/io.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/io.c 2023-05-29 13:58:10.973395191 +0200
+@@ -50,7 +50,7 @@ int __attribute__ ((visibility ("hidden"
+
+ if (dbus_error_is_set(&dbus_err))
+ {
+- BUG("dBus Connection Error (%s)!\n", dbus_err.message);
++ BUG_SCAN("dBus Connection Error (%s)!\n", dbus_err.message);
+ dbus_error_free(&dbus_err);
+ }
+
+@@ -79,7 +79,7 @@ int __attribute__ ((visibility ("hidden"
+
+ if (NULL == msg)
+ {
+- BUG("dbus message is NULL!\n");
++ BUG_SCAN("dbus message is NULL!\n");
+ return 0;
+ }
+
+@@ -94,7 +94,7 @@ int __attribute__ ((visibility ("hidden"
+
+ if (!dbus_connection_send(dbus_conn, msg, NULL))
+ {
+- BUG("dbus message send failed!\n");
++ BUG_SCAN("dbus message send failed!\n");
+ return 0;
+ }
+
+diff -up hplip-3.23.3/scan/sane/ledm.c.covscan hplip-3.23.3/scan/sane/ledm.c
+--- hplip-3.23.3/scan/sane/ledm.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/ledm.c 2023-05-29 13:58:10.973395191 +0200
+@@ -813,7 +813,7 @@ SANE_Status ledm_control_option(SANE_Han
+
+ if (stat != SANE_STATUS_GOOD)
+ {
+- BUG("control_option failed: option=%s action=%s\n", ps->option[option].name, action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
++ BUG_SCAN("control_option failed: option=%s action=%s\n", ps->option[option].name, action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
+ }
+
+ return stat;
+@@ -1078,7 +1078,7 @@ void ledm_close(SANE_Handle handle)
+
+ if (ps == NULL || ps != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+diff -up hplip-3.23.3/scan/sane/marvell.c.covscan hplip-3.23.3/scan/sane/marvell.c
+--- hplip-3.23.3/scan/sane/marvell.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/marvell.c 2023-05-29 13:58:10.976395173 +0200
+@@ -134,7 +134,7 @@ static int get_ip_data(struct marvell_se
+
+ if (!ps->ip_handle)
+ {
+- BUG("invalid ipconvert state\n");
++ BUG_SCAN("invalid ipconvert state\n");
+ goto bugout;
+ }
+
+@@ -335,7 +335,7 @@ static struct marvell_session *create_se
+
+ if ((ps = malloc(sizeof(struct marvell_session))) == NULL)
+ {
+- BUG("malloc failed: %m\n");
++ BUG_SCAN("malloc failed: %m\n");
+ return NULL;
+ }
+ memset(ps, 0, sizeof(struct marvell_session));
+@@ -402,7 +402,7 @@ SANE_Status marvell_open(SANE_String_Con
+
+ if (session)
+ {
+- BUG("session in use\n");
++ BUG_SCAN("session in use\n");
+ return SANE_STATUS_DEVICE_BUSY;
+ }
+
+@@ -431,7 +431,7 @@ SANE_Status marvell_open(SANE_String_Con
+
+ if (hpmud_open_device(session->uri, ma.mfp_mode, &session->dd) != HPMUD_R_OK)
+ {
+- BUG("unable to open device %s\n", session->uri);
++ BUG_SCAN("unable to open device %s\n", session->uri);
+ goto bugout;
+
+ free(session);
+@@ -441,7 +441,7 @@ SANE_Status marvell_open(SANE_String_Con
+
+ if (hpmud_open_channel(session->dd, HPMUD_S_MARVELL_SCAN_CHANNEL, &session->cd) != HPMUD_R_OK)
+ {
+- BUG("unable to open %s channel %s\n", HPMUD_S_MARVELL_SCAN_CHANNEL, session->uri);
++ BUG_SCAN("unable to open %s channel %s\n", HPMUD_S_MARVELL_SCAN_CHANNEL, session->uri);
+ stat = SANE_STATUS_DEVICE_BUSY;
+ goto bugout;
+ }
+@@ -554,7 +554,7 @@ void marvell_close(SANE_Handle handle)
+
+ if (ps == NULL || ps != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+@@ -849,7 +849,7 @@ SANE_Status marvell_control_option(SANE_
+ stat = SANE_STATUS_GOOD;
+ break;
+ }
+- BUG("value=%d brymin=%d brymax=%d\n", *int_value, ps->bryRange.min, ps->bryRange.max);
++ BUG_SCAN("value=%d brymin=%d brymax=%d\n", *int_value, ps->bryRange.min, ps->bryRange.max);
+ }
+ else
+ { /* Set default. */
+@@ -866,7 +866,7 @@ SANE_Status marvell_control_option(SANE_
+
+ if (stat != SANE_STATUS_GOOD)
+ {
+- BUG("control_option failed: option=%s action=%s\n", ps->option[option].name,
++ BUG_SCAN("control_option failed: option=%s action=%s\n", ps->option[option].name,
+ action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
+ }
+
+@@ -905,7 +905,7 @@ SANE_Status marvell_start(SANE_Handle ha
+
+ if (set_extents(ps))
+ {
+- BUG("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
++ BUG_SCAN("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
+ ps->currentTlx, ps->currentTly, ps->currentBrx, ps->currentBry, ps->min_width, ps->min_height, ps->tlxRange.max, ps->tlyRange.max);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+@@ -963,7 +963,7 @@ SANE_Status marvell_start(SANE_Handle ha
+ /* Open image processor. */
+ if ((ret = ipOpen(pXform-xforms, xforms, 0, &ps->ip_handle)) != IP_DONE)
+ {
+- BUG("unable open image processor: err=%d\n", ret);
++ BUG_SCAN("unable open image processor: err=%d\n", ret);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+ }
+@@ -1023,7 +1023,7 @@ SANE_Status marvell_read(SANE_Handle han
+
+ if(ret & (IP_INPUT_ERROR | IP_FATAL_ERROR))
+ {
+- BUG("ipConvert error=%x\n", ret);
++ BUG_SCAN("ipConvert error=%x\n", ret);
+ goto bugout;
+ }
+
+diff -up hplip-3.23.3/scan/sane/sclpml.c.covscan hplip-3.23.3/scan/sane/sclpml.c
+--- hplip-3.23.3/scan/sane/sclpml.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/sclpml.c 2023-05-29 13:58:10.976395173 +0200
+@@ -30,6 +30,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <string.h>
++#include <sys/time.h>
+ #include "sane.h"
+ #include "saneopts.h"
+ #include "common.h"
+@@ -2090,7 +2091,7 @@ void sclpml_close(SANE_Handle handle)
+ DBG(8, "sane_hpaio_close(): %s %d\n", __FILE__, __LINE__);
+ if (hpaio == NULL || hpaio != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+diff -up hplip-3.23.3/scan/sane/soap.c.covscan hplip-3.23.3/scan/sane/soap.c
+--- hplip-3.23.3/scan/sane/soap.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/soap.c 2023-05-29 13:58:10.977395167 +0200
+@@ -142,7 +142,7 @@ static int get_ip_data(struct soap_sessi
+
+ if (!ps->ip_handle)
+ {
+- BUG("invalid ipconvert state\n");
++ BUG_SCAN("invalid ipconvert state\n");
+ goto bugout;
+ }
+
+@@ -219,7 +219,7 @@ static struct soap_session *create_sessi
+
+ if ((ps = malloc(sizeof(struct soap_session))) == NULL)
+ {
+- BUG("malloc failed: %m\n");
++ BUG_SCAN("malloc failed: %m\n");
+ return NULL;
+ }
+ memset(ps, 0, sizeof(struct soap_session));
+@@ -418,7 +418,7 @@ SANE_Status soap_open(SANE_String_Const
+
+ if (session)
+ {
+- BUG("session in use\n");
++ BUG_SCAN("session in use\n");
+ return SANE_STATUS_DEVICE_BUSY;
+ }
+
+@@ -434,7 +434,7 @@ SANE_Status soap_open(SANE_String_Const
+
+ if (hpmud_open_device(session->uri, ma.mfp_mode, &session->dd) != HPMUD_R_OK)
+ {
+- BUG("unable to open device %s\n", session->uri);
++ BUG_SCAN("unable to open device %s\n", session->uri);
+ goto bugout;
+
+ free(session);
+@@ -519,7 +519,7 @@ void soap_close(SANE_Handle handle)
+
+ if (ps == NULL || ps != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+@@ -824,7 +824,7 @@ SANE_Status soap_control_option(SANE_Han
+
+ if (stat != SANE_STATUS_GOOD)
+ {
+- BUG("control_option failed: option=%s action=%s\n", ps->option[option].name,
++ BUG_SCAN("control_option failed: option=%s action=%s\n", ps->option[option].name,
+ action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
+ }
+
+@@ -862,7 +862,7 @@ SANE_Status soap_start(SANE_Handle handl
+ ps->user_cancel = 0;
+ if (set_extents(ps))
+ {
+- BUG("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
++ BUG_SCAN("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
+ ps->currentTlx, ps->currentTly, ps->currentBrx, ps->currentBry, ps->min_width, ps->min_height, ps->tlxRange.max, ps->tlyRange.max);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+@@ -913,7 +913,7 @@ SANE_Status soap_start(SANE_Handle handl
+ /* Open image processor. */
+ if ((ret = ipOpen(pXform-xforms, xforms, 0, &ps->ip_handle)) != IP_DONE)
+ {
+- BUG("unable open image processor: err=%d\n", ret);
++ BUG_SCAN("unable open image processor: err=%d\n", ret);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+ }
+@@ -955,7 +955,7 @@ SANE_Status soap_start(SANE_Handle handl
+
+ if (ret & (IP_INPUT_ERROR | IP_FATAL_ERROR | IP_DONE))
+ {
+- BUG("ipConvert error=%x\n", ret);
++ BUG_SCAN("ipConvert error=%x\n", ret);
+ stat = SANE_STATUS_IO_ERROR;
+ goto bugout;
+ }
+@@ -1007,7 +1007,7 @@ SANE_Status soap_read(SANE_Handle handle
+
+ if(ret & (IP_INPUT_ERROR | IP_FATAL_ERROR))
+ {
+- BUG("ipConvert error=%x\n", ret);
++ BUG_SCAN("ipConvert error=%x\n", ret);
+ goto bugout;
+ }
+
+diff -up hplip-3.23.3/scan/sane/soapht.c.covscan hplip-3.23.3/scan/sane/soapht.c
+--- hplip-3.23.3/scan/sane/soapht.c.covscan 2023-03-28 09:26:11.000000000 +0200
++++ hplip-3.23.3/scan/sane/soapht.c 2023-05-29 13:58:10.977395167 +0200
+@@ -136,7 +136,7 @@ static int get_ip_data(struct soap_sessi
+
+ if (!ps->ip_handle)
+ {
+- BUG("invalid ipconvert state\n");
++ BUG_SCAN("invalid ipconvert state\n");
+ goto bugout;
+ }
+
+@@ -435,7 +435,7 @@ static struct soap_session *create_sessi
+
+ if ((ps = malloc(sizeof(struct soap_session))) == NULL)
+ {
+- BUG("malloc failed: %m\n");
++ BUG_SCAN("malloc failed: %m\n");
+ return NULL;
+ }
+ memset(ps, 0, sizeof(struct soap_session));
+@@ -459,7 +459,7 @@ SANE_Status soapht_open(SANE_String_Cons
+
+ if (session)
+ {
+- BUG("session in use\n");
++ BUG_SCAN("session in use\n");
+ return SANE_STATUS_DEVICE_BUSY;
+ }
+
+@@ -475,7 +475,7 @@ SANE_Status soapht_open(SANE_String_Cons
+
+ if (hpmud_open_device(session->uri, ma.mfp_mode, &session->dd) != HPMUD_R_OK)
+ {
+- BUG("unable to open device %s\n", session->uri);
++ BUG_SCAN("unable to open device %s\n", session->uri);
+ goto bugout;
+
+ free(session);
+@@ -554,7 +554,7 @@ void soapht_close(SANE_Handle handle)
+
+ if (ps == NULL || ps != session)
+ {
+- BUG("invalid sane_close\n");
++ BUG_SCAN("invalid sane_close\n");
+ return;
+ }
+
+@@ -904,7 +904,7 @@ SANE_Status soapht_control_option(SANE_H
+
+ if (stat != SANE_STATUS_GOOD)
+ {
+- BUG("control_option failed: option=%s action=%s\n", ps->option[option].name,
++ BUG_SCAN("control_option failed: option=%s action=%s\n", ps->option[option].name,
+ action==SANE_ACTION_GET_VALUE ? "get" : action==SANE_ACTION_SET_VALUE ? "set" : "auto");
+ }
+
+@@ -946,7 +946,7 @@ SANE_Status soapht_start(SANE_Handle han
+
+ if (set_extents(ps))
+ {
+- BUG("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
++ BUG_SCAN("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n",
+ ps->currentTlx, ps->currentTly, ps->currentBrx, ps->currentBry, ps->min_width, ps->min_height, ps->tlxRange.max, ps->tlyRange.max);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+@@ -1032,7 +1032,7 @@ SANE_Status soapht_start(SANE_Handle han
+ /* Open image processor. */
+ if ((ret = ipOpen(pXform-xforms, xforms, 0, &ps->ip_handle)) != IP_DONE)
+ {
+- BUG("unable open image processor: err=%d\n", ret);
++ BUG_SCAN("unable open image processor: err=%d\n", ret);
+ stat = SANE_STATUS_INVAL;
+ goto bugout;
+ }
+@@ -1075,7 +1075,7 @@ SANE_Status soapht_start(SANE_Handle han
+
+ if (ret & (IP_INPUT_ERROR | IP_FATAL_ERROR | IP_DONE))
+ {
+- BUG("ipConvert error=%x\n", ret);
++ BUG_SCAN("ipConvert error=%x\n", ret);
+ stat = SANE_STATUS_IO_ERROR;
+ goto bugout;
+ }
+@@ -1124,7 +1124,7 @@ SANE_Status soapht_read(SANE_Handle hand
+
+ if(ret & (IP_INPUT_ERROR | IP_FATAL_ERROR))
+ {
+- BUG("ipConvert error=%x\n", ret);
++ BUG_SCAN("ipConvert error=%x\n", ret);
+ goto bugout;
+ }
+
diff --git a/source/ap/hplip/hplip-hpaio-gcc14.patch b/source/ap/hplip/hplip-hpaio-gcc14.patch
new file mode 100644
index 000000000..f7d195ed1
--- /dev/null
+++ b/source/ap/hplip/hplip-hpaio-gcc14.patch
@@ -0,0 +1,114 @@
+diff --git a/scan/sane/hpaio.c b/scan/sane/hpaio.c
+index 57d1dde..3475929 100644
+--- a/scan/sane/hpaio.c
++++ b/scan/sane/hpaio.c
+@@ -379,7 +379,7 @@ extern SANE_Status sane_hpaio_get_devices(const SANE_Device ***deviceList, SANE_
+ ResetDeviceList(&DeviceList);
+ DevDiscovery(localOnly);
+ *deviceList = (const SANE_Device **)DeviceList;
+- SANE_Device*** devList;
++ const SANE_Device*** devList;
+ orblite_get_devices(devList, localOnly);
+
+ return SANE_STATUS_GOOD;
+diff --git a/scan/sane/orblite.c b/scan/sane/orblite.c
+index 2eb7aba..4eaa468 100644
+--- a/scan/sane/orblite.c
++++ b/scan/sane/orblite.c
+@@ -64,28 +64,28 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_SCAN_TL_X, SANE_TITLE_SCAN_TL_X, SANE_DESC_SCAN_TL_X, // name, title, desc
+ SANE_TYPE_FIXED, SANE_UNIT_MM, sizeof(SANE_Fixed),// type, unit, size
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_RANGE, (SANE_Char**)&SANE_rangeLeft // constraint_type, constraint
++ SANE_CONSTRAINT_RANGE, (const SANE_Char**)&SANE_rangeLeft // constraint_type, constraint
+ },
+
+ {
+ SANE_NAME_SCAN_TL_Y, SANE_TITLE_SCAN_TL_Y, SANE_DESC_SCAN_TL_Y, // name, title, desc
+ SANE_TYPE_FIXED, SANE_UNIT_MM, sizeof(SANE_Fixed),// type, unit, size
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_RANGE, (SANE_Char**)&SANE_rangeTop // constraint_type, constraint
++ SANE_CONSTRAINT_RANGE, (const SANE_Char**)&SANE_rangeTop // constraint_type, constraint
+ },
+
+ {
+ SANE_NAME_SCAN_BR_X, SANE_TITLE_SCAN_BR_X, SANE_DESC_SCAN_BR_X, // name, title, desc
+ SANE_TYPE_FIXED, SANE_UNIT_MM, sizeof(SANE_Fixed),// type, unit, size
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_RANGE, (SANE_Char**)&SANE_rangeRight // constraint_type, constraint
++ SANE_CONSTRAINT_RANGE, (const SANE_Char**)&SANE_rangeRight // constraint_type, constraint
+ },
+
+ {
+ SANE_NAME_SCAN_BR_Y, SANE_TITLE_SCAN_BR_Y, SANE_DESC_SCAN_BR_Y, // name, title, desc
+ SANE_TYPE_FIXED, SANE_UNIT_MM, sizeof(SANE_Fixed),// type, unit, size
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_RANGE, (SANE_Char**)&SANE_rangeBottom // constraint_type, constraint
++ SANE_CONSTRAINT_RANGE, (const SANE_Char**)&SANE_rangeBottom // constraint_type, constraint
+ },
+
+ // optResolution, // resolution group
+@@ -93,7 +93,7 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_SCAN_RESOLUTION, SANE_TITLE_SCAN_RESOLUTION, SANE_DESC_SCAN_RESOLUTION, // name, title, desc
+ SANE_TYPE_INT, SANE_UNIT_DPI, sizeof(SANE_Word), // type, unit, size,
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_WORD_LIST, (SANE_Char**)SANE_resolutions // constraint type, constraint
++ SANE_CONSTRAINT_WORD_LIST, (const SANE_Char**)SANE_resolutions // constraint type, constraint
+ },
+
+ // optMode, // color/depth group
+@@ -101,7 +101,7 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_SCAN_MODE, SANE_TITLE_SCAN_MODE, SANE_DESC_SCAN_MODE, // name, title, desc
+ SANE_TYPE_STRING, SANE_UNIT_NONE, 256, // type, unit, size,
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_STRING_LIST, (SANE_Char**)SANE_modes // constraint type, constraint
++ SANE_CONSTRAINT_STRING_LIST, (const SANE_Char**)SANE_modes // constraint type, constraint
+ },
+
+ // optSource,
+@@ -109,7 +109,7 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_SCAN_SOURCE, SANE_TITLE_SCAN_SOURCE, SANE_DESC_SCAN_SOURCE, // name, title, desc
+ SANE_TYPE_STRING, SANE_UNIT_NONE, 256, // type, unit, size,
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_STRING_LIST, (SANE_Char**)SANE_sources // constraint type, constraint
++ SANE_CONSTRAINT_STRING_LIST, (const SANE_Char**)SANE_sources // constraint type, constraint
+ },
+
+ // optPaperSize,
+@@ -117,7 +117,7 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_PAPER_SIZE, SANE_TITLE_PAPER_SIZE, SANE_DESC_PAPER_SIZE, // name, title, desc
+ SANE_TYPE_STRING, SANE_UNIT_NONE, 256, // type, unit, size,
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_STRING_LIST, (SANE_Char**)SANE_paper_sizes // constraint type, constraint
++ SANE_CONSTRAINT_STRING_LIST, (const SANE_Char**)SANE_paper_sizes // constraint type, constraint
+ },
+
+ // optPaperSize,
+@@ -125,7 +125,7 @@ SANE_Option_Descriptor DefaultOrbOptions[] = {
+ SANE_NAME_PAPER_SIZE, SANE_TITLE_PAPER_SIZE, SANE_DESC_PAPER_SIZE, // name, title, desc
+ SANE_TYPE_INT, SANE_UNIT_DPI, sizeof(SANE_Word), // type, unit, size,
+ SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT, // cap(ability)
+- SANE_CONSTRAINT_WORD_LIST, (SANE_Char**)SANE_resolutions // constraint type, constraint
++ SANE_CONSTRAINT_WORD_LIST, (const SANE_Char**)SANE_resolutions // constraint type, constraint
+ },
+ #ifdef NOTDEF
+ // default template
+@@ -274,6 +274,7 @@ orblite_open (SANE_String_Const devicename, SANE_Handle * handle)
+ SANE_Auth_Callback authorize;
+ const SANE_Device *** device_list;
+ SANE_Bool local_only;
++ void * temp_handle;
+
+
+ // Allocate handle, set all handle values to zero
+@@ -305,7 +306,9 @@ orblite_open (SANE_String_Const devicename, SANE_Handle * handle)
+ if (stat != SANE_STATUS_GOOD)
+ return stat;
+
+- stat = g_handle->bb_orblite_open(devicename, &g_handle);
++ temp_handle = g_handle;
++ stat = g_handle->bb_orblite_open(devicename, &temp_handle);
++ g_handle = temp_handle;
+ if (stat == SANE_STATUS_GOOD)
+ *handle = g_handle;
+
diff --git a/source/ap/hplip/hplip-pcardext-disable.patch b/source/ap/hplip/hplip-pcardext-disable.patch
new file mode 100644
index 000000000..c16fb5a25
--- /dev/null
+++ b/source/ap/hplip/hplip-pcardext-disable.patch
@@ -0,0 +1,16 @@
+--- ./Makefile.am.orig 2024-05-10 18:14:51.431337550 -0500
++++ ./Makefile.am 2024-05-10 18:15:37.078338571 -0500
+@@ -306,13 +306,6 @@
+ pcarddir = $(hplipdir)/pcard
+ dist_pcard_DATA = pcard/__init__.py pcard/photocard.py
+
+-# pcardext
+-pcardextdir = $(pyexecdir)
+-pcardext_LTLIBRARIES = pcardext.la
+-pcardext_la_LDFLAGS = -module -avoid-version
+-pcardext_la_SOURCES = pcard/pcardext/pcardext.c pcard/fat.c pcard/pcardext/pcardext.h
+-pcardext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
+-
+ # prnt
+ prntdir = $(hplipdir)/prnt
+ dist_prnt_DATA = prnt/cups.py prnt/__init__.py prnt/ldl.py prnt/pcl.py prnt/colorcal.py
diff --git a/source/ap/hplip/hplip-pserror-c99.patch b/source/ap/hplip/hplip-pserror-c99.patch
new file mode 100644
index 000000000..747af3abf
--- /dev/null
+++ b/source/ap/hplip/hplip-pserror-c99.patch
@@ -0,0 +1,17 @@
+prnt/pserror.c: Replace an implicit int with an explicit int
+
+Submitted upstream: <https://bugs.launchpad.net/hplip/+bug/1997875>
+
+diff --git a/prnt/hpps/pserror.c b/prnt/hpps/pserror.c
+index 114d7e1b5fa364fb..493b49c27917a7e6 100644
+--- a/prnt/hpps/pserror.c
++++ b/prnt/hpps/pserror.c
+@@ -24,7 +24,7 @@ extern char *program ; /* Defined by main program, giving program name */
+ void message(int flags, char *format, ...)
+ {
+ va_list args ;
+- static column = 0 ; /* current screen column for message wrap */
++ static int column = 0 ; /* current screen column for message wrap */
+ char msgbuf[MAX_MESSAGE] ; /* buffer in which to put the message */
+ char *bufptr = msgbuf ; /* message buffer pointer */
+
diff --git a/source/ap/hplip/hplip-scan-hpaio-include.patch b/source/ap/hplip/hplip-scan-hpaio-include.patch
new file mode 100644
index 000000000..79d1d94b7
--- /dev/null
+++ b/source/ap/hplip/hplip-scan-hpaio-include.patch
@@ -0,0 +1,19 @@
+scam/sane/hpaio.c: Include orblite.h for more function prototypes
+
+Otherwise the build fails with compilers which do not support
+implicit function declarations.
+
+Submitted upstream: <https://bugs.launchpad.net/hplip/+bug/1997875>
+
+diff --git a/scan/sane/hpaio.c b/scan/sane/hpaio.c
+index d342626822fc2190..57d1ddea32fb5816 100644
+--- a/scan/sane/hpaio.c
++++ b/scan/sane/hpaio.c
+@@ -50,6 +50,7 @@
+ #include "sclpml.h"
+ #include "escl.h"
+ #include "io.h"
++#include "orblite.h"
+ #include "orblitei.h"
+
+
diff --git a/source/ap/hplip/hplip-scan-orblite-c99.patch b/source/ap/hplip/hplip-scan-orblite-c99.patch
new file mode 100644
index 000000000..c921f22f1
--- /dev/null
+++ b/source/ap/hplip/hplip-scan-orblite-c99.patch
@@ -0,0 +1,21 @@
+diff --git a/scan/sane/orblite.c b/scan/sane/orblite.c
+index ba86640..2eb7aba 100644
+--- a/scan/sane/orblite.c
++++ b/scan/sane/orblite.c
+@@ -20,6 +20,7 @@
+ #include "orblitei.h"
+ #include "orblite.h"//Added New
+ #include <math.h>
++#include <dlfcn.h>
+ #include "utils.h"
+ #include "io.h"
+
+@@ -195,7 +196,7 @@ bugout:
+
+ static int bb_unload(SANE_THandle ps)
+ {
+- _DBG("Calling orblite bb_unload: \n");
++ DBG("Calling orblite bb_unload: \n");
+ if (ps->bb_handle)
+ {
+ dlclose(ps->bb_handle);
diff --git a/source/ap/hplip/hplip.SlackBuild b/source/ap/hplip/hplip.SlackBuild
index 682377996..6f3d1f2e5 100755
--- a/source/ap/hplip/hplip.SlackBuild
+++ b/source/ap/hplip/hplip.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=hplip
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -63,6 +63,9 @@ else
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+#SLKCFLAGS="$SLKCFLAGS -Wno-error=implicit-int -Wno-error=incompatible-pointer-types"
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -86,6 +89,16 @@ zcat $CWD/hplip.python3.shebang.diff.gz | patch -p1 --verbose || exit 1
# Fix the desktop file to show correct icon and category
zcat $CWD/fix-desktop-file.patch.gz | patch -p1 --verbose || exit 1
+# GCC 14 fixes:
+cat $CWD/hplip-pserror-c99.patch | patch -p1 --verbose || exit 1
+cat $CWD/hplip-hpaio-gcc14.patch | patch -p1 --verbose || exit 1
+cat $CWD/hplip-covscan.patch | patch -p1 --verbose || exit 1
+cat $CWD/hplip-scan-orblite-c99.patch | patch -p1 --verbose || exit 1
+cat $CWD/hplip-scan-hpaio-include.patch | patch -p1 --verbose || exit 1
+
+# This extension was never ported to python3:
+cat $CWD/hplip-pcardext-disable.patch | patch -p1 --verbose || exit 1
+
# Choose correct options depending on whether PAM is installed:
if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
unset SHADOW_OPTIONS
@@ -203,4 +216,3 @@ zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/ap/inxi/fetch-inxi.sh b/source/ap/inxi/fetch-inxi.sh
index 8750c0bd5..cf75d93f7 100755
--- a/source/ap/inxi/fetch-inxi.sh
+++ b/source/ap/inxi/fetch-inxi.sh
@@ -24,7 +24,7 @@
PKGNAM=inxi
# Pull a stable branch + patches
-BRANCH=${1:-3.3.34-1}
+BRANCH=${1:-3.3.35-1}
# Clear download area:
rm -rf ${PKGNAM}
diff --git a/source/ap/inxi/inxi.SlackBuild b/source/ap/inxi/inxi.SlackBuild
index 4f0bf8bb9..327a8160e 100755
--- a/source/ap/inxi/inxi.SlackBuild
+++ b/source/ap/inxi/inxi.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -51,14 +51,11 @@ PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
diff --git a/source/ap/ksh93/ksh93.SlackBuild b/source/ap/ksh93/ksh93.SlackBuild
index af5614be7..5626a914d 100755
--- a/source/ap/ksh93/ksh93.SlackBuild
+++ b/source/ap/ksh93/ksh93.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -45,21 +45,12 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/source/ap/libx86/libx86.SlackBuild b/source/ap/libx86/libx86.SlackBuild
index cbf9f9867..2c6dfcd0f 100755
--- a/source/ap/libx86/libx86.SlackBuild
+++ b/source/ap/libx86/libx86.SlackBuild
@@ -64,6 +64,9 @@ else
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=int-conversion -Wno-error=incompatible-pointer-types"
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
diff --git a/source/ap/lxc/lxc-slackware.in b/source/ap/lxc/lxc-slackware.in
index 422fa1d82..c9678c183 100644
--- a/source/ap/lxc/lxc-slackware.in
+++ b/source/ap/lxc/lxc-slackware.in
@@ -146,6 +146,11 @@ sed -i "s,pg::powerokwait:/sbin/genpowerfail stop,pg::powerokwait:/sbin/shutdown
# create the library symlinks
chroot $rootfs ldconfig
+# Make sure that the certificate links are updated:
+if [ -x $rootfs/usr/sbin/update-ca-certificates ]; then
+ chroot $rootfs /bin/bash -c "LC_ALL=C /usr/sbin/update-ca-certificates"
+fi
+
# set a default combination for the luggage
echo "root:root" | chroot $rootfs chpasswd 2> /dev/null
echo "Root default password is 'root', please change it!"
@@ -238,6 +243,7 @@ bash
bin
bridge-utils
bzip2
+ca-certificates
coreutils
cracklib
cyrus-sasl
@@ -255,18 +261,25 @@ etc
eudev
findutils
gawk
+glibc-zoneinfo
+gnupg
gnupg2
gnutls
grep
gzip
hostname
+icu4c
iproute2
iptables
iputils
kmod
less
+libassuan
libcap-ng
libffi
+libgcrypt
+libgpg-error
+libksba
libmnl
libnl3
libpcap
@@ -280,16 +293,20 @@ net-tools
nettle
network-scripts
ncurses
+npth
pam
openssh
+openssl
openssl-solibs
p11-kit
+perl
pkgtools
procps-ng
sed
shadow
sharutils
slackpkg
+sqlite
sysklogd
sysvinit
sysvinit-functions
diff --git a/source/ap/lxc/lxc.SlackBuild b/source/ap/lxc/lxc.SlackBuild
index 69951be5f..a76649056 100755
--- a/source/ap/lxc/lxc.SlackBuild
+++ b/source/ap/lxc/lxc.SlackBuild
@@ -27,12 +27,12 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lxc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -49,14 +49,11 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -81,45 +78,38 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Our python package is not split:
-#sed -i "s|PKG_CHECK_MODULES(\[PYTHONDEV.*||" configure.ac || exit 1
-
-if [ ! -r configure ]; then
- NOCONFIGURE=1 ./autogen.sh
-fi
-
-# Enable python stuff only if python3 is installed.
-python=""
-# Python bindings don't seem to be part of the standard package at this time,
-# so we'll comment this next line out for now:
-#[ -x /usr/bin/python3 ] && export PYTHON=/usr/bin/python3 && python="--enable-python"
-
-# Configure:
-# lua is autodetected
-CFLAGS="$SLKCFLAGS -Wno-error=incompatible-pointer-types" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
--localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --infodir=/usr/info \
- --with-global-conf=/etc/lxc/lxc.conf \
- --with-rootfs-path=/var/lib/rootfs-lxc \
- --disable-werror \
- --disable-apparmor \
- --disable-static \
- $python \
- --enable-pam \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+ --buildtype=release \
+ -Ddoc-path=/usr/doc/$PKGNAM-$VERSION \
+ -Dglobal-config-path=/etc/lxc \
+ -Drootfs-mount-path=/var/lib/rootfs-lxc \
+ -Dapparmor=false \
+ -Dpam-cgroup=true \
+ -Dinit-script=sysvinit \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# The PAM module gets installed in the wrong location and there's no config
+# option to put it in the right place, so we'll do it ourselves:
+mkdir -p $PKG/lib${LIBDIRSUFFIX}
+mv $PKG/usr/lib${LIBDIRSUFFIX}/security $PKG/lib${LIBDIRSUFFIX}
# Add the template file:
cat $CWD/lxc-slackware.in > $PKG/usr/share/lxc/templates/lxc-slackware
@@ -138,10 +128,11 @@ mv $PKG/etc/default/lxc $PKG/etc/default/lxc.new
# Install an init script (non executable by default):
install -D -m 0644 $CWD/rc.lxc $PKG/etc/rc.d/rc.lxc.new
-# Put bash completion files in system directory:
-mkdir -p $PKG/usr/share/bash-completion/completions
-mv $PKG/etc/bash_completion.d/* $PKG/usr/share/bash-completion/completions
-rm -r $PKG/etc/bash_completion.d
+# Remove init scripts that we do not use:
+rm -r $PKG/etc/init.d
+
+# --disable-static
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a
# Strip binaries:
( cd $PKG
@@ -152,7 +143,7 @@ rm -r $PKG/etc/bash_completion.d
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* CONTRIBUTING* COPYING* INSTALL* MAINTAINERS* NEWS* README* TODO* \
+ AUTHORS* CODING_STYLE* CONTRIBUTING* COPYING* LICENSE* MAINTAINERS* README* \
doc/FAQ.txt \
$PKG/usr/doc/${PKGNAM}-$VERSION
diff --git a/source/ap/man-db/man-db.SlackBuild b/source/ap/man-db/man-db.SlackBuild
index 7868dfe40..749bb2477 100755
--- a/source/ap/man-db/man-db.SlackBuild
+++ b/source/ap/man-db/man-db.SlackBuild
@@ -8,7 +8,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=man-db
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
MAN2HTML=${MAN2HTML:-20180101}
@@ -62,7 +62,7 @@ MAN2HTML=${MAN2HTML:-20180101}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -82,21 +82,12 @@ OUTPUT=${OUTPUT:-$TMP}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/source/ap/man-db/man-db.cron b/source/ap/man-db/man-db.cron
index caf447742..a8be995ce 100644
--- a/source/ap/man-db/man-db.cron
+++ b/source/ap/man-db/man-db.cron
@@ -10,4 +10,4 @@ mkdir -p /var/cache/man
# Regenerate the index databases caches used by man-db.
# These increase perfomance and provide features such as whatis and apropos.
-ionice -c3 nice -n 19 /usr/bin/mandb --quiet
+ionice -c3 nice -n 19 /usr/bin/mandb -c --quiet
diff --git a/source/ap/man-pages/man-pages.SlackBuild b/source/ap/man-pages/man-pages.SlackBuild
index 7acba4656..1815fe88a 100755
--- a/source/ap/man-pages/man-pages.SlackBuild
+++ b/source/ap/man-pages/man-pages.SlackBuild
@@ -43,8 +43,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf man-pages-$VERSION
-tar xvf $CWD/man-pages-$VERSION.tar.?z
-tar xvf $CWD/man-pages-posix-*.tar.?z
+tar xvf $CWD/man-pages-$VERSION.tar.?z || exit 1
+tar xvf $CWD/man-pages-posix-*.tar.?z || exit 1
echo "Fixing permissions..."
chown -R root:root man-pages-$VERSION man-pages-posix-*
chmod -R a-s,u+rw,go+r-w man-pages-$VERSION man-pages-posix-*
@@ -59,8 +59,20 @@ find man-pages-posix-* \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-mkdir -p $PKG/usr/man
-cp -a man-pages-$VERSION/man* $PKG/usr/man
+# Wow, this new build system is something else.
+# Let's not use it.
+# cd man-pages-$VERSION || exit 1
+#make || exit 1
+#make install prefix=/usr DESTDIR=$PKG || exit 1
+#mv $PKG/usr/share/man $PKG/usr
+#rmdir $PKG/usr/share
+
+# Add the release version, which is about the only useful thing "make" does:
+sed -i "s/(unreleased)/$VERSION/g" man-pages-${VERSION}/man/man*/*
+
+# Install the man pages:
+mkdir -p $PKG/usr
+cp -a man-pages-${VERSION}/man $PKG/usr
# Are these other POSIX manpages of any real usefulness here?
# Granted there may be some historical interest, and it's nice
@@ -100,7 +112,7 @@ rm -r $TEMPDIR
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- man-pages-$VERSION/{CONTRIBUTING,Changes,README,man-pages-${VERSION}.Announce,man-pages-${VERSION}.lsm} \
+ man-pages-$VERSION/{CONTRIBUTING*,Changes,INSTALL,LICENSES*,README*,RELEASE,lsm} \
man-pages-posix-*/POSIX-COPYRIGHT \
$PKG/usr/doc/${PKGNAM}-$VERSION
diff --git a/source/ap/mariadb/mariadb.SlackBuild b/source/ap/mariadb/mariadb.SlackBuild
index bb563e246..a62aeb98a 100755
--- a/source/ap/mariadb/mariadb.SlackBuild
+++ b/source/ap/mariadb/mariadb.SlackBuild
@@ -30,7 +30,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mariadb
VERSION=${VERSION:-$(echo ${PKGNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# To reduce the package size, the embedded server may be omitted. Currently
# only amarok uses this. To build without embedded support, set this to NO.
@@ -50,7 +50,7 @@ KEEPTESTS=${KEEPTESTS:-NO}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -69,18 +69,15 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
fi
rm -rf $PKG
diff --git a/source/ap/mc/mc.SlackBuild b/source/ap/mc/mc.SlackBuild
index 71d9107b6..557d6829c 100755
--- a/source/ap/mc/mc.SlackBuild
+++ b/source/ap/mc/mc.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -46,12 +46,10 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
else
SLKCFLAGS="-O2"
fi
diff --git a/source/ap/moc/0011-ffmpeg-7.0.patch b/source/ap/moc/0011-ffmpeg-7.0.patch
new file mode 100644
index 000000000..a1ce6d7e4
--- /dev/null
+++ b/source/ap/moc/0011-ffmpeg-7.0.patch
@@ -0,0 +1,37 @@
+--- ./decoder_plugins/ffmpeg/ffmpeg.m4.orig 2022-10-09 12:44:06.000000000 -0500
++++ ./decoder_plugins/ffmpeg/ffmpeg.m4 2024-08-07 21:13:42.693200094 -0500
+@@ -44,7 +44,7 @@
+ LIBS="$LIBS $ffmpeg_LIBS"
+ AC_CHECK_MEMBERS([struct AVProbeData.mime_type], [], [],
+ [#include <libavformat/avformat.h>])
+- AC_CHECK_HEADERS([libavutil/channel_layout.h])
++ AC_CHECK_HEADERS([libavutil/ch_layout.h])
+ AC_SEARCH_LIBS(av_packet_alloc, avcodec,
+ [AC_DEFINE([HAVE_AV_PACKET_FNS], 1,
+ [Define to 1 if you have the `av_packet_*' functions.])])
+--- ./decoder_plugins/ffmpeg/ffmpeg.c.orig 2022-10-09 12:44:06.000000000 -0500
++++ ./decoder_plugins/ffmpeg/ffmpeg.c 2024-08-07 21:14:12.958229068 -0500
+@@ -35,9 +35,7 @@
+ #include <libavformat/avformat.h>
+ #include <libavutil/mathematics.h>
+ #if HAVE_LIBAVUTIL_CHANNEL_LAYOUT_H
+-# include <libavutil/channel_layout.h>
+-#else
+-# include <libavutil/audioconvert.h>
++# include <libavutil/ch_layout.h>
+ #endif
+
+ /* FFmpeg also likes common names, without that, our common.h and log.h
+@@ -561,10 +559,10 @@
+ /* Downmix multi-channel audios to stereo. */
+ static void set_downmixing (struct ffmpeg_data *data)
+ {
+- if (av_get_channel_layout_nb_channels (data->enc->channel_layout) <= 2)
++ if (av_get_ch_layout_nb_channels (data->enc->ch_layout) <= 2)
+ return;
+
+- data->enc->request_channel_layout = AV_CH_LAYOUT_STEREO;
++ data->enc->request_ch_layout = AV_CH_LAYOUT_STEREO;
+ }
+
+ static int ffmpeg_io_read_cb (void *s, uint8_t *buf, int count)
diff --git a/source/ap/moc/moc.SlackBuild b/source/ap/moc/moc.SlackBuild
index 673f9c28e..7c8a58131 100755
--- a/source/ap/moc/moc.SlackBuild
+++ b/source/ap/moc/moc.SlackBuild
@@ -24,12 +24,12 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=moc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -46,14 +46,11 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -88,6 +85,10 @@ cat $CWD/0007-cur-dts.patch | patch -p1 --verbose || exit 1
cat $CWD/0008-Rename-configure.in-to-configure.ac.patch | patch -p1 --verbose || exit 1
cat $CWD/0009-Add-https-to-is_url.patch | patch -p1 --verbose || exit 1
cat $CWD/0010-ffmpeg-6.0.patch | patch -p1 --verbose || exit 1
+cat $CWD/0011-ffmpeg-7.0.patch | patch -p1 --verbose || exit 1
+
+# We have a partial patch for ffmpeg7, but it still hits compile errors.
+# We'll disable it pending a complete fix.
# Configure:
if [ ! -r configure ]; then
@@ -97,7 +98,7 @@ if [ ! -r configure ]; then
autoreconf -vif
fi
fi
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=implicit-function-declaration" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -105,6 +106,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--infodir=/usr/info \
+ --without-ffmpeg \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
diff --git a/source/ap/mpg123/mpg123.SlackBuild b/source/ap/mpg123/mpg123.SlackBuild
index 262184756..496eae0d1 100755
--- a/source/ap/mpg123/mpg123.SlackBuild
+++ b/source/ap/mpg123/mpg123.SlackBuild
@@ -30,7 +30,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -40,16 +40,12 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
- TARGET="x86"
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- TARGET=""
+ TARGET="sse"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
TARGET="x86-64"
elif [ "$ARCH" = "arm" ]; then
diff --git a/source/ap/nano/nano.SlackBuild b/source/ap/nano/nano.SlackBuild
index a9b7b28a8..385e0c02e 100755
--- a/source/ap/nano/nano.SlackBuild
+++ b/source/ap/nano/nano.SlackBuild
@@ -31,7 +31,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -46,16 +46,13 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
ARCHQUADLET=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
ARCHQUADLET=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
ARCHQUADLET=""
elif [ "$ARCH" = "arm" ]; then
diff --git a/source/ap/nvme-cli/nvme-cli.SlackBuild b/source/ap/nvme-cli/nvme-cli.SlackBuild
index a7f5e5b11..141f02554 100755
--- a/source/ap/nvme-cli/nvme-cli.SlackBuild
+++ b/source/ap/nvme-cli/nvme-cli.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -47,21 +47,12 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/source/ap/rpm/rpm.SlackBuild b/source/ap/rpm/rpm.SlackBuild
index 400832a04..48ed1fbeb 100755
--- a/source/ap/rpm/rpm.SlackBuild
+++ b/source/ap/rpm/rpm.SlackBuild
@@ -26,14 +26,14 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=rpm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -52,10 +52,10 @@ if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
elif [ "$ARCH" = "arm" ]; then
SLKCFLAGS="-O2 -march=armv4 -mtune=xscale"
diff --git a/source/ap/rzip/rzip.SlackBuild b/source/ap/rzip/rzip.SlackBuild
index 716b98ec0..352efbce2 100755
--- a/source/ap/rzip/rzip.SlackBuild
+++ b/source/ap/rzip/rzip.SlackBuild
@@ -55,6 +55,9 @@ else
SLKCFLAGS="-O2"
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=implicit-int"
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-rzip
diff --git a/source/ap/sc-im/sc-im.SlackBuild b/source/ap/sc-im/sc-im.SlackBuild
index b48e8fa7f..513754d69 100755
--- a/source/ap/sc-im/sc-im.SlackBuild
+++ b/source/ap/sc-im/sc-im.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -47,26 +47,20 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+export CFLAGS="$SLKCFLAGS -Wno-error=implicit-function-declaration"
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -91,7 +85,7 @@ sed -i "s,/usr/local,/usr,g" Makefile
sed -i "s,name = scim,name = sc-im,g" Makefile
# Fix mandir:
sed -i "s,share/man/man1,man/man1,g" Makefile
-make || exit 1
+make $NUMJOBS || exit 1
make install DESTDIR=$PKG
# Strip binaries:
diff --git a/source/ap/sc/sc.SlackBuild b/source/ap/sc/sc.SlackBuild
index 77f5cbf98..b815dd55f 100755
--- a/source/ap/sc/sc.SlackBuild
+++ b/source/ap/sc/sc.SlackBuild
@@ -87,6 +87,7 @@ find . \
# Old software, modern compiler:
zcat $CWD/sc-7.16-3.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/sc.gcc14.diff.gz | patch -p1 --verbose || exit 1
# Build:
make $NUMJOBS || exit 1
diff --git a/source/ap/sc/sc.gcc14.diff b/source/ap/sc/sc.gcc14.diff
new file mode 100644
index 000000000..25c9f1e0b
--- /dev/null
+++ b/source/ap/sc/sc.gcc14.diff
@@ -0,0 +1,11 @@
+--- ./Makefile.orig 2024-05-11 16:51:27.919158388 -0500
++++ ./Makefile 2024-05-11 16:53:10.235160676 -0500
+@@ -336,7 +336,7 @@
+ # real effect on the reliability of the program, but may concern some
+ # people who don't understand them.
+ #CFLAGS=-DSYSV3 -O2 -Wall -pipe
+-CFLAGS=-DSYSV3 -O2 -pipe
++CFLAGS=-DSYSV3 -O2 -pipe -Wno-error=implicit-function-declaration -Wno-error=implicit-int
+ LIB=-lm -lncurses
+
+ # All of the source files
diff --git a/source/ap/scdoc/scdoc.SlackBuild b/source/ap/scdoc/scdoc.SlackBuild
new file mode 100755
index 000000000..d0515a9a1
--- /dev/null
+++ b/source/ap/scdoc/scdoc.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=scdoc
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i686 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+CFLAGS="$SLKCFLAGS" \
+PREFIX=/usr \
+MANDIR=/usr/man \
+make $NUMJOBS || exit 1
+
+CFLAGS="$SLKCFLAGS" \
+DESTDIR=$PKG \
+PREFIX=/usr \
+MANDIR=/usr/man \
+make install || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ COPYING* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/ap/scdoc/scdoc.url b/source/ap/scdoc/scdoc.url
new file mode 100644
index 000000000..4126b0cf5
--- /dev/null
+++ b/source/ap/scdoc/scdoc.url
@@ -0,0 +1,2 @@
+https://git.sr.ht/~sircmpwn/scdoc
+https://git.sr.ht/~sircmpwn/scdoc/archive/1.11.3.tar.gz
diff --git a/source/ap/scdoc/slack-desc b/source/ap/scdoc/slack-desc
new file mode 100644
index 000000000..660f9bde8
--- /dev/null
+++ b/source/ap/scdoc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+scdoc: scdoc (simple man page generator)
+scdoc:
+scdoc: scdoc is a simple man page generator for POSIX systems written in C99.
+scdoc:
+scdoc: Homepage: https://git.sr.ht/~sircmpwn/scdoc
+scdoc:
+scdoc:
+scdoc:
+scdoc:
+scdoc:
+scdoc:
diff --git a/source/ap/screen/26source_encoding.patch b/source/ap/screen/26source_encoding.patch
deleted file mode 100644
index 1094ac518..000000000
--- a/source/ap/screen/26source_encoding.patch
+++ /dev/null
@@ -1,353 +0,0 @@
-Author: Ben Finney <ben@benfinney.id.au>
-Description: Replace the composed characters with their respective description.
---- a/process.c
-+++ b/process.c
-@@ -250,177 +250,177 @@
-
- /* digraph table taken from old vim and rfc1345 */
- static struct digraph digraphs[MAX_DIGRAPH + 1] = {
-- {{' ', ' '}, 160}, /* */
-- {{'N', 'S'}, 160}, /* */
-- {{'~', '!'}, 161}, /* */
-- {{'!', '!'}, 161}, /* */
-- {{'!', 'I'}, 161}, /* */
-- {{'c', '|'}, 162}, /* */
-- {{'c', 't'}, 162}, /* */
-- {{'$', '$'}, 163}, /* */
-- {{'P', 'd'}, 163}, /* */
-- {{'o', 'x'}, 164}, /* */
-- {{'C', 'u'}, 164}, /* */
-- {{'C', 'u'}, 164}, /* */
-- {{'E', 'u'}, 164}, /* */
-- {{'Y', '-'}, 165}, /* */
-- {{'Y', 'e'}, 165}, /* */
-- {{'|', '|'}, 166}, /* */
-- {{'B', 'B'}, 166}, /* */
-- {{'p', 'a'}, 167}, /* */
-- {{'S', 'E'}, 167}, /* */
-- {{'"', '"'}, 168}, /* */
-- {{'\'', ':'}, 168}, /* */
-- {{'c', 'O'}, 169}, /* */
-- {{'C', 'o'}, 169}, /* */
-- {{'a', '-'}, 170}, /* */
-- {{'<', '<'}, 171}, /* */
-- {{'-', ','}, 172}, /* */
-- {{'N', 'O'}, 172}, /* */
-- {{'-', '-'}, 173}, /* */
-- {{'r', 'O'}, 174}, /* */
-- {{'R', 'g'}, 174}, /* */
-- {{'-', '='}, 175}, /* */
-- {{'\'', 'm'}, 175}, /* */
-- {{'~', 'o'}, 176}, /* */
-- {{'D', 'G'}, 176}, /* */
-- {{'+', '-'}, 177}, /* */
-- {{'2', '2'}, 178}, /* */
-- {{'2', 'S'}, 178}, /* */
-- {{'3', '3'}, 179}, /* */
-- {{'3', 'S'}, 179}, /* */
-- {{'\'', '\''}, 180}, /* */
-- {{'j', 'u'}, 181}, /* */
-- {{'M', 'y'}, 181}, /* */
-- {{'p', 'p'}, 182}, /* */
-- {{'P', 'I'}, 182}, /* */
-- {{'~', '.'}, 183}, /* */
-- {{'.', 'M'}, 183}, /* */
-- {{',', ','}, 184}, /* */
-- {{'\'', ','}, 184}, /* */
-- {{'1', '1'}, 185}, /* */
-- {{'1', 'S'}, 185}, /* */
-- {{'o', '-'}, 186}, /* */
-- {{'>', '>'}, 187}, /* */
-- {{'1', '4'}, 188}, /* */
-- {{'1', '2'}, 189}, /* */
-- {{'3', '4'}, 190}, /* */
-- {{'~', '?'}, 191}, /* */
-- {{'?', '?'}, 191}, /* */
-- {{'?', 'I'}, 191}, /* */
-- {{'A', '`'}, 192}, /* */
-- {{'A', '!'}, 192}, /* */
-- {{'A', '\''}, 193}, /* */
-- {{'A', '^'}, 194}, /* */
-- {{'A', '>'}, 194}, /* */
-- {{'A', '~'}, 195}, /* */
-- {{'A', '?'}, 195}, /* */
-- {{'A', '"'}, 196}, /* */
-- {{'A', ':'}, 196}, /* */
-- {{'A', '@'}, 197}, /* */
-- {{'A', 'A'}, 197}, /* */
-- {{'A', 'E'}, 198}, /* */
-- {{'C', ','}, 199}, /* */
-- {{'E', '`'}, 200}, /* */
-- {{'E', '!'}, 200}, /* */
-- {{'E', '\''}, 201}, /* */
-- {{'E', '^'}, 202}, /* */
-- {{'E', '>'}, 202}, /* */
-- {{'E', '"'}, 203}, /* */
-- {{'E', ':'}, 203}, /* */
-- {{'I', '`'}, 204}, /* */
-- {{'I', '!'}, 204}, /* */
-- {{'I', '\''}, 205}, /* */
-- {{'I', '^'}, 206}, /* */
-- {{'I', '>'}, 206}, /* */
-- {{'I', '"'}, 207}, /* */
-- {{'I', ':'}, 207}, /* */
-- {{'D', '-'}, 208}, /* */
-- {{'N', '~'}, 209}, /* */
-- {{'N', '?'}, 209}, /* */
-- {{'O', '`'}, 210}, /* */
-- {{'O', '!'}, 210}, /* */
-- {{'O', '\''}, 211}, /* */
-- {{'O', '^'}, 212}, /* */
-- {{'O', '>'}, 212}, /* */
-- {{'O', '~'}, 213}, /* */
-- {{'O', '?'}, 213}, /* */
-- {{'O', '"'}, 214}, /* */
-- {{'O', ':'}, 214}, /* */
-- {{'/', '\\'}, 215}, /* */
-- {{'*', 'x'}, 215}, /* */
-- {{'O', '/'}, 216}, /* */
-- {{'U', '`'}, 217}, /* */
-- {{'U', '!'}, 217}, /* */
-- {{'U', '\''}, 218}, /* */
-- {{'U', '^'}, 219}, /* */
-- {{'U', '>'}, 219}, /* */
-- {{'U', '"'}, 220}, /* */
-- {{'U', ':'}, 220}, /* */
-- {{'Y', '\''}, 221}, /* */
-- {{'I', 'p'}, 222}, /* */
-- {{'T', 'H'}, 222}, /* */
-- {{'s', 's'}, 223}, /* */
-- {{'s', '"'}, 223}, /* */
-- {{'a', '`'}, 224}, /* */
-- {{'a', '!'}, 224}, /* */
-- {{'a', '\''}, 225}, /* */
-- {{'a', '^'}, 226}, /* */
-- {{'a', '>'}, 226}, /* */
-- {{'a', '~'}, 227}, /* */
-- {{'a', '?'}, 227}, /* */
-- {{'a', '"'}, 228}, /* */
-- {{'a', ':'}, 228}, /* */
-- {{'a', 'a'}, 229}, /* */
-- {{'a', 'e'}, 230}, /* */
-- {{'c', ','}, 231}, /* */
-- {{'e', '`'}, 232}, /* */
-- {{'e', '!'}, 232}, /* */
-- {{'e', '\''}, 233}, /* */
-- {{'e', '^'}, 234}, /* */
-- {{'e', '>'}, 234}, /* */
-- {{'e', '"'}, 235}, /* */
-- {{'e', ':'}, 235}, /* */
-- {{'i', '`'}, 236}, /* */
-- {{'i', '!'}, 236}, /* */
-- {{'i', '\''}, 237}, /* */
-- {{'i', '^'}, 238}, /* */
-- {{'i', '>'}, 238}, /* */
-- {{'i', '"'}, 239}, /* */
-- {{'i', ':'}, 239}, /* */
-- {{'d', '-'}, 240}, /* */
-- {{'n', '~'}, 241}, /* */
-- {{'n', '?'}, 241}, /* */
-- {{'o', '`'}, 242}, /* */
-- {{'o', '!'}, 242}, /* */
-- {{'o', '\''}, 243}, /* */
-- {{'o', '^'}, 244}, /* */
-- {{'o', '>'}, 244}, /* */
-- {{'o', '~'}, 245}, /* */
-- {{'o', '?'}, 245}, /* */
-- {{'o', '"'}, 246}, /* */
-- {{'o', ':'}, 246}, /* */
-- {{':', '-'}, 247}, /* */
-- {{'o', '/'}, 248}, /* */
-- {{'u', '`'}, 249}, /* */
-- {{'u', '!'}, 249}, /* */
-- {{'u', '\''}, 250}, /* */
-- {{'u', '^'}, 251}, /* */
-- {{'u', '>'}, 251}, /* */
-- {{'u', '"'}, 252}, /* */
-- {{'u', ':'}, 252}, /* */
-- {{'y', '\''}, 253}, /* */
-- {{'i', 'p'}, 254}, /* */
-- {{'t', 'h'}, 254}, /* */
-- {{'y', '"'}, 255}, /* */
-- {{'y', ':'}, 255}, /* */
-- {{'"', '['}, 196}, /* */
-- {{'"', '\\'}, 214}, /* */
-- {{'"', ']'}, 220}, /* */
-- {{'"', '{'}, 228}, /* */
-- {{'"', '|'}, 246}, /* */
-- {{'"', '}'}, 252}, /* */
-- {{'"', '~'}, 223} /* */
-+ {{' ', ' '}, 0x00a0}, /* NO-BREAK SPACE */
-+ {{'N', 'S'}, 0x00a0}, /* NO-BREAK SPACE */
-+ {{'~', '!'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */
-+ {{'!', '!'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */
-+ {{'!', 'I'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */
-+ {{'c', '|'}, 0x00a2}, /* CENT SIGN */
-+ {{'c', 't'}, 0x00a2}, /* CENT SIGN */
-+ {{'$', '$'}, 0x00a3}, /* POUND SIGN */
-+ {{'P', 'd'}, 0x00a3}, /* POUND SIGN */
-+ {{'o', 'x'}, 0x00a4}, /* CURRENCY SIGN */
-+ {{'C', 'u'}, 0x00a4}, /* CURRENCY SIGN */
-+ {{'C', 'u'}, 0x00a4}, /* CURRENCY SIGN */
-+ {{'E', 'u'}, 0x00a4}, /* CURRENCY SIGN */
-+ {{'Y', '-'}, 0x00a5}, /* YEN SIGN */
-+ {{'Y', 'e'}, 0x00a5}, /* YEN SIGN */
-+ {{'|', '|'}, 0x00a6}, /* BROKEN BAR */
-+ {{'B', 'B'}, 0x00a6}, /* BROKEN BAR */
-+ {{'p', 'a'}, 0x00a7}, /* SECTION SIGN */
-+ {{'S', 'E'}, 0x00a7}, /* SECTION SIGN */
-+ {{'"', '"'}, 0x00a8}, /* DIAERESIS */
-+ {{'\'', ':'}, 0x00a8}, /* DIAERESIS */
-+ {{'c', 'O'}, 0x00a9}, /* COPYRIGHT SIGN */
-+ {{'C', 'o'}, 0x00a9}, /* COPYRIGHT SIGN */
-+ {{'-', 'a'}, 0x00aa}, /* FEMININE ORDINAL INDICATOR */
-+ {{'<', '<'}, 0x00ab}, /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */
-+ {{'-', ','}, 0x00ac}, /* NOT SIGN */
-+ {{'N', 'O'}, 0x00ac}, /* NOT SIGN */
-+ {{'-', '-'}, 0x00ad}, /* SOFT HYPHEN */
-+ {{'r', 'O'}, 0x00ae}, /* REGISTERED SIGN */
-+ {{'R', 'g'}, 0x00ae}, /* REGISTERED SIGN */
-+ {{'-', '='}, 0x00af}, /* MACRON */
-+ {{'\'', 'm'}, 0x00af}, /* MACRON */
-+ {{'~', 'o'}, 0x00b0}, /* DEGREE SIGN */
-+ {{'D', 'G'}, 0x00b0}, /* DEGREE SIGN */
-+ {{'+', '-'}, 0x00b1}, /* PLUS-MINUS SIGN */
-+ {{'2', '2'}, 0x00b2}, /* SUPERSCRIPT TWO */
-+ {{'2', 'S'}, 0x00b2}, /* SUPERSCRIPT TWO */
-+ {{'3', '3'}, 0x00b3}, /* SUPERSCRIPT THREE */
-+ {{'3', 'S'}, 0x00b3}, /* SUPERSCRIPT THREE */
-+ {{'\'', '\''}, 0x00b4}, /* ACUTE ACCENT */
-+ {{'j', 'u'}, 0x00b5}, /* MICRO SIGN */
-+ {{'M', 'y'}, 0x00b5}, /* MICRO SIGN */
-+ {{'p', 'p'}, 0x00b6}, /* PILCROW SIGN */
-+ {{'P', 'I'}, 0x00b6}, /* PILCROW SIGN */
-+ {{'~', '.'}, 0x00b7}, /* MIDDLE DOT */
-+ {{'.', 'M'}, 0x00b7}, /* MIDDLE DOT */
-+ {{',', ','}, 0x00b8}, /* CEDILLA */
-+ {{'\'', ','}, 0x00b8}, /* CEDILLA */
-+ {{'1', '1'}, 0x00b9}, /* SUPERSCRIPT ONE */
-+ {{'1', 'S'}, 0x00b9}, /* SUPERSCRIPT ONE */
-+ {{'-', 'o'}, 0x00ba}, /* MASCULINE ORDINAL INDICATOR */
-+ {{'>', '>'}, 0x00bb}, /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */
-+ {{'1', '4'}, 0x00bc}, /* VULGAR FRACTION ONE QUARTER */
-+ {{'1', '2'}, 0x00bd}, /* VULGAR FRACTION ONE HALF */
-+ {{'3', '4'}, 0x00be}, /* VULGAR FRACTION THREE QUARTERS */
-+ {{'~', '?'}, 0x00bf}, /* INVERTED QUESTION MARK */
-+ {{'?', '?'}, 0x00bf}, /* INVERTED QUESTION MARK */
-+ {{'?', 'I'}, 0x00bf}, /* INVERTED QUESTION MARK */
-+ {{'A', '`'}, 0x00c0}, /* LATIN CAPITAL LETTER A WITH GRAVE */
-+ {{'A', '!'}, 0x00c0}, /* LATIN CAPITAL LETTER A WITH GRAVE */
-+ {{'A', '\''}, 0x00c1}, /* LATIN CAPITAL LETTER A WITH ACUTE */
-+ {{'A', '^'}, 0x00c2}, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */
-+ {{'A', '>'}, 0x00c2}, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */
-+ {{'A', '~'}, 0x00c3}, /* LATIN CAPITAL LETTER A WITH TILDE */
-+ {{'A', '?'}, 0x00c3}, /* LATIN CAPITAL LETTER A WITH TILDE */
-+ {{'A', '"'}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */
-+ {{'A', ':'}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */
-+ {{'A', '@'}, 0x00c5}, /* LATIN CAPITAL LETTER A WITH RING ABOVE */
-+ {{'A', 'A'}, 0x00c5}, /* LATIN CAPITAL LETTER A WITH RING ABOVE */
-+ {{'A', 'E'}, 0x00c6}, /* LATIN CAPITAL LETTER AE */
-+ {{'C', ','}, 0x00c7}, /* LATIN CAPITAL LETTER C WITH CEDILLA */
-+ {{'E', '`'}, 0x00c8}, /* LATIN CAPITAL LETTER E WITH GRAVE */
-+ {{'E', '!'}, 0x00c8}, /* LATIN CAPITAL LETTER E WITH GRAVE */
-+ {{'E', '\''}, 0x00c9}, /* LATIN CAPITAL LETTER E WITH ACUTE */
-+ {{'E', '^'}, 0x00ca}, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */
-+ {{'E', '>'}, 0x00ca}, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */
-+ {{'E', '"'}, 0x00cb}, /* LATIN CAPITAL LETTER E WITH DIAERESIS */
-+ {{'E', ':'}, 0x00cb}, /* LATIN CAPITAL LETTER E WITH DIAERESIS */
-+ {{'I', '`'}, 0x00cc}, /* LATIN CAPITAL LETTER I WITH GRAVE */
-+ {{'I', '!'}, 0x00cc}, /* LATIN CAPITAL LETTER I WITH GRAVE */
-+ {{'I', '\''}, 0x00cd}, /* LATIN CAPITAL LETTER I WITH ACUTE */
-+ {{'I', '^'}, 0x00ce}, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */
-+ {{'I', '>'}, 0x00ce}, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */
-+ {{'I', '"'}, 0x00cf}, /* LATIN CAPITAL LETTER I WITH DIAERESIS */
-+ {{'I', ':'}, 0x00cf}, /* LATIN CAPITAL LETTER I WITH DIAERESIS */
-+ {{'D', '-'}, 0x00d0}, /* LATIN CAPITAL LETTER ETH */
-+ {{'N', '~'}, 0x00d1}, /* LATIN CAPITAL LETTER N WITH TILDE */
-+ {{'N', '?'}, 0x00d1}, /* LATIN CAPITAL LETTER N WITH TILDE */
-+ {{'O', '`'}, 0x00d2}, /* LATIN CAPITAL LETTER O WITH GRAVE */
-+ {{'O', '!'}, 0x00d2}, /* LATIN CAPITAL LETTER O WITH GRAVE */
-+ {{'O', '\''}, 0x00d3}, /* LATIN CAPITAL LETTER O WITH ACUTE */
-+ {{'O', '^'}, 0x00d4}, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */
-+ {{'O', '>'}, 0x00d4}, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */
-+ {{'O', '~'}, 0x00d5}, /* LATIN CAPITAL LETTER O WITH TILDE */
-+ {{'O', '?'}, 0x00d5}, /* LATIN CAPITAL LETTER O WITH TILDE */
-+ {{'O', '"'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */
-+ {{'O', ':'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */
-+ {{'/', '\\'}, 0x00d7}, /* MULTIPLICATION SIGN */
-+ {{'*', 'x'}, 0x00d7}, /* MULTIPLICATION SIGN */
-+ {{'O', '/'}, 0x00d8}, /* LATIN CAPITAL LETTER O WITH STROKE */
-+ {{'U', '`'}, 0x00d9}, /* LATIN CAPITAL LETTER U WITH GRAVE */
-+ {{'U', '!'}, 0x00d9}, /* LATIN CAPITAL LETTER U WITH GRAVE */
-+ {{'U', '\''}, 0x00da}, /* LATIN CAPITAL LETTER U WITH ACUTE */
-+ {{'U', '^'}, 0x00db}, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */
-+ {{'U', '>'}, 0x00db}, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */
-+ {{'U', '"'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */
-+ {{'U', ':'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */
-+ {{'Y', '\''}, 0x00dd}, /* LATIN CAPITAL LETTER Y WITH ACUTE */
-+ {{'I', 'p'}, 0x00de}, /* LATIN CAPITAL LETTER THORN */
-+ {{'T', 'H'}, 0x00de}, /* LATIN CAPITAL LETTER THORN */
-+ {{'s', 's'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */
-+ {{'s', '"'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */
-+ {{'a', '`'}, 0x00e0}, /* LATIN SMALL LETTER A WITH GRAVE */
-+ {{'a', '!'}, 0x00e0}, /* LATIN SMALL LETTER A WITH GRAVE */
-+ {{'a', '\''}, 0x00e1}, /* LATIN SMALL LETTER A WITH ACUTE */
-+ {{'a', '^'}, 0x00e2}, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */
-+ {{'a', '>'}, 0x00e2}, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */
-+ {{'a', '~'}, 0x00e3}, /* LATIN SMALL LETTER A WITH TILDE */
-+ {{'a', '?'}, 0x00e3}, /* LATIN SMALL LETTER A WITH TILDE */
-+ {{'a', '"'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */
-+ {{'a', ':'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */
-+ {{'a', 'a'}, 0x00e5}, /* LATIN SMALL LETTER A WITH RING ABOVE */
-+ {{'a', 'e'}, 0x00e6}, /* LATIN SMALL LETTER AE */
-+ {{'c', ','}, 0x00e7}, /* LATIN SMALL LETTER C WITH CEDILLA */
-+ {{'e', '`'}, 0x00e8}, /* LATIN SMALL LETTER E WITH GRAVE */
-+ {{'e', '!'}, 0x00e8}, /* LATIN SMALL LETTER E WITH GRAVE */
-+ {{'e', '\''}, 0x00e9}, /* LATIN SMALL LETTER E WITH ACUTE */
-+ {{'e', '^'}, 0x00ea}, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */
-+ {{'e', '>'}, 0x00ea}, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */
-+ {{'e', '"'}, 0x00eb}, /* LATIN SMALL LETTER E WITH DIAERESIS */
-+ {{'e', ':'}, 0x00eb}, /* LATIN SMALL LETTER E WITH DIAERESIS */
-+ {{'i', '`'}, 0x00ec}, /* LATIN SMALL LETTER I WITH GRAVE */
-+ {{'i', '!'}, 0x00ec}, /* LATIN SMALL LETTER I WITH GRAVE */
-+ {{'i', '\''}, 0x00ed}, /* LATIN SMALL LETTER I WITH ACUTE */
-+ {{'i', '^'}, 0x00ee}, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */
-+ {{'i', '>'}, 0x00ee}, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */
-+ {{'i', '"'}, 0x00ef}, /* LATIN SMALL LETTER I WITH DIAERESIS */
-+ {{'i', ':'}, 0x00ef}, /* LATIN SMALL LETTER I WITH DIAERESIS */
-+ {{'d', '-'}, 0x00f0}, /* LATIN SMALL LETTER ETH */
-+ {{'n', '~'}, 0x00f1}, /* LATIN SMALL LETTER N WITH TILDE */
-+ {{'n', '?'}, 0x00f1}, /* LATIN SMALL LETTER N WITH TILDE */
-+ {{'o', '`'}, 0x00f2}, /* LATIN SMALL LETTER O WITH GRAVE */
-+ {{'o', '!'}, 0x00f2}, /* LATIN SMALL LETTER O WITH GRAVE */
-+ {{'o', '\''}, 0x00f3}, /* LATIN SMALL LETTER O WITH ACUTE */
-+ {{'o', '^'}, 0x00f4}, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */
-+ {{'o', '>'}, 0x00f4}, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */
-+ {{'o', '~'}, 0x00f5}, /* LATIN SMALL LETTER O WITH TILDE */
-+ {{'o', '?'}, 0x00f5}, /* LATIN SMALL LETTER O WITH TILDE */
-+ {{'o', '"'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */
-+ {{'o', ':'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */
-+ {{'-', ':'}, 0x00f7}, /* DIVISION SIGN */
-+ {{'o', '/'}, 0x00f8}, /* LATIN SMALL LETTER O WITH STROKE */
-+ {{'u', '`'}, 0x00f9}, /* LATIN SMALL LETTER U WITH GRAVE */
-+ {{'u', '!'}, 0x00f9}, /* LATIN SMALL LETTER U WITH GRAVE */
-+ {{'u', '\''}, 0x00fa}, /* LATIN SMALL LETTER U WITH ACUTE */
-+ {{'u', '^'}, 0x00fb}, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */
-+ {{'u', '>'}, 0x00fb}, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */
-+ {{'u', '"'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */
-+ {{'u', ':'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */
-+ {{'y', '\''}, 0x00fd}, /* LATIN SMALL LETTER Y WITH ACUTE */
-+ {{'i', 'p'}, 0x00fe}, /* LATIN SMALL LETTER THORN */
-+ {{'t', 'h'}, 0x00fe}, /* LATIN SMALL LETTER THORN */
-+ {{'y', '"'}, 0x00ff}, /* LATIN SMALL LETTER Y WITH DIAERESIS */
-+ {{'y', ':'}, 0x00ff}, /* LATIN SMALL LETTER Y WITH DIAERESIS */
-+ {{'"', '['}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */
-+ {{'"', '\\'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */
-+ {{'"', ']'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */
-+ {{'"', '{'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */
-+ {{'"', '|'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */
-+ {{'"', '}'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */
-+ {{'"', '~'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */
- };
-
- #define RESIZE_FLAG_H 1
diff --git a/source/ap/screen/45suppress_remap.patch b/source/ap/screen/45suppress_remap.patch
deleted file mode 100644
index 85109a2ef..000000000
--- a/source/ap/screen/45suppress_remap.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Author: Loic Minier <lool@dooz.org>
-Description: Unbreak several useful keybindings.
---- a/termcap.c
-+++ b/termcap.c
-@@ -552,8 +552,6 @@
- else
- break;
- }
-- if (n < KMAP_KEYS)
-- domap = 1;
- if (map == 0 && domap)
- return 0;
- if (map && !domap)
diff --git a/source/ap/screen/52fix_screen_utf8_nfd.patch b/source/ap/screen/52fix_screen_utf8_nfd.patch
deleted file mode 100644
index 0aa72d5ed..000000000
--- a/source/ap/screen/52fix_screen_utf8_nfd.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-## 52fix_screen_utf8_nfd.dpatch by Nobuhiro Iwamatsu <iwamatsu@debian.org>
-##
-## DP: screen outputs screen "ÿ" after a connected character.
-## DP: This is a character without the need.
-## DP: This happens in UTF-8 environment.
-## DP: Before : screen$ ruby1.9.1 -e 'puts "\u304b\u3099.."'
-## DP: がÿ...
-## DP: patch applied : screen $ ruby1.9.1 -e 'puts "\u304b\u3099.."'
-## DP: が..
-## DP: Report from http://d.hatena.ne.jp/mrkn/20101014/fix_screen_utf8_nfd_bug
-## DP: Copyright Kenta Murata (mrkn) <mrkn@ruby-lang.org>
-## DP: Modified by Nobuhiro Iwamatsu <iwamatsu@debian.org>
-
-Index: screen/ansi.c
-===================================================================
---- screen.orig/ansi.c 2012-03-20 22:15:02.000000000 +0100
-+++ screen/ansi.c 2012-03-20 22:41:45.000000000 +0100
-@@ -725,6 +725,10 @@
- LPutChar(&curr->w_layer, &omc, ox, oy);
- LGotoPos(&curr->w_layer, curr->w_x, curr->w_y);
- }
-+ if (curr->w_mbcs)
-+ {
-+ curr->w_rend.mbcs = curr->w_mbcs = 0;
-+ }
- break;
- }
- font = curr->w_rend.font;
-Index: screen/display.c
-===================================================================
---- screen.orig/display.c 2012-03-20 22:41:28.000000000 +0100
-+++ screen/display.c 2012-03-20 22:41:45.000000000 +0100
-@@ -603,7 +603,7 @@
- D_x += D_AM ? 1 : -1;
- D_mbcs = 0;
- }
-- else if (utf8_isdouble(c))
-+ else if (utf8_isdouble(c) || (c >= 0xd800 && c < 0xe000))
- {
- D_mbcs = c;
- D_x++;
diff --git a/source/ap/screen/screen.SlackBuild b/source/ap/screen/screen.SlackBuild
index b781023dc..3353606c8 100755
--- a/source/ap/screen/screen.SlackBuild
+++ b/source/ap/screen/screen.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2022, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,12 +24,12 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=screen
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -44,14 +44,11 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -78,10 +75,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Apply patches taken from Debian:
+# Apply patches^H^H taken from Debian:
for pf in \
- 26source_encoding.patch.gz \
- 45suppress_remap.patch.gz \
52fix_screen_utf8_nfd.patch.gz \
; do zcat $CWD/$pf | patch --verbose -p1 || exit 1
done
diff --git a/source/ap/seejpeg/seejpeg.SlackBuild b/source/ap/seejpeg/seejpeg.SlackBuild
index cb3ba4adb..6bb06e2a1 100755
--- a/source/ap/seejpeg/seejpeg.SlackBuild
+++ b/source/ap/seejpeg/seejpeg.SlackBuild
@@ -73,7 +73,7 @@ find . \
( cd libjpeg-6a ; ./configure ; make || exit 1 ) || exit 1
ln -sf libjpeg-6a jpeglib
-make seejpeg || exit 1
+CFLAGS="-Wno-error=incompatible-pointer-types" make seejpeg || exit 1
strip seejpeg
cat seejpeg > $PKG/usr/bin/seejpeg
@@ -89,4 +89,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
# Build the package:
cd $PKG
/sbin/makepkg -l y -c n $TMP/seejpeg-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/ap/slackpkg/files/core-functions.sh b/source/ap/slackpkg/files/core-functions.sh
index ede3d3f42..626a9b8e8 100644
--- a/source/ap/slackpkg/files/core-functions.sh
+++ b/source/ap/slackpkg/files/core-functions.sh
@@ -31,6 +31,17 @@ One or more errors occurred while slackpkg was running:
}
trap 'cleanup' 2 14 15 # trap CTRL+C and kill
+# Define which version of gnupg to use. We'll prefer gpg1 since it has fewer
+# dependencies, then gpg2, and if we don't find that we'll blindly set this
+# to gpg and deal with it later.
+if which gpg1 > /dev/null 2> /dev/null ; then
+ GPG=gpg1
+elif which gpg2 > /dev/null 2> /dev/null ; then
+ GPG=gpg2
+else
+ GPG=gpg
+fi
+
# This create an spinning bar
spinning() {
local WAITFILE
@@ -371,7 +382,7 @@ as slackpkg cannot function without awk.\n"
# Check if gpg is enabled but no GPG command are found.
#
- if ! [ "$(which gpg2 2>/dev/null)" ] && [ "${CHECKGPG}" = "on" ]; then
+ if ! [ "$(which $GPG 2>/dev/null)" ] && [ "${CHECKGPG}" = "on" ]; then
CHECKGPG=off
echo -e "\n\
gpg package not found! Please disable GPG in ${CONF}/slackpkg.conf or install\n\
@@ -384,7 +395,7 @@ file distributed with slackpkg.\n"
# Check if the Slackware GPG key are found in the system
#
- GPGFIRSTTIME="$(gpg2 --list-keys \"$SLACKKEY\" 2>/dev/null \
+ GPGFIRSTTIME="$($GPG --list-keys \"$SLACKKEY\" 2>/dev/null \
| grep -c "$SLACKKEY")"
if [ "$GPGFIRSTTIME" = "0" ] && \
[ "$CMD" != "search" ] && \
@@ -546,7 +557,7 @@ function checkmd5() {
# Verify the GPG signature of files/packages
#
function checkgpg() {
- gpg2 --verify ${1}.asc ${1} 2>/dev/null && echo "1" || echo "0"
+ $GPG --verify ${1}.asc ${1} 2>/dev/null && echo "1" || echo "0"
}
# Fetch $SLACKKEY from a trusted source
@@ -585,8 +596,8 @@ Do you want to import the GPG key from this source? (YES|NO)\n"
# Import $SLACKKEY
function import_gpg_key() {
mkdir -p ~/.gnupg
- gpg2 --yes --batch --delete-key "$SLACKKEY" &>/dev/null
- gpg2 --import $TMPDIR/gpgkey &>/dev/null && \
+ $GPG --yes --batch --delete-key "$SLACKKEY" &>/dev/null
+ $GPG --import $TMPDIR/gpgkey &>/dev/null && \
echo -e "\t\t\tSlackware Linux Project's GPG key added"
}
diff --git a/source/ap/slackpkg/slackpkg.SlackBuild b/source/ap/slackpkg/slackpkg.SlackBuild
index eab285bb4..fa8cc2c92 100755
--- a/source/ap/slackpkg/slackpkg.SlackBuild
+++ b/source/ap/slackpkg/slackpkg.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=slackpkg
VERSION=${VERSION:-15.0.10}
ARCH="noarch"
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
diff --git a/source/ap/sox/sox.SlackBuild b/source/ap/sox/sox.SlackBuild
index fa8c4d363..2cc0fb7ce 100755
--- a/source/ap/sox/sox.SlackBuild
+++ b/source/ap/sox/sox.SlackBuild
@@ -52,6 +52,9 @@ else
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=implicit-function-declaration"
+
# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
TAG="_alsa"
diff --git a/source/ap/sqlite/sqlite.SlackBuild b/source/ap/sqlite/sqlite.SlackBuild
index a9d8139fe..60baa99d0 100755
--- a/source/ap/sqlite/sqlite.SlackBuild
+++ b/source/ap/sqlite/sqlite.SlackBuild
@@ -50,7 +50,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -68,14 +68,11 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
diff --git a/source/ap/stow/slack-desc b/source/ap/stow/slack-desc
new file mode 100644
index 000000000..9c2a9f33d
--- /dev/null
+++ b/source/ap/stow/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+stow: stow (symlink farm manager)
+stow:
+stow: GNU Stow is a symlink farm manager which takes distinct sets of
+stow: software and/or data located in separate directories on the
+stow: filesystem, and makes them all appear to be installed in a single
+stow: directory tree. Stow helps to administer, upgrade, install, and remove
+stow: files in independent software packages without confusing them with
+stow: other files sharing the same file system space.
+stow:
+stow: Homepage: https://www.gnu.org/software/stow/
+stow:
diff --git a/source/ap/stow/stow.SlackBuild b/source/ap/stow/stow.SlackBuild
new file mode 100755
index 000000000..426a530d0
--- /dev/null
+++ b/source/ap/stow/stow.SlackBuild
@@ -0,0 +1,145 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=stow
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i686 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+# We'll take care of this, thanks
+rm -rf $PKG/usr/doc
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ ChangeLog INSTALL* README* \
+ doc/manual-split \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/ap/sudo/sudo.SlackBuild b/source/ap/sudo/sudo.SlackBuild
index 42b9895d6..23f8a39f2 100755
--- a/source/ap/sudo/sudo.SlackBuild
+++ b/source/ap/sudo/sudo.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -52,17 +52,11 @@ PKG=$TMP/package-sudo
rm -rf $PKG
mkdir -p $TMP $PKG/var/db
-if [ "$ARCH" = "i386" ]; then
- SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
diff --git a/source/ap/texinfo/texinfo.SlackBuild b/source/ap/texinfo/texinfo.SlackBuild
index cba119234..0309cb0eb 100755
--- a/source/ap/texinfo/texinfo.SlackBuild
+++ b/source/ap/texinfo/texinfo.SlackBuild
@@ -29,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
@@ -46,21 +46,12 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/source/ap/vim/vim-gvim.SlackBuild b/source/ap/vim/vim-gvim.SlackBuild
index 44b11e81d..ec9d0d1d1 100755
--- a/source/ap/vim/vim-gvim.SlackBuild
+++ b/source/ap/vim/vim-gvim.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2013, 2016, 2018, 2019, 2021, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2013, 2016, 2018, 2019, 2021, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -43,7 +43,7 @@ LUAINTERP=${LUAINTERP:-dynamic}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
diff --git a/source/ap/vim/vim.SlackBuild b/source/ap/vim/vim.SlackBuild
index 9897abc4a..ff6e8de6e 100755
--- a/source/ap/vim/vim.SlackBuild
+++ b/source/ap/vim/vim.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2013, 2016, 2018, 2019, 2020, 2021, 2022, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2013, 2016, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -53,7 +53,7 @@ fi
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
diff --git a/source/ap/vorbis-tools/vorbis-tools.SlackBuild b/source/ap/vorbis-tools/vorbis-tools.SlackBuild
index 7f23e008e..41d813480 100755
--- a/source/ap/vorbis-tools/vorbis-tools.SlackBuild
+++ b/source/ap/vorbis-tools/vorbis-tools.SlackBuild
@@ -69,6 +69,9 @@ else
LIBDIRSUFFIX=""
fi
+# GCC 14 "fix":
+SLKCFLAGS="$SLKCFLAGS -Wno-error=implicit-function-declaration"
+
rm -rf $PKG
mkdir -p $TMP $PKG
diff --git a/source/ap/xfsdump/xfsdump.SlackBuild b/source/ap/xfsdump/xfsdump.SlackBuild
index b2e2499ea..e3d65f2d0 100755
--- a/source/ap/xfsdump/xfsdump.SlackBuild
+++ b/source/ap/xfsdump/xfsdump.SlackBuild
@@ -24,14 +24,14 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=xfsdump
VERSION=${VERSION:-$(echo xfsdump-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
+ i?86) export ARCH=i686 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
diff --git a/source/ap/zsh/0007-zsh-configure-c99.patch b/source/ap/zsh/0007-zsh-configure-c99.patch
new file mode 100644
index 000000000..c4b36231b
--- /dev/null
+++ b/source/ap/zsh/0007-zsh-configure-c99.patch
@@ -0,0 +1,44 @@
+Avoid incompatible pointer types in terminfo global variable checks.
+Some compilers reject these incompatible pointer types, causing the
+checks to always fail, when these variables are in fact available.
+
+Submitted upstream: <https://www.zsh.org/mla/workers/2023/msg01112.html>
+
+diff --git a/configure.ac b/configure.ac
+index a58242f453b4a8f3..5534f42df14eb28c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1769,27 +1769,27 @@ if test x$zsh_cv_path_term_header != xnone; then
+ fi
+
+ AC_MSG_CHECKING(if boolcodes is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = boolcodes; puts(*test);]])],[AC_DEFINE(HAVE_BOOLCODES) boolcodes=yes],[boolcodes=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)boolcodes; puts(*test);]])],[AC_DEFINE(HAVE_BOOLCODES) boolcodes=yes],[boolcodes=no])
+ AC_MSG_RESULT($boolcodes)
+
+ AC_MSG_CHECKING(if numcodes is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = numcodes; puts(*test);]])],[AC_DEFINE(HAVE_NUMCODES) numcodes=yes],[numcodes=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)numcodes; puts(*test);]])],[AC_DEFINE(HAVE_NUMCODES) numcodes=yes],[numcodes=no])
+ AC_MSG_RESULT($numcodes)
+
+ AC_MSG_CHECKING(if strcodes is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = strcodes; puts(*test);]])],[AC_DEFINE(HAVE_STRCODES) strcodes=yes],[strcodes=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)strcodes; puts(*test);]])],[AC_DEFINE(HAVE_STRCODES) strcodes=yes],[strcodes=no])
+ AC_MSG_RESULT($strcodes)
+
+ AC_MSG_CHECKING(if boolnames is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = boolnames; puts(*test);]])],[AC_DEFINE(HAVE_BOOLNAMES) boolnames=yes],[boolnames=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)boolnames; puts(*test);]])],[AC_DEFINE(HAVE_BOOLNAMES) boolnames=yes],[boolnames=no])
+ AC_MSG_RESULT($boolnames)
+
+ AC_MSG_CHECKING(if numnames is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = numnames; puts(*test);]])],[AC_DEFINE(HAVE_NUMNAMES) numnames=yes],[numnames=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)numnames; puts(*test);]])],[AC_DEFINE(HAVE_NUMNAMES) numnames=yes],[numnames=no])
+ AC_MSG_RESULT($numnames)
+
+ AC_MSG_CHECKING(if strnames is available)
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = strnames; puts(*test);]])],[AC_DEFINE(HAVE_STRNAMES) strnames=yes],[strnames=no])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[$term_includes]], [[char **test = (char **)strnames; puts(*test);]])],[AC_DEFINE(HAVE_STRNAMES) strnames=yes],[strnames=no])
+ AC_MSG_RESULT($strnames)
+
+ dnl There are apparently defective terminal library headers on some
diff --git a/source/ap/zsh/zsh.SlackBuild b/source/ap/zsh/zsh.SlackBuild
index 3a5aa5c69..361b365ab 100755
--- a/source/ap/zsh/zsh.SlackBuild
+++ b/source/ap/zsh/zsh.SlackBuild
@@ -77,6 +77,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+cat $CWD/0007-zsh-configure-c99.patch | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \