diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2020-04-02 06:07:52 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2020-04-02 10:41:33 +0200 |
commit | 7bd3e8d27d710021f848ba0b9e9772443c65e597 (patch) | |
tree | f4d816f8faa399edbf48c0325630473d069a354f /source | |
parent | 99c7cafd7376277cb010e2b7de0bf40de7ee6282 (diff) | |
download | current-7bd3e8d27d710021f848ba0b9e9772443c65e597.tar.gz |
Thu Apr 2 06:07:52 UTC 202020200402060752
a/hwdata-0.334-noarch-1.txz: Upgraded.
a/kernel-generic-5.4.29-x86_64-1.txz: Upgraded.
a/kernel-huge-5.4.29-x86_64-1.txz: Upgraded.
a/kernel-modules-5.4.29-x86_64-1.txz: Upgraded.
a/pkgtools-15.0-noarch-32.txz: Rebuilt.
installpkg: handle the uninstall script packaged as /install/douninst.sh.
removepkg: add --skip-douninst option to skip running the uninstall script.
Save removed douninst.sh in /var/log/pkgtools/removed_uninstall_scripts.
ap/groff-1.22.4-x86_64-2.txz: Rebuilt.
Fixed docdir. Thanks to Xsane.
d/gcc-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-brig-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-g++-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-gdc-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-gfortran-9.3.0-x86_64-2.txz: Rebuilt.
Patched a compiler bug concerning assumed-shape vs. deferred-shape arrays.
Thanks to Lockywolf.
d/gcc-gnat-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-go-9.3.0-x86_64-2.txz: Rebuilt.
d/gcc-objc-9.3.0-x86_64-2.txz: Rebuilt.
d/kernel-headers-5.4.29-x86-1.txz: Upgraded.
d/ruby-2.7.1-x86_64-1.txz: Upgraded.
This update fixes security issues:
Unsafe Object Creation Vulnerability in JSON (Additional fix).
Heap exposure vulnerability in the socket library.
For more information, see:
https://www.ruby-lang.org/en/news/2020/03/19/json-dos-cve-2020-10663/
https://www.ruby-lang.org/en/news/2020/03/31/heap-exposure-in-socket-cve-2020-10933/
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10663
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10933
(* Security fix *)
k/kernel-source-5.4.29-noarch-1.txz: Upgraded.
l/graphite2-1.3.14-x86_64-1.txz: Upgraded.
l/librsvg-2.48.2-x86_64-1.txz: Upgraded.
l/utf8proc-2.5.0-x86_64-1.txz: Upgraded.
x/libva-2.7.0-x86_64-1.txz: Upgraded.
x/libva-utils-2.7.1-x86_64-1.txz: Upgraded.
isolinux/initrd.img: Rebuilt.
kernels/*: Upgraded.
usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to 'source')
15 files changed, 105 insertions, 24 deletions
diff --git a/source/a/pkgtools/manpages/removepkg.8 b/source/a/pkgtools/manpages/removepkg.8 index 58a88ce6..f9b1b932 100644 --- a/source/a/pkgtools/manpages/removepkg.8 +++ b/source/a/pkgtools/manpages/removepkg.8 @@ -28,6 +28,9 @@ removepkg \- remove Slackware packages. .B \--preserve ] [ +.B \--skip-douninst +] +[ .B \--terse ] [ @@ -81,6 +84,10 @@ is removed. If present, the uninstall script resides in the /var/lib/pkgtools/do directory and has the same full name as the package (without the extension). For example, a package named foo-1.0-noarch-1.txz might contain an uninstall script named: /var/lib/pkgtools/douninst.sh/foo-1.0-noarch-1 +.LP +A package's uninstall script may either ship directly in /var/lib/pkgtools/douninst.sh/ as +the correctly-named file, or it may ship as /install/douninst.sh. In the latter case, it +will be renamed and placed in /var/lib/pkgtools/douninst.sh/ by installpkg. .SH OPTIONS .TP .B \--copy packagename @@ -96,6 +103,9 @@ required_list). Mostly useful for debugging purposes. If specified, the complete package subtree is reconstructed in /var/lib/pkgtools/setup/tmp/preserved_packages/packagename. .TP +.B \--skip-douninst +Skip running the the uninstall script. +.TP .B \--terse Remove the package displaying only a single description line to stdout. .TP diff --git a/source/a/pkgtools/pkgtools.SlackBuild b/source/a/pkgtools/pkgtools.SlackBuild index 37315121..fd7ca0a6 100755 --- a/source/a/pkgtools/pkgtools.SlackBuild +++ b/source/a/pkgtools/pkgtools.SlackBuild @@ -30,7 +30,7 @@ PKGNAM=pkgtools # *** UPDATE THESE WITH EACH BUILD: VERSION=15.0 ARCH=${ARCH:-noarch} -BUILD=${BUILD:-31} +BUILD=${BUILD:-32} # 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/a/pkgtools/scripts/installpkg b/source/a/pkgtools/scripts/installpkg index f334728c..f19cf59c 100644 --- a/source/a/pkgtools/scripts/installpkg +++ b/source/a/pkgtools/scripts/installpkg @@ -1,7 +1,7 @@ #!/bin/sh # Copyright 1994, 1998, 2000 Patrick Volkerding, Concord, CA, USA # Copyright 2001, 2003 Slackware Linux, Inc., Concord, CA, USA -# Copyright 2007, 2009, 2011, 2017, 2018, 2019 Patrick Volkerding, Sebeka, MN, USA +# Copyright 2007, 2009, 2011, 2017, 2018, 2019, 2020 Patrick Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,6 +21,11 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # +# Wed Apr 1 21:59:41 UTC 2020 +# If the package contains /install/douninst.sh, copy the uninstall script to +# $ADM_DIR/douninst.sh/$shortname and add the filename to the package list +# in $ADM_DIR/packages/$shortname. +# # Fri Oct 4 06:04:39 UTC 2019 # Add support for --no-overwrite so that upgradepkg can be kind to SSDs. # @@ -281,7 +286,7 @@ ADM_DIR="$ROOT/var/lib/pkgtools" LOG_DIR="$ROOT/var/log/pkgtools" # If the directories don't exist, "initialize" the package database: -for PKGDBDIR in packages scripts setup ; do +for PKGDBDIR in douninst.sh packages scripts setup ; do if [ ! -d $ADM_DIR/$PKGDBDIR ]; then mkdir -p $ADM_DIR/$PKGDBDIR chmod 755 $ADM_DIR/$PKGDBDIR @@ -697,9 +702,14 @@ EOF cp $ROOT/$INSTDIR/doinst.sh $ADM_DIR/scripts/$shortname chmod 755 $ADM_DIR/scripts/$shortname fi - # /install/doinst.sh and /install/slack-* are reserved locations for the package system. + if [ -r $ROOT/$INSTDIR/douninst.sh ]; then + cp $ROOT/$INSTDIR/douninst.sh $ADM_DIR/douninst.sh/$shortname + chmod 755 $ADM_DIR/douninst.sh/$shortname + echo "$(echo $ADM_DIR | rev | cut -f 1-3 -d / | rev)/douninst.sh/$shortname" >> $ADM_DIR/packages/$shortname + fi + # /install/do*inst.sh and /install/slack-* are reserved locations for the package system. # Heh, not any more with a recent tar :-) - ( cd $ROOT/$INSTDIR ; rm -f doinst.sh slack-* 1> /dev/null 2>&1 ) + ( cd $ROOT/$INSTDIR ; rm -f do*inst.sh slack-* 1> /dev/null 2>&1 ) rmdir $ROOT/$INSTDIR 1> /dev/null 2>&1 fi # If we used a scan directory, get rid of it: diff --git a/source/a/pkgtools/scripts/removepkg b/source/a/pkgtools/scripts/removepkg index 0166a59b..5a1c7dcd 100644 --- a/source/a/pkgtools/scripts/removepkg +++ b/source/a/pkgtools/scripts/removepkg @@ -24,6 +24,10 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # +# Wed Apr 1 22:14:46 UTC 2020 +# Add --skip-douninst option to skip running the uninstall script. +# Save removed uninstall scripts in /var/log/removed_uninstall_scripts. +# # Tue Mar 31 03:06:25 UTC 2020 # Support an uninstall script to be executed when the package is removed. # The script should be a standard sh script with the same name as the package @@ -252,7 +256,9 @@ delete_files() { preserve_file "$FILE" fi else - ! [ $TERSE ] && echo " --> $ROOT/$FILE no longer exists. Skipping." + if [ "$(echo $FILE | cut -b1-8)" != "install/" ]; then + ! [ $TERSE ] && echo " --> $ROOT/$FILE no longer exists. Skipping." + fi fi else preserve_dir "$FILE" @@ -337,9 +343,9 @@ remove_packages() { if [ ! "$WARN" = true ]; then echo "Removing package: $(basename $ADM_DIR/packages/$PKGNAME)" # If there's an uninstall script, save it: - if [ -r $ADM_DIR/douninst.sh/$PKGNAME ]; then + if [ -r $ADM_DIR/douninst.sh/$PKGNAME -a ! "$SKIP_DOUNINST" = "true" ]; then cp -a $ADM_DIR/douninst.sh/$PKGNAME $TMP/$PKGNAME - elif [ -r $ADM_DIR/douninst.sh/$(echo ${PKGNAME} | sed "s/-upgraded.*//") ]; then + elif [ -r $ADM_DIR/douninst.sh/$(echo ${PKGNAME} | sed "s/-upgraded.*//") -a ! "$SKIP_DOUNINST" = "true" ]; then cp -a $ADM_DIR/douninst.sh/$(echo ${PKGNAME} | sed "s/-upgraded.*//") $TMP/$PKGNAME else rm -f $TMP/$PKGNAME @@ -391,8 +397,8 @@ remove_packages() { if [ ! "$WARN" = "true" ]; then # We won't assume that anything in /var/log can be trusted to remain there, # so we'll remake the directories and symlinks first: - mkdir -p $LOG_DIR/removed_packages $LOG_DIR/removed_scripts - for symlink in removed_packages removed_scripts ; do + mkdir -p $LOG_DIR/removed_packages $LOG_DIR/removed_scripts $LOG_DIR/removed_uninstall_scripts + for symlink in removed_packages removed_scripts removed_uninstall_scripts ; do if [ ! -L $LOG_DIR/../$symlink ]; then rm -rf $LOG_DIR/../$symlink ( cd $LOG_DIR/.. ; ln -sf pkgtools/$symlink . ) @@ -406,7 +412,8 @@ remove_packages() { # If there is an uninstall script, run it here: if [ -r $TMP/$PKGNAME ]; then cd $ROOT/ ; sh $TMP/$PKGNAME - rm -f $TMP/$PKGNAME + # Move the uninstall script to $LOG_DIR/removed_uninstall_scripts: + mv $TMP/$PKGNAME $LOG_DIR/removed_uninstall_scripts fi # In the case where a library and symlink are removed but an earlier version # remains on the machine, this will link it up and save potential problems: @@ -423,7 +430,7 @@ remove_packages() { } if [ "$#" = "0" ]; then - echo "Usage: $(basename $0) [--copy] [--keep] [--preserve] [--terse] [--warn] packagename ..."; exit 1 + echo "Usage: $(basename $0) [--copy] [--keep] [--preserve] [--skip-douninst] [--terse] [--warn] packagename ..."; exit 1 fi while : ; do @@ -431,6 +438,7 @@ while : ; do -copy | --copy) WARN=true; PRESERVE=true; shift;; -keep | --keep) KEEP=true; shift;; -preserve | --preserve) PRESERVE=true; shift;; + -skip-douninst | --skip-douninst) SKIP_DOUNINST=true; shift;; -terse | --terse) TERSE=0; shift;; -warn | --warn) WARN=true; shift;; -* | --*) echo "Usage: $(basename $0) [-copy] [-keep] [-preserve] [-warn] packagename ..."; exit 1;; diff --git a/source/ap/groff/groff.SlackBuild b/source/ap/groff/groff.SlackBuild index 9714b826..421e66d8 100755 --- a/source/ap/groff/groff.SlackBuild +++ b/source/ap/groff/groff.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=groff VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -88,7 +88,6 @@ CXXFLAGS="$SLKCFLAGS" \ --with-appresdir=/etc/X11/app-defaults \ --mandir=/usr/man \ --infodir=/usr/info \ - --docdir=/usr/doc/groff-$VERSION \ --build=$ARCH-slackware-linux || exit 1 make $NUMJOBS || make || exit 1 @@ -97,9 +96,10 @@ make install DESTDIR=$PKG || exit 1 find $PKG | xargs file | grep -e "executable" -e "shared object" \ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +mv $PKG/usr/share/doc $PKG/usr cp -a \ - BUG-REPORT COPYING* ChangeLog FDL INSTALL* LICENSES MANIFEST MORE.STUFF \ - NEWS PROBLEMS PROJECTS README* REVISION TODO VERSION \ + BUG-REPORT COPYING* ChangeLog FDL INSTALL* LICENSE* MANIFEST MORE.STUFF \ + NEWS* PROBLEMS PROJECTS README* REVISION TODO* VERSION \ $PKG/usr/doc/groff-$VERSION mkdir -p $PKG/usr/doc/groff-$VERSION/xditview cp -a src/devices/xditview/{README,TODO} $PKG/usr/doc/groff-$VERSION/xditview diff --git a/source/d/gcc/gcc.SlackBuild b/source/d/gcc/gcc.SlackBuild index aa95d368..c154888e 100755 --- a/source/d/gcc/gcc.SlackBuild +++ b/source/d/gcc/gcc.SlackBuild @@ -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) "} @@ -168,6 +168,9 @@ cd gcc-$SRCVER || exit 1 # Smite the fixincludes: zcat $CWD/patches/gcc-no_fixincludes.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 +# Fix a gfortran bug: +zcat $CWD/patches/gfortran.deferred-shape-vs-assumed-shape.patch.gz | patch -p0 --verbose --backup --suffix=.orig || exit 1 + # Fix perms/owners: chown -R root:root . find . \ diff --git a/source/d/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch b/source/d/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch new file mode 100644 index 00000000..f695b969 --- /dev/null +++ b/source/d/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch @@ -0,0 +1,40 @@ +[PATCH] deferred-shape vs assumed-shape +Steve Kargl sgk@troutmask.apl.washington.edu +Wed Apr 1 20:04:43 GMT 2020 + +See +https://stackoverflow.com/questions/60972134/whats-wrong-with-the-following-fortran-code-gfortran-dtio-dummy-argument-at + +Is A(:) a deferred-shape array or an assumed-shape array? The +answer of course depends on context. + +This patch fixes the issue found at the above URL. + +Index: gcc/fortran/interface.c +=================================================================== +--- gcc/fortran/interface.c (revision 280157) ++++ gcc/fortran/interface.c (working copy) +@@ -4916,10 +4916,15 @@ check_dtio_arg_TKR_intent (gfc_symbol *fsym, bool type + || ((type != BT_CLASS) && fsym->attr.dimension))) + gfc_error ("DTIO dummy argument at %L must be a scalar", + &fsym->declared_at); +- else if (rank == 1 +- && (fsym->as == NULL || fsym->as->type != AS_ASSUMED_SHAPE)) +- gfc_error ("DTIO dummy argument at %L must be an " +- "ASSUMED SHAPE ARRAY", &fsym->declared_at); ++ else if (rank == 1) ++ { ++ if (fsym->as == NULL ++ || !(fsym->as->type == AS_ASSUMED_SHAPE ++ || (fsym->as->type == AS_DEFERRED && fsym->attr.dummy ++ && !fsym->attr.allocatable && !fsym->attr.pointer))) ++ gfc_error ("DTIO dummy argument at %L must be an " ++ "ASSUMED-SHAPE ARRAY", &fsym->declared_at); ++ } + + if (type == BT_CHARACTER && fsym->ts.u.cl->length != NULL) + gfc_error ("DTIO character argument at %L must have assumed length", + +-- +Steve + diff --git a/source/k/kernel-configs/config-generic-5.4.28 b/source/k/kernel-configs/config-generic-5.4.29 index 10c57d38..6c03fe2f 100644 --- a/source/k/kernel-configs/config-generic-5.4.28 +++ b/source/k/kernel-configs/config-generic-5.4.29 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -929,6 +929,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/k/kernel-configs/config-generic-5.4.28.x64 b/source/k/kernel-configs/config-generic-5.4.29.x64 index 740c0d2a..d5c03bcf 100644 --- a/source/k/kernel-configs/config-generic-5.4.28.x64 +++ b/source/k/kernel-configs/config-generic-5.4.29.x64 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -1000,6 +1000,7 @@ CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/k/kernel-configs/config-generic-smp-5.4.28-smp b/source/k/kernel-configs/config-generic-smp-5.4.29-smp index 6adf66d6..977b6192 100644 --- a/source/k/kernel-configs/config-generic-smp-5.4.28-smp +++ b/source/k/kernel-configs/config-generic-smp-5.4.29-smp @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -978,6 +978,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/k/kernel-configs/config-huge-5.4.28 b/source/k/kernel-configs/config-huge-5.4.29 index 5201d445..cd751856 100644 --- a/source/k/kernel-configs/config-huge-5.4.28 +++ b/source/k/kernel-configs/config-huge-5.4.29 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -929,6 +929,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/k/kernel-configs/config-huge-5.4.28.x64 b/source/k/kernel-configs/config-huge-5.4.29.x64 index f84b5f5c..e01f71dd 100644 --- a/source/k/kernel-configs/config-huge-5.4.28.x64 +++ b/source/k/kernel-configs/config-huge-5.4.29.x64 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -1000,6 +1000,7 @@ CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/k/kernel-configs/config-huge-smp-5.4.28-smp b/source/k/kernel-configs/config-huge-smp-5.4.29-smp index 4612518c..1a69fa6c 100644 --- a/source/k/kernel-configs/config-huge-smp-5.4.28-smp +++ b/source/k/kernel-configs/config-huge-smp-5.4.29-smp @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.4.28 Kernel Configuration +# Linux/x86 5.4.29 Kernel Configuration # # @@ -978,6 +978,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_REDIRECT=y CONFIG_SKB_EXTENSIONS=y # diff --git a/source/x/libva-utils/libva-utils.SlackBuild b/source/x/libva-utils/libva-utils.SlackBuild index d07c0bea..fbd41bc7 100755 --- a/source/x/libva-utils/libva-utils.SlackBuild +++ b/source/x/libva-utils/libva-utils.SlackBuild @@ -75,6 +75,10 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ +# Fix clock skew on too-recently released tarball: +find . -name meson_options.txt -exec touch {} \; +find . -name meson.build -exec touch {} \; + # Configure, build, and install: export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" diff --git a/source/x/libva/libva.SlackBuild b/source/x/libva/libva.SlackBuild index a884bd1b..677a2fa1 100755 --- a/source/x/libva/libva.SlackBuild +++ b/source/x/libva/libva.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=libva 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 |