From ec86cffd8eec12d657afec63d5da1ad84b43d510 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Thu, 14 Jan 2021 20:36:17 +0000 Subject: Thu Jan 14 20:36:17 UTC 2021 a/gptfdisk-1.0.6-x86_64-1.txz: Upgraded. a/usb_modeswitch-2.6.1-x86_64-1.txz: Upgraded. ap/nano-5.5-x86_64-1.txz: Upgraded. l/Mako-1.1.4-x86_64-1.txz: Upgraded. l/gst-plugins-base-1.18.3-x86_64-1.txz: Upgraded. l/gst-plugins-good-1.18.3-x86_64-1.txz: Upgraded. l/gst-plugins-libav-1.18.3-x86_64-1.txz: Upgraded. l/gstreamer-1.18.3-x86_64-1.txz: Upgraded. l/system-config-printer-1.5.15-x86_64-1.txz: Upgraded. l/wavpack-5.4.0-x86_64-1.txz: Upgraded. WavPack 5.4.0 fixes an issue where a specially crafted WAV file could cause the wavpack command-line program to crash with an out-of-bounds write. For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-35738 (* Security fix *) l/xapian-core-1.4.18-x86_64-1.txz: Upgraded. tcl/tk-8.6.11.1-x86_64-1.txz: Upgraded. x/mesa-20.3.3-x86_64-1.txz: Upgraded. Added options: -Dvulkan-device-select-layer=true -Dopengl=true -Dglx=dri Add a symlink for libGLX_system.so.0. Use a more complete patch for converting from drmPciDeviceInfo to uint32_t in device_select.h and device_select_layer.c. xfce/thunar-4.16.2-x86_64-1.txz: Upgraded. --- source/a/usb_modeswitch/usb_modeswitch.SlackBuild | 18 ++--- source/l/Mako/Mako.SlackBuild | 2 +- source/l/xapian-core/xapian-core.SlackBuild | 2 +- source/tcl/tk/tk.SlackBuild | 6 +- source/x/mesa/mesa.SlackBuild | 12 +++- .../patches/MESA_VK_DEVICE_SELECT.uint32_t.patch | 78 ++++++++++++++++++++++ ....f93b7d14d66d8ba70d44772d1a1b6696310b7d17.patch | 48 ------------- source/xfce/thunar/thunar.url | 2 +- 8 files changed, 100 insertions(+), 68 deletions(-) create mode 100644 source/x/mesa/patches/MESA_VK_DEVICE_SELECT.uint32_t.patch delete mode 100644 source/x/mesa/patches/mesa.f93b7d14d66d8ba70d44772d1a1b6696310b7d17.patch (limited to 'source') diff --git a/source/a/usb_modeswitch/usb_modeswitch.SlackBuild b/source/a/usb_modeswitch/usb_modeswitch.SlackBuild index 97392fc1e..27f3dfcc4 100755 --- a/source/a/usb_modeswitch/usb_modeswitch.SlackBuild +++ b/source/a/usb_modeswitch/usb_modeswitch.SlackBuild @@ -1,8 +1,6 @@ #!/bin/bash -# Slackware build script for usb_modeswitch. - -# Copyright 2010, 2012, 2013, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2010, 2012, 2013, 2015, 2017, 2018, 2019, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA # Copyright 2010 David Somero, Athens, TN, USA # All rights reserved. # @@ -26,9 +24,9 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=usb_modeswitch -VERSION=${VERSION:-2.5.2} +VERSION=${VERSION:-2.6.1} DATAVER=${DATAVER:-20191128} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -72,7 +70,7 @@ rm -rf $PKG mkdir -p $TMP $PKG cd $TMP rm -rf $SRCPKGNAM-$VERSION -tar xvf $CWD/$SRCPKGNAM-$VERSION.tar.?z* || exit 1 +tar xvf $CWD/$SRCPKGNAM-$VERSION.tar.?z || exit 1 cd $SRCPKGNAM-$VERSION || exit 1 chown -R root:root . find . \ @@ -82,8 +80,6 @@ find . \ -exec chmod 644 {} \+ make clean || exit 1 -# "make static" uses the embedded "jim" Tcl interpreter -make static || exit 1 make \ DESTDIR=$PKG \ @@ -116,10 +112,6 @@ cp -a \ $PKG/usr/doc/$PKGNAM-$VERSION # http://www.draisberghof.de/usb_modeswitch/device_reference.txt.gz zcat $CWD/device_reference.txt.gz > $PKG/usr/doc/$PKGNAM-$VERSION/device_reference.txt -mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/jim -cp -a \ - jim/{AUTHORS,LICENSE,README*} \ - $PKG/usr/doc/$PKGNAM-$VERSION/jim # 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: @@ -132,7 +124,7 @@ fi # Now, install the data pack: cd $TMP rm -rf usb-modeswitch-data-${DATAVER} -tar xvf $CWD/usb-modeswitch-data-${DATAVER}.tar.?z* || exit 1 +tar xvf $CWD/usb-modeswitch-data-${DATAVER}.tar.?z || exit 1 cd usb-modeswitch-data-${DATAVER} || exit 1 chown -R root:root . find . \ diff --git a/source/l/Mako/Mako.SlackBuild b/source/l/Mako/Mako.SlackBuild index b4f252248..c2d386b17 100755 --- a/source/l/Mako/Mako.SlackBuild +++ b/source/l/Mako/Mako.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=Mako VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} if [ -z "$ARCH" ]; then case "$( uname -m )" in diff --git a/source/l/xapian-core/xapian-core.SlackBuild b/source/l/xapian-core/xapian-core.SlackBuild index 9867e7c3f..c3bc72fea 100755 --- a/source/l/xapian-core/xapian-core.SlackBuild +++ b/source/l/xapian-core/xapian-core.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=xapian-core 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) "} diff --git a/source/tcl/tk/tk.SlackBuild b/source/tcl/tk/tk.SlackBuild index 239f6888e..f2397f1f5 100755 --- a/source/tcl/tk/tk.SlackBuild +++ b/source/tcl/tk/tk.SlackBuild @@ -23,7 +23,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=tk -VERSION=${VERSION:-8.6.11} +VERSION=${VERSION:-8.6.11.1} # See also version number 8.6 in the symlinks below...) BUILD=${BUILD:-1} @@ -70,9 +70,9 @@ PKG=$TMP/package-tk rm -rf $PKG mkdir -p $TMP $PKG cd $TMP -rm -rf tk8.6.9 tk$VERSION +rm -rf tk8.6.11 tk$VERSION tar xvf $CWD/tk$VERSION-src.tar.?z || exit 1 -cd tk$VERSION || cd tk8.6.9 || exit 1 +cd tk$VERSION || cd tk8.6.11 || exit 1 sed -i -e "s#^TK_LIBRARY='\$(prefix)/lib/#TK_LIBRARY='\$(libdir)/#" \ unix/configure diff --git a/source/x/mesa/mesa.SlackBuild b/source/x/mesa/mesa.SlackBuild index 578024903..8cbc8b6fd 100755 --- a/source/x/mesa/mesa.SlackBuild +++ b/source/x/mesa/mesa.SlackBuild @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -124,6 +124,7 @@ meson setup \ -Dosmesa=gallium \ -Ddri-drivers=$DRI_DRIVERS \ -Dgallium-drivers=$GALLIUM_DRIVERS \ + -Dvulkan-device-select-layer=true \ -Dglvnd=true \ -Dllvm=enabled \ -Dshared-llvm=enabled \ @@ -131,6 +132,8 @@ meson setup \ -Degl=enabled \ -Dgles1=enabled \ -Dgles2=enabled \ + -Dopengl=true \ + -Dglx=dri \ .. || exit 1 "${NINJA:=ninja}" $NUMJOBS || exit 1 DESTDIR=$PKG $NINJA install || exit 1 @@ -141,6 +144,13 @@ if [ -r $PKG/etc/drirc ]; then mv $PKG/etc/drirc $PKG/etc/drirc.new fi +# Add a default provider for glvnd when the vendor cannot be determined: +( cd $PKG/usr/lib${LIBDIRSUFFIX} + if [ ! -r libGLX_system.so.0 ]; then + ln -sf libGLX_mesa.so.0 libGLX_system.so.0 + fi +) + if [ "$BUILD_DEMOS" = "YES" ]; then # Now build/install a small subset of the demos: export CWD SLKCFLAGS NUMJOBS PKG diff --git a/source/x/mesa/patches/MESA_VK_DEVICE_SELECT.uint32_t.patch b/source/x/mesa/patches/MESA_VK_DEVICE_SELECT.uint32_t.patch new file mode 100644 index 000000000..8f9bc2312 --- /dev/null +++ b/source/x/mesa/patches/MESA_VK_DEVICE_SELECT.uint32_t.patch @@ -0,0 +1,78 @@ +diff --git a/src/vulkan/device-select-layer/device_select.h b/src/vulkan/device-select-layer/device_select.h +index 2335070..8debb77 100644 +--- a/src/vulkan/device-select-layer/device_select.h ++++ b/src/vulkan/device-select-layer/device_select.h +@@ -24,10 +24,18 @@ + #define DEVICE_SELECT_H + + #include ++#include + #include "xf86drm.h" + ++/* We don't use `drmPciDeviceInfo` because it uses 16-bit ids, ++ * instead of Vulkan's 32-bit ones */ ++struct device_info { ++ uint32_t vendor_id; ++ uint32_t device_id; ++}; ++ + struct device_pci_info { +- drmPciDeviceInfo dev_info; ++ struct device_info dev_info; + drmPciBusInfo bus_info; + bool has_bus_info; + bool cpu_device; +diff --git a/src/vulkan/device-select-layer/device_select_layer.c b/src/vulkan/device-select-layer/device_select_layer.c +index 5b708bc..bd18511 100644 +--- a/src/vulkan/device-select-layer/device_select_layer.c ++++ b/src/vulkan/device-select-layer/device_select_layer.c +@@ -222,7 +222,7 @@ static void print_gpu(const struct instance_info *info, unsigned index, VkPhysic + type = "CPU"; + break; + } +- fprintf(stderr, " GPU %d: %x:%x \"%s\" %s", index, properties.properties.vendorID, ++ fprintf(stderr, " GPU %d: 0x%04x:0x%04x \"%s\" %s", index, properties.properties.vendorID, + properties.properties.deviceID, properties.properties.deviceName, type); + if (info->has_pci_bus) + fprintf(stderr, " %04x:%02x:%02x.%x", ext_pci_properties.pciDomain, +@@ -267,18 +267,18 @@ static int device_select_find_explicit_default(struct device_pci_info *pci_infos + uint32_t device_count, + const char *selection) + { +- int default_idx = -1; +- unsigned vendor_id, device_id; ++ uint32_t vendor_id, device_id; + int matched = sscanf(selection, "%x:%x", &vendor_id, &device_id); +- if (matched != 2) +- return default_idx; ++ if (matched != 2) { ++ return -1; ++ } + + for (unsigned i = 0; i < device_count; ++i) { + if (pci_infos[i].dev_info.vendor_id == vendor_id && + pci_infos[i].dev_info.device_id == device_id) +- default_idx = i; ++ return i; + } +- return default_idx; ++ return -1; + } + + static int device_select_find_dri_prime_tag_default(struct device_pci_info *pci_infos, +@@ -378,8 +378,14 @@ static uint32_t get_default_device(const struct instance_info *info, + cpu_count += fill_drm_device_info(info, &pci_infos[i], pPhysicalDevices[i]) ? 1 : 0; + } + +- if (selection) ++ if (selection) { + default_idx = device_select_find_explicit_default(pci_infos, physical_device_count, selection); ++ if (default_idx == -1) { ++ fprintf(stderr, "device-select: cannot find device vendorID:deviceID match " ++ "using MESA_VK_DEVICE_SELECT=%s. Use 'list' for available devices.\n", selection); ++ exit(0); ++ } ++ } + if (default_idx == -1 && info->has_pci_bus && dri_prime && !dri_prime_is_one) + default_idx = device_select_find_dri_prime_tag_default(pci_infos, physical_device_count, dri_prime); + if (default_idx == -1 && info->has_wayland) diff --git a/source/x/mesa/patches/mesa.f93b7d14d66d8ba70d44772d1a1b6696310b7d17.patch b/source/x/mesa/patches/mesa.f93b7d14d66d8ba70d44772d1a1b6696310b7d17.patch deleted file mode 100644 index bf3483a41..000000000 --- a/source/x/mesa/patches/mesa.f93b7d14d66d8ba70d44772d1a1b6696310b7d17.patch +++ /dev/null @@ -1,48 +0,0 @@ -From f93b7d14d66d8ba70d44772d1a1b6696310b7d17 Mon Sep 17 00:00:00 2001 -From: Witold Baryluk -Date: Mon, 7 Dec 2020 20:45:42 +0000 -Subject: [PATCH] vulkan/device_select: Store Vulkan vendorID and deviceID as - uint32_t - -Vulkan uses 32-bit IDs, compared to PCI/USB 16-bit ones. - -Some driver vendorIDs do exceed 0xffff, including MESA (used by lavapipe). - -Without this, the value will be truncated, and device select layer -will not match expected (or any) device. - -Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3935 -Reviewed-by: Dave Airlie -Part-of: ---- - src/vulkan/device-select-layer/device_select.h | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/src/vulkan/device-select-layer/device_select.h b/src/vulkan/device-select-layer/device_select.h -index 23350707a33..248878fbc71 100644 ---- a/src/vulkan/device-select-layer/device_select.h -+++ b/src/vulkan/device-select-layer/device_select.h -@@ -24,10 +24,18 @@ - #define DEVICE_SELECT_H - - #include -+#include - #include "xf86drm.h" - -+/* We don't use `drmPciDeviceInfo` because it uses 16-bit ids, -+ * instead of Vulkan's 32-bit ones. */ -+struct device_info { -+ uint32_t vendor_id; -+ uint32_t device_id; -+}; -+ - struct device_pci_info { -- drmPciDeviceInfo dev_info; -+ struct device_info dev_info; - drmPciBusInfo bus_info; - bool has_bus_info; - bool cpu_device; --- -GitLab - - diff --git a/source/xfce/thunar/thunar.url b/source/xfce/thunar/thunar.url index beb3e1362..1c7983aaf 100644 --- a/source/xfce/thunar/thunar.url +++ b/source/xfce/thunar/thunar.url @@ -1 +1 @@ -https://archive.xfce.org/src/xfce/thunar/4.16/thunar-4.16.1.tar.bz2 +https://archive.xfce.org/src/xfce/thunar/4.16/thunar-4.16.2.tar.bz2 -- cgit v1.2.3