summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/a/FTBFSlog4
-rw-r--r--source/a/efivar/0dad6d78a7fb5f6c5fb4a1d646040539db6cf865.patch51
-rw-r--r--source/a/efivar/b98ba8921010d03f46704a476c69861515deb1ca.patch56
-rw-r--r--source/a/efivar/c3c553db85ff10890209d0fe48fb4856ad68e4e0.patch168
-rwxr-xr-xsource/a/efivar/efivar.SlackBuild9
-rwxr-xr-xsource/d/gcc/gcc.SlackBuild44
-rw-r--r--source/d/gcc/slack-desc.gcc-gdc19
-rw-r--r--source/k/kernel-configs/config-generic-4.19.39 (renamed from source/k/kernel-configs/config-generic-4.19.38)7
-rw-r--r--source/k/kernel-configs/config-generic-4.19.39.x64 (renamed from source/k/kernel-configs/config-generic-4.19.38.x64)7
-rw-r--r--source/k/kernel-configs/config-generic-smp-4.19.39-smp (renamed from source/k/kernel-configs/config-generic-smp-4.19.38-smp)7
-rw-r--r--source/k/kernel-configs/config-huge-4.19.39 (renamed from source/k/kernel-configs/config-huge-4.19.38)7
-rw-r--r--source/k/kernel-configs/config-huge-4.19.39.x64 (renamed from source/k/kernel-configs/config-huge-4.19.38.x64)7
-rw-r--r--source/k/kernel-configs/config-huge-smp-4.19.39-smp (renamed from source/k/kernel-configs/config-huge-smp-4.19.38-smp)7
-rwxr-xr-xsource/l/v4l-utils/v4l-utils.SlackBuild5
-rw-r--r--source/l/v4l-utils/v4l-utils.c82608ca1595427c2bdbd4abb9aca9163e1df60a.patch96
-rw-r--r--source/n/dhcpcd/dhcpcd-7.2.1.tar.xz.distinfo1
-rw-r--r--source/n/dhcpcd/dhcpcd-7.2.2.tar.xz.distinfo1
-rwxr-xr-xsource/x/vulkan-sdk/fetch-sources.sh4
18 files changed, 364 insertions, 136 deletions
diff --git a/source/a/FTBFSlog b/source/a/FTBFSlog
index 6b203503d..180b39d63 100644
--- a/source/a/FTBFSlog
+++ b/source/a/FTBFSlog
@@ -1,3 +1,7 @@
+Sat May 4 17:55:48 UTC 2019
+ efivar: patched to fix GCC9 warnings resulting in build failure.
+ Thanks to nobodino and ponce.
++--------------------------+
Wed Nov 21 18:48:32 UTC 2018
upower: preemptive fix for FTBFS with new glib.
+--------------------------+
diff --git a/source/a/efivar/0dad6d78a7fb5f6c5fb4a1d646040539db6cf865.patch b/source/a/efivar/0dad6d78a7fb5f6c5fb4a1d646040539db6cf865.patch
new file mode 100644
index 000000000..e4a435823
--- /dev/null
+++ b/source/a/efivar/0dad6d78a7fb5f6c5fb4a1d646040539db6cf865.patch
@@ -0,0 +1,51 @@
+From 0dad6d78a7fb5f6c5fb4a1d646040539db6cf865 Mon Sep 17 00:00:00 2001
+From: Chih-Wei Huang <cwhuang@linux.org.tw>
+Date: Tue, 26 Feb 2019 18:42:20 +0800
+Subject: [PATCH] Fix another error of -Werror=address-of-packed-member
+
+Android 9 clang complains:
+
+external/efivar/src/dp-message.c:367:24: error: taking address of packed member '' of class or structure 'efidp_infiniband' may result in an unaligned pointer value [-Werror,-Waddress-of-packed-member]
+ (efi_guid_t *)&dp->infiniband.ioc_guid);
+ ^~~~~~~~~~~~~~~~~~~~~~~
+external/efivar/src/dp.h:76:19: note: expanded from macro 'format_guid'
+ memmove(&_guid, guid, sizeof(_guid)); \
+ ^~~~
+1 error generated.
+
+Since commit c3c553d the fifth parameter of format_guid() is treated as
+a const void *. The casting is unnecessary.
+
+Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
+---
+ src/dp-media.c | 3 +--
+ src/dp-message.c | 2 +-
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/src/dp-media.c b/src/dp-media.c
+index 96a576f..be691c4 100644
+--- a/src/dp-media.c
++++ b/src/dp-media.c
+@@ -46,8 +46,7 @@ _format_media_dn(char *buf, size_t size, const_efidp dp)
+ break;
+ case EFIDP_HD_SIGNATURE_GUID:
+ format(buf, size, off, "HD", "GPT,");
+- format_guid(buf, size, off, "HD",
+- (efi_guid_t *)dp->hd.signature);
++ format_guid(buf, size, off, "HD", dp->hd.signature);
+ format(buf, size, off, "HD",
+ ",0x%"PRIx64",0x%"PRIx64")",
+ dp->hd.start, dp->hd.size);
+diff --git a/src/dp-message.c b/src/dp-message.c
+index 9f96466..6b8e907 100644
+--- a/src/dp-message.c
++++ b/src/dp-message.c
+@@ -364,7 +364,7 @@ _format_message_dn(char *buf, size_t size, const_efidp dp)
+ dp->infiniband.port_gid[1],
+ dp->infiniband.port_gid[0]);
+ format_guid(buf, size, off, "Infiniband",
+- (efi_guid_t *)&dp->infiniband.ioc_guid);
++ &dp->infiniband.ioc_guid);
+ format(buf, size, off, "Infiniband",
+ ",%"PRIu64",%"PRIu64")",
+ dp->infiniband.target_port_id,
diff --git a/source/a/efivar/b98ba8921010d03f46704a476c69861515deb1ca.patch b/source/a/efivar/b98ba8921010d03f46704a476c69861515deb1ca.patch
new file mode 100644
index 000000000..f40942f45
--- /dev/null
+++ b/source/a/efivar/b98ba8921010d03f46704a476c69861515deb1ca.patch
@@ -0,0 +1,56 @@
+From b98ba8921010d03f46704a476c69861515deb1ca Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 7 Jan 2019 10:30:59 -0500
+Subject: [PATCH] dp.h: make format_guid() handle misaligned guid pointers
+ safely.
+
+GCC 9 adds -Werror=address-of-packed-member, which causes us to see the
+build error reported at
+ https://bugzilla.opensuse.org/show_bug.cgi?id=1120862 .
+
+That bug report shows us the following:
+
+In file included from dp.c:26:
+dp.h: In function 'format_vendor_helper':
+dp.h:120:37: error: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Werror=address-of-packed-member]
+ 120 | format_guid(buf, size, off, label, &dp->hw_vendor.vendor_guid);
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~
+dp.h:74:25: note: in definition of macro 'format_guid'
+ 74 | _rc = efi_guid_to_str(guid, &_guidstr); \
+ | ^~~~
+cc1: all warnings being treated as errors
+
+This patch makes format_guid() use a local variable as a bounce buffer
+in the case that the guid we're passed is aligned as chaotic neutral.
+
+Note that this only fixes this instance and there may be others that bz
+didn't show because it exited too soon, and I don't have a gcc 9 build
+in front of me right now.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ src/dp.h | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/src/dp.h b/src/dp.h
+index aa4e390..20cb608 100644
+--- a/src/dp.h
++++ b/src/dp.h
+@@ -70,8 +70,15 @@
+ #define format_guid(buf, size, off, dp_type, guid) ({ \
+ int _rc; \
+ char *_guidstr = NULL; \
+- \
+- _rc = efi_guid_to_str(guid, &_guidstr); \
++ efi_guid_t _guid; \
++ const efi_guid_t * const _guid_p = \
++ likely(__alignof__(guid) == sizeof(guid)) \
++ ? guid \
++ : &_guid; \
++ \
++ if (unlikely(__alignof__(guid) == sizeof(guid))) \
++ memmove(&_guid, guid, sizeof(_guid)); \
++ _rc = efi_guid_to_str(_guid_p, &_guidstr); \
+ if (_rc < 0) { \
+ efi_error("could not build %s GUID DP string", \
+ dp_type); \
diff --git a/source/a/efivar/c3c553db85ff10890209d0fe48fb4856ad68e4e0.patch b/source/a/efivar/c3c553db85ff10890209d0fe48fb4856ad68e4e0.patch
new file mode 100644
index 000000000..bbb6a99a3
--- /dev/null
+++ b/source/a/efivar/c3c553db85ff10890209d0fe48fb4856ad68e4e0.patch
@@ -0,0 +1,168 @@
+From c3c553db85ff10890209d0fe48fb4856ad68e4e0 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Thu, 21 Feb 2019 15:20:12 -0500
+Subject: [PATCH] Fix all the places -Werror=address-of-packed-member catches.
+
+This gets rid of all the places GCC 9's -Werror=address-of-packed-member
+flags as problematic.
+
+Fixes github issue #123
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ src/dp-message.c | 6 ++++--
+ src/dp.h | 12 ++++--------
+ src/guid.c | 2 +-
+ src/include/efivar/efivar.h | 2 +-
+ src/ucs2.h | 27 +++++++++++++++++++--------
+ 5 files changed, 29 insertions(+), 20 deletions(-)
+
+diff --git a/src/dp-message.c b/src/dp-message.c
+index 3724e5f..9f96466 100644
+--- a/src/dp-message.c
++++ b/src/dp-message.c
+@@ -620,11 +620,13 @@ _format_message_dn(char *buf, size_t size, const_efidp dp)
+ ) / sizeof(efi_ip_addr_t);
+ format(buf, size, off, "Dns", "Dns(");
+ for (int i=0; i < end; i++) {
+- const efi_ip_addr_t *addr = &dp->dns.addrs[i];
++ efi_ip_addr_t addr;
++
++ memcpy(&addr, &dp->dns.addrs[i], sizeof(addr));
+ if (i != 0)
+ format(buf, size, off, "Dns", ",");
+ format_ip_addr(buf, size, off, "Dns",
+- dp->dns.is_ipv6, addr);
++ dp->dns.is_ipv6, &addr);
+ }
+ format(buf, size, off, "Dns", ")");
+ break;
+diff --git a/src/dp.h b/src/dp.h
+index 20cb608..1f921d5 100644
+--- a/src/dp.h
++++ b/src/dp.h
+@@ -71,13 +71,9 @@
+ int _rc; \
+ char *_guidstr = NULL; \
+ efi_guid_t _guid; \
+- const efi_guid_t * const _guid_p = \
+- likely(__alignof__(guid) == sizeof(guid)) \
+- ? guid \
+- : &_guid; \
+- \
+- if (unlikely(__alignof__(guid) == sizeof(guid))) \
+- memmove(&_guid, guid, sizeof(_guid)); \
++ const efi_guid_t * const _guid_p = &_guid; \
++ \
++ memmove(&_guid, guid, sizeof(_guid)); \
+ _rc = efi_guid_to_str(_guid_p, &_guidstr); \
+ if (_rc < 0) { \
+ efi_error("could not build %s GUID DP string", \
+@@ -86,7 +82,7 @@
+ _guidstr = onstack(_guidstr, \
+ strlen(_guidstr)+1); \
+ _rc = format(buf, size, off, dp_type, "%s", \
+- _guidstr); \
++ _guidstr); \
+ } \
+ _rc; \
+ })
+diff --git a/src/guid.c b/src/guid.c
+index 306c9ff..3156b3b 100644
+--- a/src/guid.c
++++ b/src/guid.c
+@@ -31,7 +31,7 @@
+ extern const efi_guid_t efi_guid_zero;
+
+ int NONNULL(1, 2) PUBLIC
+-efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b)
++efi_guid_cmp(const void * const a, const void * const b)
+ {
+ return memcmp(a, b, sizeof (efi_guid_t));
+ }
+diff --git a/src/include/efivar/efivar.h b/src/include/efivar/efivar.h
+index 316891c..ad6449d 100644
+--- a/src/include/efivar/efivar.h
++++ b/src/include/efivar/efivar.h
+@@ -128,7 +128,7 @@ extern int efi_symbol_to_guid(const char *symbol, efi_guid_t *guid)
+
+ extern int efi_guid_is_zero(const efi_guid_t *guid);
+ extern int efi_guid_is_empty(const efi_guid_t *guid);
+-extern int efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b);
++extern int efi_guid_cmp(const void * const a, const void * const b);
+
+ /* import / export functions */
+ typedef struct efi_variable efi_variable_t;
+diff --git a/src/ucs2.h b/src/ucs2.h
+index dbb5900..edd8367 100644
+--- a/src/ucs2.h
++++ b/src/ucs2.h
+@@ -23,16 +23,21 @@
+ (((val) & ((mask) << (shift))) >> (shift))
+
+ static inline size_t UNUSED
+-ucs2len(const uint16_t * const s, ssize_t limit)
++ucs2len(const void *vs, ssize_t limit)
+ {
+ ssize_t i;
+- for (i = 0; i < (limit >= 0 ? limit : i+1) && s[i] != (uint16_t)0; i++)
++ const uint16_t *s = vs;
++ const uint8_t *s8 = vs;
++
++ for (i = 0;
++ i < (limit >= 0 ? limit : i+1) && s8[0] != 0 && s8[1] != 0;
++ i++, s8 += 2, s++)
+ ;
+ return i;
+ }
+
+ static inline size_t UNUSED
+-ucs2size(const uint16_t * const s, ssize_t limit)
++ucs2size(const void *s, ssize_t limit)
+ {
+ size_t rc = ucs2len(s, limit);
+ rc *= sizeof (uint16_t);
+@@ -69,10 +74,11 @@ utf8size(uint8_t *s, ssize_t limit)
+ }
+
+ static inline unsigned char * UNUSED
+-ucs2_to_utf8(const uint16_t * const chars, ssize_t limit)
++ucs2_to_utf8(const void * const voidchars, ssize_t limit)
+ {
+ ssize_t i, j;
+ unsigned char *ret;
++ const uint16_t * const chars = voidchars;
+
+ if (limit < 0)
+ limit = ucs2len(chars, -1);
+@@ -124,10 +130,12 @@ ucs2_to_utf8(const uint16_t * const chars, ssize_t limit)
+ }
+
+ static inline ssize_t UNUSED NONNULL(4)
+-utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8)
++utf8_to_ucs2(void *ucs2void, ssize_t size, int terminate, uint8_t *utf8)
+ {
+ ssize_t req;
+ ssize_t i, j;
++ uint16_t *ucs2 = ucs2void;
++ uint16_t val16;
+
+ if (!ucs2 && size > 0) {
+ errno = EINVAL;
+@@ -162,10 +170,13 @@ utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8)
+ val = utf8[i] & 0x7f;
+ i += 1;
+ }
+- ucs2[j] = val;
++ val16 = val;
++ ucs2[j] = val16;
++ }
++ if (terminate) {
++ val16 = 0;
++ ucs2[j++] = val16;
+ }
+- if (terminate)
+- ucs2[j++] = (uint16_t)0;
+ return j;
+ };
+
diff --git a/source/a/efivar/efivar.SlackBuild b/source/a/efivar/efivar.SlackBuild
index 60c1d8911..947621fe1 100755
--- a/source/a/efivar/efivar.SlackBuild
+++ b/source/a/efivar/efivar.SlackBuild
@@ -85,10 +85,15 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# GCC9 fixes for -Werror:
+zcat $CWD/0dad6d78a7fb5f6c5fb4a1d646040539db6cf865.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/b98ba8921010d03f46704a476c69861515deb1ca.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/c3c553db85ff10890209d0fe48fb4856ad68e4e0.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-make $NUMJOBS libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/
-make $NUMJOBS install DESTDIR=${PKG}/ libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/
+make $NUMJOBS libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/ || exit 1
+make $NUMJOBS install DESTDIR=${PKG}/ libdir=/usr/lib$LIBDIRSUFFIX/ mandir=/usr/man/ || 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
diff --git a/source/d/gcc/gcc.SlackBuild b/source/d/gcc/gcc.SlackBuild
index 6f93f767a..6c2cdfc77 100755
--- a/source/d/gcc/gcc.SlackBuild
+++ b/source/d/gcc/gcc.SlackBuild
@@ -2,7 +2,7 @@
# GCC package build script (written by volkerdi@slackware.com)
#
# Copyright 2003, 2004 Slackware Linux, Inc., Concord, California, USA
-# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -57,7 +57,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gcc
SRCVER=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
VERSION=$(echo $SRCVER | cut -f 1 -d _)
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# How many jobs to run in parallel:
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -84,6 +84,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "gcc-objc-$VERSION-$ARCH-$BUILD.txz"
echo "gcc-go-$VERSION-$ARCH-$BUILD.txz"
echo "gcc-brig-$VERSION-$ARCH-$BUILD.txz"
+ echo "gcc-gdc-$VERSION-$ARCH-$BUILD.txz"
exit 0
fi
@@ -144,14 +145,15 @@ PKG6=$TMP/package-gcc-objc
#PKG7=$TMP/package-gcc-g++-gch
PKG8=$TMP/package-gcc-go
PKG9=$TMP/package-gcc-brig
+PKG10=$TMP/package-gcc-gdc
# Clear the build locations:
rm -rf $TMP/gcc.build.lnx
-rm -rf $PKG{1,2,3,4,6,8,9}
-mkdir -p $PKG{1,2,3,4,6,8,9}/usr/doc/gcc-$VERSION
+rm -rf $PKG{1,2,3,4,6,8,9,10}
+mkdir -p $PKG{1,2,3,4,6,8,9,10}/usr/doc/gcc-$VERSION
# Insert package descriptions:
-mkdir -p $PKG{1,2,3,4,6,8,9}/install
+mkdir -p $PKG{1,2,3,4,6,8,9,10}/install
cat $CWD/slack-desc.gcc > $PKG1/install/slack-desc
cat $CWD/slack-desc.gcc-g++ > $PKG2/install/slack-desc
cat $CWD/slack-desc.gcc-gfortran > $PKG3/install/slack-desc
@@ -160,6 +162,7 @@ cat $CWD/slack-desc.gcc-objc > $PKG6/install/slack-desc
#cat $CWD/slack-desc.gcc-g++-gch > $PKG7/install/slack-desc
cat $CWD/slack-desc.gcc-go > $PKG8/install/slack-desc
cat $CWD/slack-desc.gcc-brig > $PKG9/install/slack-desc
+cat $CWD/slack-desc.gcc-gdc > $PKG10/install/slack-desc
( cd gcc-$SRCVER || exit 1
@@ -249,6 +252,14 @@ cat $CWD/slack-desc.gcc-brig > $PKG9/install/slack-desc
fi
)
+ mkdir -p $PKG10/usr/doc/gcc-${VERSION}/gcc/d
+ ( cd d || exit 0
+ if [ -r ChangeLog ]; then
+ cat ChangeLog | head -n 1000 > $PKG10/usr/doc/gcc-${VERSION}/gcc/d/ChangeLog
+ touch -r ChangeLog $PKG10/usr/doc/gcc-${VERSION}/gcc/d/ChangeLog
+ fi
+ )
+
) || exit 1
mkdir -p $PKG3/usr/doc/gcc-${VERSION}/libgfortran
@@ -325,7 +336,7 @@ cat $CWD/slack-desc.gcc-brig > $PKG9/install/slack-desc
--infodir=/usr/info \
--enable-shared \
--enable-bootstrap \
- --enable-languages=ada,brig,c,c++,fortran,go,lto,objc \
+ --enable-languages=ada,brig,c,c++,d,fortran,go,lto,objc \
--enable-threads=posix \
--enable-checking=release \
--enable-objc-gc \
@@ -578,7 +589,24 @@ rm -f $PKG1/{,usr/}lib${LIBDIRSUFFIX}/*.la
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/brig1 usr/libexec/gcc/$TARGET/$VERSION
mkdir -p usr/man/man1
mv $PKG1/usr/man/man1/gccbrig.1.gz usr/man/man1
-)
+) || exit 1
+
+# gcc-gdc:
+( cd $PKG10
+ mkdir -p usr/bin
+ mv $PKG1/usr/bin/gdc $PKG1/usr/bin/*-gdc usr/bin
+ mkdir -p usr/lib${LIBDIRSUFFIX}
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/libgdruntime* usr/lib${LIBDIRSUFFIX}
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/libgphobos* usr/lib${LIBDIRSUFFIX}
+ mkdir -p usr/libexec/gcc/$TARGET/$VERSION
+ mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/d21 usr/libexec/gcc/$TARGET/$VERSION
+ mkdir -p usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/include
+ mv $PKG1/usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/include/d usr/lib${LIBDIRSUFFIX}/gcc/$TARGET/$VERSION/include
+ mkdir -p usr/info
+ mv $PKG1/usr/info/gdc.info.gz usr/info
+ mkdir -p usr/man/man1
+ mv $PKG1/usr/man/man1/gdc.1.gz usr/man/man1
+) || exit 1
# Generate packages:
( cd $PKG1
@@ -595,6 +623,8 @@ rm -f $PKG1/{,usr/}lib${LIBDIRSUFFIX}/*.la
makepkg -l y -c n $TMP/gcc-go-$VERSION-$ARCH-$BUILD.txz )
( cd $PKG9
makepkg -l y -c n $TMP/gcc-brig-$VERSION-$ARCH-$BUILD.txz )
+( cd $PKG10
+ makepkg -l y -c n $TMP/gcc-gdc-$VERSION-$ARCH-$BUILD.txz )
echo
echo "Slackware GCC package build complete!"
diff --git a/source/d/gcc/slack-desc.gcc-gdc b/source/d/gcc/slack-desc.gcc-gdc
new file mode 100644
index 000000000..4e54ea889
--- /dev/null
+++ b/source/d/gcc/slack-desc.gcc-gdc
@@ -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------------------------------------------------------|
+gcc-gdc: gcc-gdc (D support for GCC)
+gcc-gdc:
+gcc-gdc: D support for the GNU Compiler Collection.
+gcc-gdc:
+gcc-gdc: D is a general-purpose programming language with static typing,
+gcc-gdc: systems-level access, and C-like syntax.
+gcc-gdc:
+gcc-gdc:
+gcc-gdc:
+gcc-gdc:
+gcc-gdc:
diff --git a/source/k/kernel-configs/config-generic-4.19.38 b/source/k/kernel-configs/config-generic-4.19.39
index 3cbb0f2af..e1e500532 100644
--- a/source/k/kernel-configs/config-generic-4.19.38
+++ b/source/k/kernel-configs/config-generic-4.19.39
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6740,7 +6740,6 @@ CONFIG_MTK_MMC=m
#
# Gasket devices
#
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/k/kernel-configs/config-generic-4.19.38.x64 b/source/k/kernel-configs/config-generic-4.19.39.x64
index 4abd915d4..afc4810be 100644
--- a/source/k/kernel-configs/config-generic-4.19.38.x64
+++ b/source/k/kernel-configs/config-generic-4.19.39.x64
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6665,7 +6665,6 @@ CONFIG_MTK_MMC=m
# Gasket devices
#
# CONFIG_STAGING_GASKET_FRAMEWORK is not set
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/k/kernel-configs/config-generic-smp-4.19.38-smp b/source/k/kernel-configs/config-generic-smp-4.19.39-smp
index f9b10a6e6..34cc1ee22 100644
--- a/source/k/kernel-configs/config-generic-smp-4.19.38-smp
+++ b/source/k/kernel-configs/config-generic-smp-4.19.39-smp
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6787,7 +6787,6 @@ CONFIG_MTK_MMC=m
#
# Gasket devices
#
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/k/kernel-configs/config-huge-4.19.38 b/source/k/kernel-configs/config-huge-4.19.39
index 3727ef6c6..568c30ce8 100644
--- a/source/k/kernel-configs/config-huge-4.19.38
+++ b/source/k/kernel-configs/config-huge-4.19.39
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6740,7 +6740,6 @@ CONFIG_MTK_MMC=m
#
# Gasket devices
#
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/k/kernel-configs/config-huge-4.19.38.x64 b/source/k/kernel-configs/config-huge-4.19.39.x64
index 845203d76..4d821f914 100644
--- a/source/k/kernel-configs/config-huge-4.19.38.x64
+++ b/source/k/kernel-configs/config-huge-4.19.39.x64
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6665,7 +6665,6 @@ CONFIG_MTK_MMC=m
# Gasket devices
#
# CONFIG_STAGING_GASKET_FRAMEWORK is not set
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/k/kernel-configs/config-huge-smp-4.19.38-smp b/source/k/kernel-configs/config-huge-smp-4.19.39-smp
index 33ccc803a..98f6a0fd1 100644
--- a/source/k/kernel-configs/config-huge-smp-4.19.38-smp
+++ b/source/k/kernel-configs/config-huge-smp-4.19.39-smp
@@ -1,13 +1,13 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.19.38 Kernel Configuration
+# Linux/x86 4.19.39 Kernel Configuration
#
#
-# Compiler: gcc (GCC) 8.3.0
+# Compiler: gcc (GCC) 9.1.0
#
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=80300
+CONFIG_GCC_VERSION=90100
CONFIG_CLANG_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -6787,7 +6787,6 @@ CONFIG_MTK_MMC=m
#
# Gasket devices
#
-# CONFIG_XIL_AXIS_FIFO is not set
# CONFIG_EROFS_FS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
diff --git a/source/l/v4l-utils/v4l-utils.SlackBuild b/source/l/v4l-utils/v4l-utils.SlackBuild
index ed61bf3ed..17982dc19 100755
--- a/source/l/v4l-utils/v4l-utils.SlackBuild
+++ b/source/l/v4l-utils/v4l-utils.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=v4l-utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -79,9 +79,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Revert patch that breaks DVB:
-zcat $CWD/v4l-utils.c82608ca1595427c2bdbd4abb9aca9163e1df60a.patch.gz | patch -p1 -R --verbose || exit 1
-
# qvidcap requires Qt5 - quit disabling it once we have that.
# qv4l2 requires Qt5 - quit disabling it once we have that.
diff --git a/source/l/v4l-utils/v4l-utils.c82608ca1595427c2bdbd4abb9aca9163e1df60a.patch b/source/l/v4l-utils/v4l-utils.c82608ca1595427c2bdbd4abb9aca9163e1df60a.patch
deleted file mode 100644
index 9aed81b44..000000000
--- a/source/l/v4l-utils/v4l-utils.c82608ca1595427c2bdbd4abb9aca9163e1df60a.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From c82608ca1595427c2bdbd4abb9aca9163e1df60a Mon Sep 17 00:00:00 2001
-From: Sean Young <sean@mess.org>
-Date: Sun, 17 Mar 2019 16:13:45 +0000
-Subject: libdvbv5: leaks and double free in dvb_fe_open_fname()
-
-dvb_fe_open_fname() takes ownership of fname if the function succeeds, but
-also in two of the error paths (e.g. if the ioctl FE_GET_PROPERTY fails).
-
-Adjust dvb_fe_open_fname() so it copies fname rather than taking ownership
-(and passing that to params). This makes the code cleaner.
-
-Signed-off-by: Sean Young <sean@mess.org>
-
-diff --git a/lib/libdvbv5/dvb-dev-local.c b/lib/libdvbv5/dvb-dev-local.c
-index e98b967..2de9a61 100644
---- a/lib/libdvbv5/dvb-dev-local.c
-+++ b/lib/libdvbv5/dvb-dev-local.c
-@@ -467,7 +467,7 @@ static struct dvb_open_descriptor
- flags &= ~O_NONBLOCK;
- }
-
-- ret = dvb_fe_open_fname(parms, strdup(dev->path), flags);
-+ ret = dvb_fe_open_fname(parms, dev->path, flags);
- if (ret) {
- free(open_dev);
- return NULL;
-diff --git a/lib/libdvbv5/dvb-fe.c b/lib/libdvbv5/dvb-fe.c
-index 7dcfa53..514a187 100644
---- a/lib/libdvbv5/dvb-fe.c
-+++ b/lib/libdvbv5/dvb-fe.c
-@@ -133,7 +133,6 @@ struct dvb_v5_fe_parms *dvb_fe_open_flags(int adapter, int frontend,
- int flags)
- {
- int ret;
-- char *fname;
- struct dvb_device *dvb;
- struct dvb_dev_list *dvb_dev;
- struct dvb_v5_fe_parms_priv *parms = NULL;
-@@ -153,7 +152,6 @@ struct dvb_v5_fe_parms *dvb_fe_open_flags(int adapter, int frontend,
- dvb_dev_free(dvb);
- return NULL;
- }
-- fname = strdup(dvb_dev->path);
-
- if (!strcmp(dvb_dev->bus_addr, "platform:dvbloopback")) {
- logfunc(LOG_WARNING, _("Detected dvbloopback"));
-@@ -161,14 +159,10 @@ struct dvb_v5_fe_parms *dvb_fe_open_flags(int adapter, int frontend,
- }
-
- dvb_dev_free(dvb);
-- if (!fname) {
-- logfunc(LOG_ERR, _("fname calloc: %s"), strerror(errno));
-- return NULL;
-- }
-+
- parms = calloc(sizeof(*parms), 1);
- if (!parms) {
- logfunc(LOG_ERR, _("parms calloc: %s"), strerror(errno));
-- free(fname);
- return NULL;
- }
- parms->p.verbose = verbose;
-@@ -183,7 +177,7 @@ struct dvb_v5_fe_parms *dvb_fe_open_flags(int adapter, int frontend,
- if (use_legacy_call)
- parms->p.legacy_fe = 1;
-
-- ret = dvb_fe_open_fname(parms, fname, flags);
-+ ret = dvb_fe_open_fname(parms, dvb_dev->path, flags);
- if (ret < 0) {
- free(parms);
- return NULL;
-@@ -203,7 +197,6 @@ int dvb_fe_open_fname(struct dvb_v5_fe_parms_priv *parms, char *fname,
- fd = open(fname, flags, 0);
- if (fd == -1) {
- dvb_logerr(_("%s while opening %s"), strerror(errno), fname);
-- free(fname);
- return -errno;
- }
-
-@@ -226,7 +219,12 @@ int dvb_fe_open_fname(struct dvb_v5_fe_parms_priv *parms, char *fname,
- }
- }
-
-- parms->fname = fname;
-+ parms->fname = strdup(fname);
-+ if (!parms->fname) {
-+ dvb_logerr(_("fname calloc: %s"), strerror(errno));
-+ return -errno;
-+ }
-+
- parms->fd = fd;
- parms->fe_flags = flags;
- parms->dvb_prop[0].cmd = DTV_API_VERSION;
---
-cgit v0.10.2
-
diff --git a/source/n/dhcpcd/dhcpcd-7.2.1.tar.xz.distinfo b/source/n/dhcpcd/dhcpcd-7.2.1.tar.xz.distinfo
deleted file mode 100644
index fbbec3366..000000000
--- a/source/n/dhcpcd/dhcpcd-7.2.1.tar.xz.distinfo
+++ /dev/null
@@ -1 +0,0 @@
-SHA256 (dhcpcd-7.2.1.tar.xz) = 27712673f563c2156739134837f47515028f5a37078e522e5d3bed4152a44fe8
diff --git a/source/n/dhcpcd/dhcpcd-7.2.2.tar.xz.distinfo b/source/n/dhcpcd/dhcpcd-7.2.2.tar.xz.distinfo
new file mode 100644
index 000000000..7581b1eee
--- /dev/null
+++ b/source/n/dhcpcd/dhcpcd-7.2.2.tar.xz.distinfo
@@ -0,0 +1 @@
+SHA256 (dhcpcd-7.2.2.tar.xz) = 3db7ff18cba9274da1d2176fb3c7cbe23926a8e58d5c8e244ad55c62d38ba09e
diff --git a/source/x/vulkan-sdk/fetch-sources.sh b/source/x/vulkan-sdk/fetch-sources.sh
index de6e7f3a1..924ed10e7 100755
--- a/source/x/vulkan-sdk/fetch-sources.sh
+++ b/source/x/vulkan-sdk/fetch-sources.sh
@@ -27,8 +27,8 @@
#
# Example: VERSION=1.1.92.1 ./fetch-sources.sh
-VERSION=${VERSION:-1.1.101.0}
-BRANCH=${BRANCH:-sdk-1.1.101}
+VERSION=${VERSION:-1.1.106.0}
+BRANCH=${BRANCH:-sdk-1.1.106}
rm -rf Vulkan-*-*.tar.?z glslang* SPIRV-Tools* SPIRV-Headers* \
Vulkan-Headers-sdk-${VERSION}* \