diff --git a/ChangeLog.rss b/ChangeLog.rss
index db010366b..4cbe5ede4 100644
--- a/ChangeLog.rss
+++ b/ChangeLog.rss
@@ -11,9 +11,39 @@
Tracking Slackware development in git.
en-us
urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f
- Wed, 29 Jan 2025 21:30:11 GMT
- Wed, 29 Jan 2025 22:00:56 GMT
+ Thu, 30 Jan 2025 23:33:53 GMT
+ Fri, 31 Jan 2025 00:20:40 GMT
maintain_current_git.sh v 1.17
+ -
+ Thu, 30 Jan 2025 23:33:53 GMT
+ Thu, 30 Jan 2025 23:33:53 GMT
+ https://git.slackware.nl/current/tag/?h=20250130233353
+ 20250130233353
+
+
+l/SDL3-3.2.0-x86_64-1.txz: Added.
+l/gst-plugins-bad-free-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-base-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-good-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-libav-1.24.12-x86_64-1.txz: Upgraded.
+l/gstreamer-1.24.12-x86_64-1.txz: Upgraded.
+l/libplacebo-7.349.0-x86_64-3.txz: Rebuilt.
+ Patched and recompiled against vulkan-sdk-1.4.304.0.
+x/vulkan-sdk-1.4.304.0-x86_64-1.txz: Upgraded.
+ Shared library .so-version bump.
+testing/packages/aaa_glibc-solibs-2.41-x86_64-1.txz: Added.
+testing/packages/glibc-2.41-x86_64-1.txz: Added.
+ This breaks dhcpcd's privsep, and probably some other stuff.
+ Nothing else in /testing is compiled against glibc-2.41.
+ Also upgraded to libxcrypt-4.4.38.
+testing/packages/glibc-i18n-2.41-x86_64-1.txz: Added.
+testing/packages/glibc-profile-2.41-x86_64-1.txz: Added.
+testing/packages/mesa-25.0.0_rc1-x86_64-1.txz: Added.
+ The radeonsi workaround patch was removed, even though it did still apply.
+ Let me know if the stalls return...
+ ]]>
+
+
-
Wed, 29 Jan 2025 21:30:11 GMT
Wed, 29 Jan 2025 21:30:11 GMT
diff --git a/ChangeLog.txt b/ChangeLog.txt
index d47e47510..efdfa5cfe 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -1,3 +1,25 @@
+Thu Jan 30 23:33:53 UTC 2025
+l/SDL3-3.2.0-x86_64-1.txz: Added.
+l/gst-plugins-bad-free-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-base-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-good-1.24.12-x86_64-1.txz: Upgraded.
+l/gst-plugins-libav-1.24.12-x86_64-1.txz: Upgraded.
+l/gstreamer-1.24.12-x86_64-1.txz: Upgraded.
+l/libplacebo-7.349.0-x86_64-3.txz: Rebuilt.
+ Patched and recompiled against vulkan-sdk-1.4.304.0.
+x/vulkan-sdk-1.4.304.0-x86_64-1.txz: Upgraded.
+ Shared library .so-version bump.
+testing/packages/aaa_glibc-solibs-2.41-x86_64-1.txz: Added.
+testing/packages/glibc-2.41-x86_64-1.txz: Added.
+ This breaks dhcpcd's privsep, and probably some other stuff.
+ Nothing else in /testing is compiled against glibc-2.41.
+ Also upgraded to libxcrypt-4.4.38.
+testing/packages/glibc-i18n-2.41-x86_64-1.txz: Added.
+testing/packages/glibc-profile-2.41-x86_64-1.txz: Added.
+testing/packages/mesa-25.0.0_rc1-x86_64-1.txz: Added.
+ The radeonsi workaround patch was removed, even though it did still apply.
+ Let me know if the stalls return...
++--------------------------+
Wed Jan 29 21:30:11 UTC 2025
n/bind-9.20.5-x86_64-1.txz: Upgraded.
This update fixes security issues:
diff --git a/FILELIST.TXT b/FILELIST.TXT
index 6ddc34e6e..b24fc33e7 100644
--- a/FILELIST.TXT
+++ b/FILELIST.TXT
@@ -1,20 +1,20 @@
-Wed Jan 29 21:34:17 UTC 2025
+Thu Jan 30 23:37:44 UTC 2025
Here is the file list for this directory. If you are using a
mirror site and find missing or extra files in the disk
subdirectories, please have the archive administrator refresh
the mirror.
-drwxr-xr-x 12 root root 4096 2025-01-29 21:30 .
+drwxr-xr-x 12 root root 4096 2025-01-30 23:33 .
-rw-r--r-- 1 root root 5767 2022-02-02 22:44 ./ANNOUNCE.15.0
-rw-r--r-- 1 root root 16617 2022-02-02 23:27 ./CHANGES_AND_HINTS.TXT
--rw-r--r-- 1 root root 1181572 2025-01-29 19:45 ./CHECKSUMS.md5
--rw-r--r-- 1 root root 195 2025-01-29 19:45 ./CHECKSUMS.md5.asc
+-rw-r--r-- 1 root root 1181572 2025-01-29 21:34 ./CHECKSUMS.md5
+-rw-r--r-- 1 root root 195 2025-01-29 21:34 ./CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 17976 1994-06-10 02:28 ./COPYING
-rw-r--r-- 1 root root 35147 2007-06-30 04:21 ./COPYING3
-rw-r--r-- 1 root root 19573 2016-06-23 20:08 ./COPYRIGHT.TXT
-rw-r--r-- 1 root root 616 2006-10-02 04:37 ./CRYPTO_NOTICE.TXT
--rw-r--r-- 1 root root 1308436 2025-01-29 21:30 ./ChangeLog.txt
+-rw-r--r-- 1 root root 1309523 2025-01-30 23:33 ./ChangeLog.txt
drwxr-xr-x 3 root root 4096 2013-03-20 22:17 ./EFI
drwxr-xr-x 2 root root 4096 2025-01-23 21:06 ./EFI/BOOT
-rw-r--r-- 1 root root 1200128 2024-12-13 04:26 ./EFI/BOOT/bootx64.efi
@@ -25,9 +25,9 @@ drwxr-xr-x 2 root root 4096 2025-01-23 21:06 ./EFI/BOOT
-rwxr-xr-x 1 root root 2504 2019-07-05 18:54 ./EFI/BOOT/make-grub.sh
-rw-r--r-- 1 root root 10722 2013-09-21 19:02 ./EFI/BOOT/osdetect.cfg
-rw-r--r-- 1 root root 1273 2013-08-12 21:08 ./EFI/BOOT/tools.cfg
--rw-r--r-- 1 root root 1550083 2025-01-29 19:45 ./FILELIST.TXT
+-rw-r--r-- 1 root root 1550083 2025-01-29 21:34 ./FILELIST.TXT
-rw-r--r-- 1 root root 1572 2012-08-29 18:27 ./GPG-KEY
--rw-r--r-- 1 root root 929130 2025-01-29 21:34 ./PACKAGES.TXT
+-rw-r--r-- 1 root root 929663 2025-01-30 23:37 ./PACKAGES.TXT
-rw-r--r-- 1 root root 8034 2022-02-02 03:36 ./README.TXT
-rw-r--r-- 1 root root 2640 2025-01-23 20:54 ./README.initrd
-rw-r--r-- 1 root root 34114 2023-12-11 20:35 ./README_CRYPT.TXT
@@ -663,11 +663,11 @@ drwxr-xr-x 2 root root 4096 2022-02-03 07:02 ./patches
-rw-r--r-- 1 root root 575 2022-02-03 07:02 ./patches/FILE_LIST
-rw-r--r-- 1 root root 14 2022-02-03 07:02 ./patches/MANIFEST.bz2
-rw-r--r-- 1 root root 224 2022-02-03 07:02 ./patches/PACKAGES.TXT
-drwxr-xr-x 17 root root 4096 2025-01-29 21:34 ./slackware64
--rw-r--r-- 1 root root 361876 2025-01-29 21:34 ./slackware64/CHECKSUMS.md5
--rw-r--r-- 1 root root 195 2025-01-29 21:34 ./slackware64/CHECKSUMS.md5.asc
--rw-r--r-- 1 root root 449492 2025-01-29 21:33 ./slackware64/FILE_LIST
--rw-r--r-- 1 root root 4854468 2025-01-29 21:33 ./slackware64/MANIFEST.bz2
+drwxr-xr-x 17 root root 4096 2025-01-30 23:37 ./slackware64
+-rw-r--r-- 1 root root 362066 2025-01-30 23:37 ./slackware64/CHECKSUMS.md5
+-rw-r--r-- 1 root root 195 2025-01-30 23:37 ./slackware64/CHECKSUMS.md5.asc
+-rw-r--r-- 1 root root 449731 2025-01-30 23:36 ./slackware64/FILE_LIST
+-rw-r--r-- 1 root root 4854471 2025-01-30 23:36 ./slackware64/MANIFEST.bz2
lrwxrwxrwx 1 root root 15 2009-08-23 23:34 ./slackware64/PACKAGES.TXT -> ../PACKAGES.TXT
drwxr-xr-x 2 root root 32768 2025-01-29 19:44 ./slackware64/a
-rw-r--r-- 1 root root 327 2022-02-15 18:16 ./slackware64/a/aaa_base-15.1-x86_64-2.txt
@@ -2790,7 +2790,7 @@ drwxr-xr-x 2 root root 86016 2025-01-25 19:13 ./slackware64/kde
-rw-r--r-- 1 root root 517 2024-02-15 21:47 ./slackware64/kde/zanshin-23.08.5-x86_64-1.txt
-rw-r--r-- 1 root root 686104 2024-02-15 21:47 ./slackware64/kde/zanshin-23.08.5-x86_64-1.txz
-rw-r--r-- 1 root root 163 2024-02-15 21:47 ./slackware64/kde/zanshin-23.08.5-x86_64-1.txz.asc
-drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
+drwxr-xr-x 2 root root 102400 2025-01-30 23:36 ./slackware64/l
-rw-r--r-- 1 root root 329 2022-03-06 20:00 ./slackware64/l/GConf-3.2.6-x86_64-8.txt
-rw-r--r-- 1 root root 928144 2022-03-06 20:00 ./slackware64/l/GConf-3.2.6-x86_64-8.txz
-rw-r--r-- 1 root root 163 2022-03-06 20:00 ./slackware64/l/GConf-3.2.6-x86_64-8.txz.asc
@@ -2833,6 +2833,9 @@ drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
-rw-r--r-- 1 root root 279 2025-01-02 21:02 ./slackware64/l/SDL2_ttf-2.24.0-x86_64-1.txt
-rw-r--r-- 1 root root 41448 2025-01-02 21:02 ./slackware64/l/SDL2_ttf-2.24.0-x86_64-1.txz
-rw-r--r-- 1 root root 195 2025-01-02 21:02 ./slackware64/l/SDL2_ttf-2.24.0-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 377 2025-01-30 22:03 ./slackware64/l/SDL3-3.2.0-x86_64-1.txt
+-rw-r--r-- 1 root root 1401228 2025-01-30 22:03 ./slackware64/l/SDL3-3.2.0-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 22:03 ./slackware64/l/SDL3-3.2.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 527 2023-06-15 18:19 ./slackware64/l/a52dec-0.8.0-x86_64-1.txt
-rw-r--r-- 1 root root 55712 2023-06-15 18:19 ./slackware64/l/a52dec-0.8.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2023-06-15 18:19 ./slackware64/l/a52dec-0.8.0-x86_64-1.txz.asc
@@ -3133,21 +3136,21 @@ drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
-rw-r--r-- 1 root root 248 2024-10-28 18:23 ./slackware64/l/gspell-1.14.0-x86_64-2.txt
-rw-r--r-- 1 root root 88488 2024-10-28 18:23 ./slackware64/l/gspell-1.14.0-x86_64-2.txz
-rw-r--r-- 1 root root 195 2024-10-28 18:23 ./slackware64/l/gspell-1.14.0-x86_64-2.txz.asc
--rw-r--r-- 1 root root 689 2025-01-09 18:59 ./slackware64/l/gst-plugins-bad-free-1.24.11-x86_64-2.txt
--rw-r--r-- 1 root root 3814552 2025-01-09 18:59 ./slackware64/l/gst-plugins-bad-free-1.24.11-x86_64-2.txz
--rw-r--r-- 1 root root 195 2025-01-09 18:59 ./slackware64/l/gst-plugins-bad-free-1.24.11-x86_64-2.txz.asc
--rw-r--r-- 1 root root 607 2025-01-07 18:04 ./slackware64/l/gst-plugins-base-1.24.11-x86_64-1.txt
--rw-r--r-- 1 root root 2570124 2025-01-07 18:04 ./slackware64/l/gst-plugins-base-1.24.11-x86_64-1.txz
--rw-r--r-- 1 root root 195 2025-01-07 18:04 ./slackware64/l/gst-plugins-base-1.24.11-x86_64-1.txz.asc
--rw-r--r-- 1 root root 444 2025-01-07 18:05 ./slackware64/l/gst-plugins-good-1.24.11-x86_64-1.txt
--rw-r--r-- 1 root root 2344008 2025-01-07 18:05 ./slackware64/l/gst-plugins-good-1.24.11-x86_64-1.txz
--rw-r--r-- 1 root root 195 2025-01-07 18:05 ./slackware64/l/gst-plugins-good-1.24.11-x86_64-1.txz.asc
--rw-r--r-- 1 root root 472 2025-01-07 18:05 ./slackware64/l/gst-plugins-libav-1.24.11-x86_64-1.txt
--rw-r--r-- 1 root root 149748 2025-01-07 18:05 ./slackware64/l/gst-plugins-libav-1.24.11-x86_64-1.txz
--rw-r--r-- 1 root root 195 2025-01-07 18:05 ./slackware64/l/gst-plugins-libav-1.24.11-x86_64-1.txz.asc
--rw-r--r-- 1 root root 602 2025-01-07 18:03 ./slackware64/l/gstreamer-1.24.11-x86_64-1.txt
--rw-r--r-- 1 root root 2015672 2025-01-07 18:03 ./slackware64/l/gstreamer-1.24.11-x86_64-1.txz
--rw-r--r-- 1 root root 195 2025-01-07 18:03 ./slackware64/l/gstreamer-1.24.11-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 689 2025-01-30 19:13 ./slackware64/l/gst-plugins-bad-free-1.24.12-x86_64-1.txt
+-rw-r--r-- 1 root root 3816644 2025-01-30 19:13 ./slackware64/l/gst-plugins-bad-free-1.24.12-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 19:13 ./slackware64/l/gst-plugins-bad-free-1.24.12-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 607 2025-01-30 19:11 ./slackware64/l/gst-plugins-base-1.24.12-x86_64-1.txt
+-rw-r--r-- 1 root root 2579956 2025-01-30 19:11 ./slackware64/l/gst-plugins-base-1.24.12-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 19:11 ./slackware64/l/gst-plugins-base-1.24.12-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 444 2025-01-30 19:13 ./slackware64/l/gst-plugins-good-1.24.12-x86_64-1.txt
+-rw-r--r-- 1 root root 2345060 2025-01-30 19:13 ./slackware64/l/gst-plugins-good-1.24.12-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 19:13 ./slackware64/l/gst-plugins-good-1.24.12-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 472 2025-01-30 19:13 ./slackware64/l/gst-plugins-libav-1.24.12-x86_64-1.txt
+-rw-r--r-- 1 root root 151092 2025-01-30 19:13 ./slackware64/l/gst-plugins-libav-1.24.12-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 19:13 ./slackware64/l/gst-plugins-libav-1.24.12-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 602 2025-01-30 19:11 ./slackware64/l/gstreamer-1.24.12-x86_64-1.txt
+-rw-r--r-- 1 root root 2018940 2025-01-30 19:11 ./slackware64/l/gstreamer-1.24.12-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 19:11 ./slackware64/l/gstreamer-1.24.12-x86_64-1.txz.asc
-rw-r--r-- 1 root root 351 2021-02-13 06:41 ./slackware64/l/gtk+-1.2.10-x86_64-9.txt
-rw-r--r-- 1 root root 810820 2021-02-13 06:41 ./slackware64/l/gtk+-1.2.10-x86_64-9.txz
-rw-r--r-- 1 root root 163 2021-02-13 06:41 ./slackware64/l/gtk+-1.2.10-x86_64-9.txz.asc
@@ -3483,9 +3486,9 @@ drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
-rw-r--r-- 1 root root 421 2024-08-31 17:55 ./slackware64/l/libpcap-1.10.5-x86_64-1.txt
-rw-r--r-- 1 root root 275652 2024-08-31 17:55 ./slackware64/l/libpcap-1.10.5-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-08-31 17:55 ./slackware64/l/libpcap-1.10.5-x86_64-1.txz.asc
--rw-r--r-- 1 root root 458 2024-08-12 20:09 ./slackware64/l/libplacebo-7.349.0-x86_64-2.txt
--rw-r--r-- 1 root root 487924 2024-08-12 20:09 ./slackware64/l/libplacebo-7.349.0-x86_64-2.txz
--rw-r--r-- 1 root root 195 2024-08-12 20:09 ./slackware64/l/libplacebo-7.349.0-x86_64-2.txz.asc
+-rw-r--r-- 1 root root 458 2025-01-30 22:37 ./slackware64/l/libplacebo-7.349.0-x86_64-3.txt
+-rw-r--r-- 1 root root 490476 2025-01-30 22:37 ./slackware64/l/libplacebo-7.349.0-x86_64-3.txz
+-rw-r--r-- 1 root root 195 2025-01-30 22:37 ./slackware64/l/libplacebo-7.349.0-x86_64-3.txz.asc
-rw-r--r-- 1 root root 335 2024-11-22 00:55 ./slackware64/l/libplist-2.6.0-x86_64-2.txt
-rw-r--r-- 1 root root 179720 2024-11-22 00:55 ./slackware64/l/libplist-2.6.0-x86_64-2.txz
-rw-r--r-- 1 root root 195 2024-11-22 00:55 ./slackware64/l/libplist-2.6.0-x86_64-2.txz.asc
@@ -3666,8 +3669,8 @@ drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
-rw-r--r-- 1 root root 272 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txt
-rw-r--r-- 1 root root 85240 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txz
-rw-r--r-- 1 root root 163 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txz.asc
--rw-r--r-- 1 root root 33655 2025-01-28 19:50 ./slackware64/l/maketag
--rw-r--r-- 1 root root 33655 2025-01-28 19:50 ./slackware64/l/maketag.ez
+-rw-r--r-- 1 root root 33716 2025-01-30 22:21 ./slackware64/l/maketag
+-rw-r--r-- 1 root root 33716 2025-01-30 22:21 ./slackware64/l/maketag.ez
-rw-r--r-- 1 root root 520 2024-10-15 19:59 ./slackware64/l/media-player-info-26-noarch-1.txt
-rw-r--r-- 1 root root 24496 2024-10-15 19:59 ./slackware64/l/media-player-info-26-noarch-1.txz
-rw-r--r-- 1 root root 195 2024-10-15 19:59 ./slackware64/l/media-player-info-26-noarch-1.txz.asc
@@ -4088,7 +4091,7 @@ drwxr-xr-x 2 root root 102400 2025-01-29 19:44 ./slackware64/l
-rw-r--r-- 1 root root 356 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txt
-rw-r--r-- 1 root root 514212 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txz
-rw-r--r-- 1 root root 163 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txz.asc
--rw-r--r-- 1 root root 6402 2025-01-28 19:50 ./slackware64/l/tagfile
+-rw-r--r-- 1 root root 6411 2025-01-30 22:21 ./slackware64/l/tagfile
-rw-r--r-- 1 root root 368 2023-07-01 18:40 ./slackware64/l/taglib-1.13.1-x86_64-1.txt
-rw-r--r-- 1 root root 380512 2023-07-01 18:40 ./slackware64/l/taglib-1.13.1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2023-07-01 18:40 ./slackware64/l/taglib-1.13.1-x86_64-1.txz.asc
@@ -4677,7 +4680,7 @@ drwxr-xr-x 2 root root 4096 2024-12-05 21:43 ./slackware64/tcl
-rw-r--r-- 1 root root 227 2024-09-17 23:06 ./slackware64/tcl/tk-8.6.15-x86_64-1.txt
-rw-r--r-- 1 root root 1813700 2024-09-17 23:06 ./slackware64/tcl/tk-8.6.15-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-09-17 23:06 ./slackware64/tcl/tk-8.6.15-x86_64-1.txz.asc
-drwxr-xr-x 2 root root 65536 2025-01-23 21:14 ./slackware64/x
+drwxr-xr-x 2 root root 65536 2025-01-30 23:36 ./slackware64/x
-rw-r--r-- 1 root root 440 2024-08-09 18:16 ./slackware64/x/OpenCC-1.1.9-x86_64-1.txt
-rw-r--r-- 1 root root 649604 2024-08-09 18:16 ./slackware64/x/OpenCC-1.1.9-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-08-09 18:16 ./slackware64/x/OpenCC-1.1.9-x86_64-1.txz.asc
@@ -5241,9 +5244,9 @@ drwxr-xr-x 2 root root 65536 2025-01-23 21:14 ./slackware64/x
-rw-r--r-- 1 root root 338 2022-10-15 19:51 ./slackware64/x/viewres-1.0.7-x86_64-1.txt
-rw-r--r-- 1 root root 26808 2022-10-15 19:51 ./slackware64/x/viewres-1.0.7-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-10-15 19:51 ./slackware64/x/viewres-1.0.7-x86_64-1.txz.asc
--rw-r--r-- 1 root root 527 2024-09-26 17:04 ./slackware64/x/vulkan-sdk-1.3.290.0-x86_64-2.txt
--rw-r--r-- 1 root root 29952164 2024-09-26 17:04 ./slackware64/x/vulkan-sdk-1.3.290.0-x86_64-2.txz
--rw-r--r-- 1 root root 195 2024-09-26 17:04 ./slackware64/x/vulkan-sdk-1.3.290.0-x86_64-2.txz.asc
+-rw-r--r-- 1 root root 527 2025-01-30 22:36 ./slackware64/x/vulkan-sdk-1.4.304.0-x86_64-1.txt
+-rw-r--r-- 1 root root 30692648 2025-01-30 22:36 ./slackware64/x/vulkan-sdk-1.4.304.0-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 22:36 ./slackware64/x/vulkan-sdk-1.4.304.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 551 2024-08-25 17:16 ./slackware64/x/wayland-1.23.1-x86_64-1.txt
-rw-r--r-- 1 root root 137924 2024-08-25 17:16 ./slackware64/x/wayland-1.23.1-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-08-25 17:16 ./slackware64/x/wayland-1.23.1-x86_64-1.txz.asc
@@ -5481,9 +5484,9 @@ drwxr-xr-x 2 root root 65536 2025-01-23 21:14 ./slackware64/x
-rw-r--r-- 1 root root 293 2024-11-14 19:36 ./slackware64/x/xlogo-1.0.7-x86_64-1.txt
-rw-r--r-- 1 root root 26468 2024-11-14 19:36 ./slackware64/x/xlogo-1.0.7-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-11-14 19:36 ./slackware64/x/xlogo-1.0.7-x86_64-1.txz.asc
--rw-r--r-- 1 root root 348 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txt
--rw-r--r-- 1 root root 19296 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txz
--rw-r--r-- 1 root root 163 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 348 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txt
+-rw-r--r-- 1 root root 19296 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txz
+-rw-r--r-- 1 root root 163 2022-11-14 19:35 ./slackware64/x/xlsatoms-1.1.4-x86_64-1.txz.asc
-rw-r--r-- 1 root root 286 2022-11-14 19:35 ./slackware64/x/xlsclients-1.1.5-x86_64-1.txt
-rw-r--r-- 1 root root 22684 2022-11-14 19:35 ./slackware64/x/xlsclients-1.1.5-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-11-14 19:35 ./slackware64/x/xlsclients-1.1.5-x86_64-1.txz.asc
@@ -5871,11 +5874,11 @@ drwxr-xr-x 2 root root 4096 2024-12-23 23:46 ./slackware64/y
-rw-r--r-- 1 root root 1488844 2024-05-05 17:22 ./slackware64/y/nethack-3.6.7-x86_64-2.txz
-rw-r--r-- 1 root root 195 2024-05-05 17:22 ./slackware64/y/nethack-3.6.7-x86_64-2.txz.asc
-rw-r--r-- 1 root root 36 2024-12-23 23:42 ./slackware64/y/tagfile
-drwxr-xr-x 18 root root 4096 2025-01-29 19:45 ./source
--rw-r--r-- 1 root root 638297 2025-01-29 19:45 ./source/CHECKSUMS.md5
--rw-r--r-- 1 root root 195 2025-01-29 19:45 ./source/CHECKSUMS.md5.asc
--rw-r--r-- 1 root root 893485 2025-01-29 19:45 ./source/FILE_LIST
--rw-r--r-- 1 root root 31712015 2025-01-29 19:45 ./source/MANIFEST.bz2
+drwxr-xr-x 18 root root 4096 2025-01-30 23:37 ./source
+-rw-r--r-- 1 root root 638690 2025-01-30 23:37 ./source/CHECKSUMS.md5
+-rw-r--r-- 1 root root 195 2025-01-30 23:37 ./source/CHECKSUMS.md5.asc
+-rw-r--r-- 1 root root 894040 2025-01-30 23:37 ./source/FILE_LIST
+-rw-r--r-- 1 root root 31895698 2025-01-30 23:37 ./source/MANIFEST.bz2
-rw-r--r-- 1 root root 828 2022-02-02 04:43 ./source/README.TXT
drwxr-xr-x 127 root root 4096 2025-01-26 21:28 ./source/a
-rw-r--r-- 1 root root 339 2023-09-28 19:06 ./source/a/FTBFSlog
@@ -10227,7 +10230,7 @@ drwxr-xr-x 2 root root 4096 2024-11-03 22:56 ./source/kde/wcslib
-rw-r--r-- 1 root root 2662768 2024-10-28 13:58 ./source/kde/wcslib/wcslib-8.4.tar.lz
-rwxr-xr-x 1 root root 4397 2024-11-03 22:56 ./source/kde/wcslib/wcslib.SlackBuild
-rw-r--r-- 1 root root 44 2023-11-17 18:29 ./source/kde/wcslib/wcslib.url
-drwxr-xr-x 449 root root 16384 2025-01-28 19:24 ./source/l
+drwxr-xr-x 450 root root 16384 2025-01-30 22:37 ./source/l
-rw-r--r-- 1 root root 2775 2024-12-27 19:56 ./source/l/FTBFSlog
drwxr-xr-x 3 root root 4096 2022-03-06 19:58 ./source/l/GConf
-rw-r--r-- 1 root root 1559904 2013-01-22 02:48 ./source/l/GConf/GConf-3.2.6.tar.xz
@@ -10303,6 +10306,11 @@ drwxr-xr-x 2 root root 4096 2025-01-02 21:01 ./source/l/SDL2_ttf
-rwxr-xr-x 1 root root 4393 2025-01-02 21:01 ./source/l/SDL2_ttf/SDL2_ttf.SlackBuild
-rw-r--r-- 1 root root 132 2025-01-02 21:00 ./source/l/SDL2_ttf/SDL2_ttf.url
-rw-r--r-- 1 root root 767 2022-08-20 18:33 ./source/l/SDL2_ttf/slack-desc
+drwxr-xr-x 2 root root 4096 2025-01-30 21:58 ./source/l/SDL3
+-rw-r--r-- 1 root root 13007785 2025-01-21 19:18 ./source/l/SDL3/SDL3-3.2.0.tar.lz
+-rwxr-xr-x 1 root root 4484 2025-01-30 22:02 ./source/l/SDL3/SDL3.SlackBuild
+-rw-r--r-- 1 root root 118 2025-01-30 21:57 ./source/l/SDL3/SDL3.url
+-rw-r--r-- 1 root root 861 2025-01-30 21:58 ./source/l/SDL3/slack-desc
drwxr-xr-x 2 root root 4096 2023-06-15 18:14 ./source/l/a52dec
-rw-r--r-- 1 root root 62885 2022-11-05 09:16 ./source/l/a52dec/a52dec-v0.8.0.tar.lz
-rwxr-xr-x 1 root root 4065 2023-06-15 18:19 ./source/l/a52dec/a52dec.SlackBuild
@@ -10866,35 +10874,35 @@ drwxr-xr-x 2 root root 4096 2024-10-27 23:58 ./source/l/gspell
-rwxr-xr-x 1 root root 3930 2024-10-27 23:58 ./source/l/gspell/gspell.SlackBuild
-rw-r--r-- 1 root root 316 2023-07-08 09:49 ./source/l/gspell/gspell.info
-rw-r--r-- 1 root root 702 2024-10-20 21:40 ./source/l/gspell/slack-desc
-drwxr-xr-x 2 root root 4096 2025-01-07 18:06 ./source/l/gst-plugins-bad-free
--rwxr-xr-x 1 root root 1879 2025-01-07 18:06 ./source/l/gst-plugins-bad-free/fetch-sources.sh
+drwxr-xr-x 2 root root 4096 2025-01-30 18:29 ./source/l/gst-plugins-bad-free
+-rwxr-xr-x 1 root root 1879 2025-01-30 18:29 ./source/l/gst-plugins-bad-free/fetch-sources.sh
-rwxr-xr-x 1 root root 2471 2024-03-05 18:41 ./source/l/gst-plugins-bad-free/gst-p-bad-cleanup.sh
--rw-r--r-- 1 root root 6732010 2025-01-07 18:06 ./source/l/gst-plugins-bad-free/gst-plugins-bad-free-1.24.11.tar.lz
--rwxr-xr-x 1 root root 4574 2025-01-09 18:59 ./source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
+-rw-r--r-- 1 root root 6735968 2025-01-30 18:29 ./source/l/gst-plugins-bad-free/gst-plugins-bad-free-1.24.12.tar.lz
+-rwxr-xr-x 1 root root 4574 2025-01-30 18:28 ./source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
-rw-r--r-- 1 root root 39 2021-09-25 03:56 ./source/l/gst-plugins-bad-free/gst-plugins-bad.url
-rw-r--r-- 1 root root 1157 2021-09-25 19:07 ./source/l/gst-plugins-bad-free/slack-desc
-drwxr-xr-x 2 root root 4096 2025-01-07 18:04 ./source/l/gst-plugins-base
--rw-r--r-- 1 root root 2455952 2025-01-06 20:11 ./source/l/gst-plugins-base/gst-plugins-base-1.24.11.tar.xz
--rw-r--r-- 1 root root 833 2025-01-06 20:11 ./source/l/gst-plugins-base/gst-plugins-base-1.24.11.tar.xz.asc
+drwxr-xr-x 2 root root 4096 2025-01-30 18:26 ./source/l/gst-plugins-base
+-rw-r--r-- 1 root root 2457880 2025-01-29 20:21 ./source/l/gst-plugins-base/gst-plugins-base-1.24.12.tar.xz
+-rw-r--r-- 1 root root 833 2025-01-29 20:21 ./source/l/gst-plugins-base/gst-plugins-base-1.24.12.tar.xz.asc
-rwxr-xr-x 1 root root 4417 2024-07-30 17:14 ./source/l/gst-plugins-base/gst-plugins-base.SlackBuild
-rw-r--r-- 1 root root 39 2018-05-17 18:59 ./source/l/gst-plugins-base/gst-plugins-base.url
-rw-r--r-- 1 root root 1062 2018-02-27 06:12 ./source/l/gst-plugins-base/slack-desc
-drwxr-xr-x 2 root root 4096 2025-01-07 18:04 ./source/l/gst-plugins-good
--rw-r--r-- 1 root root 2937828 2025-01-06 20:11 ./source/l/gst-plugins-good/gst-plugins-good-1.24.11.tar.xz
--rw-r--r-- 1 root root 833 2025-01-06 20:11 ./source/l/gst-plugins-good/gst-plugins-good-1.24.11.tar.xz.asc
+drwxr-xr-x 2 root root 4096 2025-01-30 18:27 ./source/l/gst-plugins-good
+-rw-r--r-- 1 root root 2941656 2025-01-29 20:21 ./source/l/gst-plugins-good/gst-plugins-good-1.24.12.tar.xz
+-rw-r--r-- 1 root root 833 2025-01-29 20:21 ./source/l/gst-plugins-good/gst-plugins-good-1.24.12.tar.xz.asc
-rwxr-xr-x 1 root root 4489 2024-07-30 17:15 ./source/l/gst-plugins-good/gst-plugins-good.SlackBuild
-rw-r--r-- 1 root root 39 2018-05-17 19:07 ./source/l/gst-plugins-good/gst-plugins-good.url
-rw-r--r-- 1 root root 908 2021-09-25 04:02 ./source/l/gst-plugins-good/slack-desc
-drwxr-xr-x 2 root root 4096 2025-01-07 18:05 ./source/l/gst-plugins-libav
--rw-r--r-- 1 root root 218756 2025-01-06 20:11 ./source/l/gst-plugins-libav/gst-libav-1.24.11.tar.xz
--rw-r--r-- 1 root root 833 2025-01-06 20:11 ./source/l/gst-plugins-libav/gst-libav-1.24.11.tar.xz.asc
+drwxr-xr-x 2 root root 4096 2025-01-30 18:28 ./source/l/gst-plugins-libav
+-rw-r--r-- 1 root root 221148 2025-01-29 20:21 ./source/l/gst-plugins-libav/gst-libav-1.24.12.tar.xz
+-rw-r--r-- 1 root root 833 2025-01-29 20:21 ./source/l/gst-plugins-libav/gst-libav-1.24.12.tar.xz.asc
-rwxr-xr-x 1 root root 4243 2024-08-21 20:15 ./source/l/gst-plugins-libav/gst-plugins-libav.SlackBuild
-rw-r--r-- 1 root root 39 2018-05-17 19:10 ./source/l/gst-plugins-libav/gst-plugins-libav.url
-rwxr-xr-x 1 root root 2527 2018-05-17 19:12 ./source/l/gst-plugins-libav/paredown.sh
-rw-r--r-- 1 root root 937 2018-02-27 06:12 ./source/l/gst-plugins-libav/slack-desc
-drwxr-xr-x 2 root root 4096 2025-01-07 18:03 ./source/l/gstreamer
--rw-r--r-- 1 root root 1870996 2025-01-06 20:11 ./source/l/gstreamer/gstreamer-1.24.11.tar.xz
--rw-r--r-- 1 root root 833 2025-01-06 20:11 ./source/l/gstreamer/gstreamer-1.24.11.tar.xz.asc
+drwxr-xr-x 2 root root 4096 2025-01-30 18:25 ./source/l/gstreamer
+-rw-r--r-- 1 root root 1873544 2025-01-29 20:21 ./source/l/gstreamer/gstreamer-1.24.12.tar.xz
+-rw-r--r-- 1 root root 833 2025-01-29 20:21 ./source/l/gstreamer/gstreamer-1.24.12.tar.xz.asc
-rwxr-xr-x 1 root root 4340 2024-07-30 17:12 ./source/l/gstreamer/gstreamer.SlackBuild
-rw-r--r-- 1 root root 39 2018-05-17 18:59 ./source/l/gstreamer/gstreamer.url
-rw-r--r-- 1 root root 1057 2018-10-17 03:01 ./source/l/gstreamer/slack-desc
@@ -11483,9 +11491,10 @@ drwxr-xr-x 2 root root 4096 2024-08-31 17:55 ./source/l/libpcap
-rw-r--r-- 1 root root 442 2024-08-30 23:58 ./source/l/libpcap/libpcap-1.10.5.tar.xz.sig
-rwxr-xr-x 1 root root 4555 2024-08-31 17:55 ./source/l/libpcap/libpcap.SlackBuild
-rw-r--r-- 1 root root 876 2019-10-01 20:13 ./source/l/libpcap/slack-desc
-drwxr-xr-x 2 root root 4096 2024-08-12 20:01 ./source/l/libplacebo
+drwxr-xr-x 2 root root 4096 2025-01-30 22:29 ./source/l/libplacebo
+-rw-r--r-- 1 root root 1260 2025-01-30 22:29 ./source/l/libplacebo/056b852018db04aa2ebc0982e27713afcea8106b.patch
-rw-r--r-- 1 root root 644764 2024-06-19 15:54 ./source/l/libplacebo/libplacebo-7.349.0.tar.lz
--rwxr-xr-x 1 root root 3326 2024-08-12 20:01 ./source/l/libplacebo/libplacebo.SlackBuild
+-rwxr-xr-x 1 root root 3443 2025-01-30 22:30 ./source/l/libplacebo/libplacebo.SlackBuild
-rw-r--r-- 1 root root 36 2024-01-28 18:59 ./source/l/libplacebo/libplacebo.url
-rw-r--r-- 1 root root 948 2024-02-04 18:45 ./source/l/libplacebo/slack-desc
drwxr-xr-x 2 root root 4096 2024-11-21 23:50 ./source/l/libplist
@@ -11879,13 +11888,13 @@ drwxr-xr-x 2 root root 4096 2024-12-29 18:51 ./source/l/netpbm
-rw-r--r-- 1 root root 385 2019-04-17 08:07 ./source/l/netpbm/netpbm-cmuwtopbm.patch.gz
-rw-r--r-- 1 root root 1611 2020-07-22 19:08 ./source/l/netpbm/netpbm-docfix.patch.gz
-rw-r--r-- 1 root root 331 2019-04-17 08:07 ./source/l/netpbm/netpbm-gcc4.patch.gz
--rw-r--r-- 1 root root 260 2023-12-29 19:56 ./source/l/netpbm/netpbm-glibc.patch.gz
--rw-r--r-- 1 root root 668 2019-04-17 08:07 ./source/l/netpbm/netpbm-libdir-so.patch.gz
--rw-r--r-- 1 root root 505 2020-09-01 01:18 ./source/l/netpbm/netpbm-manfix.patch.gz
--rw-r--r-- 1 root root 761 2020-09-01 01:21 ./source/l/netpbm/netpbm-manual-pages.patch.gz
--rw-r--r-- 1 root root 307 2019-04-17 08:07 ./source/l/netpbm/netpbm-multilib.patch.gz
--rw-r--r-- 1 root root 273 2018-07-23 13:37 ./source/l/netpbm/netpbm-noppmtompeg.patch.gz
--rw-r--r-- 1 root root 510 2023-10-02 18:28 ./source/l/netpbm/netpbm-ppmfadeusage.patch.gz
+-rw-r--r-- 1 root root 260 2023-12-29 19:56 ./source/l/netpbm/netpbm-glibc.patch.gz
+-rw-r--r-- 1 root root 668 2019-04-17 08:07 ./source/l/netpbm/netpbm-libdir-so.patch.gz
+-rw-r--r-- 1 root root 505 2020-09-01 01:18 ./source/l/netpbm/netpbm-manfix.patch.gz
+-rw-r--r-- 1 root root 761 2020-09-01 01:21 ./source/l/netpbm/netpbm-manual-pages.patch.gz
+-rw-r--r-- 1 root root 307 2019-04-17 08:07 ./source/l/netpbm/netpbm-multilib.patch.gz
+-rw-r--r-- 1 root root 273 2018-07-23 13:37 ./source/l/netpbm/netpbm-noppmtompeg.patch.gz
+-rw-r--r-- 1 root root 510 2023-10-02 18:28 ./source/l/netpbm/netpbm-ppmfadeusage.patch.gz
-rw-r--r-- 1 root root 229 2019-04-17 08:07 ./source/l/netpbm/netpbm-python3.patch.gz
-rw-r--r-- 1 root root 21893 2019-08-21 07:19 ./source/l/netpbm/netpbm-security-code.patch.gz
-rw-r--r-- 1 root root 394 2019-04-17 08:07 ./source/l/netpbm/netpbm-time.patch.gz
@@ -14005,7 +14014,7 @@ drwxr-xr-x 2 root root 4096 2024-09-17 17:47 ./source/tcl/tk
-rwxr-xr-x 1 root root 4267 2024-09-17 17:48 ./source/tcl/tk/tk.SlackBuild
-rw-r--r-- 1 root root 48 2021-01-04 23:37 ./source/tcl/tk/tk.url
-rw-r--r-- 1 root root 3044094 2024-09-16 15:55 ./source/tcl/tk/tk8.6.15-src.tar.lz
-drwxr-xr-x 91 root root 4096 2025-01-22 19:29 ./source/x
+drwxr-xr-x 91 root root 4096 2025-01-30 22:31 ./source/x
-rw-r--r-- 1 root root 760 2023-05-22 17:51 ./source/x/FTBFSlog
drwxr-xr-x 2 root root 4096 2024-08-09 18:15 ./source/x/OpenCC
-rw-r--r-- 1 root root 2520649 2024-08-03 03:45 ./source/x/OpenCC/OpenCC-ver.1.1.9.tar.lz
@@ -14493,35 +14502,36 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/x/urw-core35-fonts
-rw-r--r-- 1 root root 970 2018-02-27 06:13 ./source/x/urw-core35-fonts-otf/slack-desc
-rw-r--r-- 1 root root 1518612 2018-04-27 18:20 ./source/x/urw-core35-fonts-otf/urw-core35-fonts-otf-20170801_91edd6e_git.tar.xz
-rwxr-xr-x 1 root root 2525 2021-02-13 05:32 ./source/x/urw-core35-fonts-otf/urw-core35-fonts-otf.SlackBuild
-drwxr-xr-x 2 root root 4096 2024-10-10 17:42 ./source/x/vulkan-sdk
--rw-r--r-- 1 root root 308778 2024-08-07 18:32 ./source/x/vulkan-sdk/CrashDiagnosticLayer.git-CrashDiagnosticLayer.git.tar.lz
--rw-r--r-- 1 root root 19322008 2024-08-07 18:32 ./source/x/vulkan-sdk/DirectXShaderCompiler-49d1ae9a029c404141050e270c05c9348b1011af.tar.lz
+drwxr-xr-x 2 root root 4096 2025-01-30 21:46 ./source/x/vulkan-sdk
+-rw-r--r-- 1 root root 324977 2025-01-30 21:24 ./source/x/vulkan-sdk/CrashDiagnosticLayer-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 19396154 2025-01-30 21:25 ./source/x/vulkan-sdk/DirectXShaderCompiler-d39324e0635130e834a68e33b0c603cf5fc9fb4f.tar.lz
-rw-r--r-- 1 root root 717 2024-02-03 20:29 ./source/x/vulkan-sdk/DirectXShaderCompiler.noverify.patch
--rw-r--r-- 1 root root 935974 2024-08-07 18:27 ./source/x/vulkan-sdk/SPIRV-Cross-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 180232 2024-08-07 18:27 ./source/x/vulkan-sdk/SPIRV-Headers-2acb319af38d43be3ea76bfabf3998e5281d8d12.tar.lz
--rw-r--r-- 1 root root 789173 2024-08-07 18:28 ./source/x/vulkan-sdk/SPIRV-Reflect-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 2035721 2024-08-07 18:28 ./source/x/vulkan-sdk/SPIRV-Tools-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 10 2024-08-07 18:33 ./source/x/vulkan-sdk/VERSION
--rw-r--r-- 1 root root 314782 2024-08-07 18:30 ./source/x/vulkan-sdk/Vulkan-ExtensionLayer-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 1188117 2024-08-07 18:28 ./source/x/vulkan-sdk/Vulkan-Headers-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 1411377 2024-08-07 18:29 ./source/x/vulkan-sdk/Vulkan-Loader-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 810514 2024-08-07 18:30 ./source/x/vulkan-sdk/Vulkan-Profiles-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 466751 2024-08-07 18:29 ./source/x/vulkan-sdk/Vulkan-Tools-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 361862 2024-08-07 18:30 ./source/x/vulkan-sdk/Vulkan-Utility-Libraries-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 3236037 2024-08-07 18:29 ./source/x/vulkan-sdk/Vulkan-ValidationLayers-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 3721697 2024-08-07 18:33 ./source/x/vulkan-sdk/VulkanCapsViewer-3.41.tar.lz
--rw-r--r-- 1 root root 639394 2024-08-07 18:32 ./source/x/vulkan-sdk/VulkanMemoryAllocator-v3.1.0.tar.lz
--rw-r--r-- 1 root root 3828195 2024-08-07 18:32 ./source/x/vulkan-sdk/VulkanTools-vulkan-sdk-1.3.290.tar.lz
--rwxr-xr-x 1 root root 7275 2024-06-10 03:10 ./source/x/vulkan-sdk/fetch-sources.sh
--rw-r--r-- 1 root root 25129726 2024-08-07 18:31 ./source/x/vulkan-sdk/gfxreconstruct-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 2018242 2024-08-07 18:27 ./source/x/vulkan-sdk/glslang-vulkan-sdk-1.3.290.tar.lz
--rw-r--r-- 1 root root 127740 2024-08-07 18:30 ./source/x/vulkan-sdk/jsoncpp-1.9.5.tar.lz
--rw-r--r-- 1 root root 135473 2024-08-07 18:30 ./source/x/vulkan-sdk/robin-hood-hashing-3.11.5.tar.lz
--rw-r--r-- 1 root root 165128 2024-08-07 18:33 ./source/x/vulkan-sdk/shaderc-2024.1.tar.lz
+-rw-r--r-- 1 root root 942679 2025-01-30 21:18 ./source/x/vulkan-sdk/SPIRV-Cross-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 189274 2025-01-30 21:18 ./source/x/vulkan-sdk/SPIRV-Headers-3f17b2af6784bfa2c5aa5dbb8e0e74a607dd8b3b.tar.lz
+-rw-r--r-- 1 root root 791562 2025-01-30 21:18 ./source/x/vulkan-sdk/SPIRV-Reflect-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 2056096 2025-01-30 21:21 ./source/x/vulkan-sdk/SPIRV-Tools-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 10 2025-01-30 21:26 ./source/x/vulkan-sdk/VERSION
+-rw-r--r-- 1 root root 318133 2025-01-30 21:23 ./source/x/vulkan-sdk/Vulkan-ExtensionLayer-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 1268079 2025-01-30 21:21 ./source/x/vulkan-sdk/Vulkan-Headers-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 1436257 2025-01-30 21:21 ./source/x/vulkan-sdk/Vulkan-Loader-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 840335 2025-01-30 21:23 ./source/x/vulkan-sdk/Vulkan-Profiles-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 466163 2025-01-30 21:22 ./source/x/vulkan-sdk/Vulkan-Tools-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 380550 2025-01-30 21:23 ./source/x/vulkan-sdk/Vulkan-Utility-Libraries-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 3659745 2025-01-30 21:22 ./source/x/vulkan-sdk/Vulkan-ValidationLayers-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 3804119 2025-01-30 21:26 ./source/x/vulkan-sdk/VulkanCapsViewer-4.00.tar.lz
+-rw-r--r-- 1 root root 654586 2025-01-30 21:24 ./source/x/vulkan-sdk/VulkanMemoryAllocator-v3.2.0.tar.lz
+-rw-r--r-- 1 root root 4647722 2025-01-30 21:24 ./source/x/vulkan-sdk/VulkanTools-vulkan-sdk-1.4.304.tar.lz
+-rwxr-xr-x 1 root root 7275 2025-01-30 21:32 ./source/x/vulkan-sdk/fetch-sources.sh
+-rw-r--r-- 1 root root 25177840 2025-01-30 21:23 ./source/x/vulkan-sdk/gfxreconstruct-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 2053873 2025-01-30 21:18 ./source/x/vulkan-sdk/glslang-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 127590 2025-01-30 21:23 ./source/x/vulkan-sdk/jsoncpp-1.9.5.tar.lz
+-rw-r--r-- 1 root root 135539 2025-01-30 21:23 ./source/x/vulkan-sdk/robin-hood-hashing-3.11.5.tar.lz
+-rw-r--r-- 1 root root 166118 2024-12-07 17:03 ./source/x/vulkan-sdk/shaderc-2024.4.tar.lz
-rw-r--r-- 1 root root 1017 2018-02-27 06:13 ./source/x/vulkan-sdk/slack-desc
--rw-r--r-- 1 root root 548666 2024-08-07 18:30 ./source/x/vulkan-sdk/valijson-v1.0.1.tar.lz
--rw-r--r-- 1 root root 34360 2024-08-07 18:32 ./source/x/vulkan-sdk/volk-vulkan-sdk-1.3.290.tar.lz
--rwxr-xr-x 1 root root 33513 2024-10-10 17:42 ./source/x/vulkan-sdk/vulkan-sdk.SlackBuild
+-rw-r--r-- 1 root root 56886650 2025-01-30 21:20 ./source/x/vulkan-sdk/slang-vulkan-sdk-1.4.304.tar.lz
+-rw-r--r-- 1 root root 550130 2025-01-30 21:23 ./source/x/vulkan-sdk/valijson-v1.0.2.tar.lz
+-rw-r--r-- 1 root root 35523 2025-01-30 21:24 ./source/x/vulkan-sdk/volk-vulkan-sdk-1.4.304.tar.lz
+-rwxr-xr-x 1 root root 33478 2025-01-30 21:59 ./source/x/vulkan-sdk/vulkan-sdk.SlackBuild
drwxr-xr-x 2 root root 4096 2024-08-25 17:16 ./source/x/wayland
drwxr-xr-x 2 root root 4096 2024-12-21 18:19 ./source/x/wayland-protocols
-rw-r--r-- 1 root root 1063 2020-02-19 20:00 ./source/x/wayland-protocols/slack-desc
@@ -15251,16 +15261,16 @@ drwxr-xr-x 2 root root 12288 2024-07-29 17:55 ./source/x/x11/slack-desc
-rw-r--r-- 1 root root 760 2018-02-26 22:59 ./source/x/x11/slack-desc/xcompmgr
-rw-r--r-- 1 root root 679 2018-02-26 22:59 ./source/x/x11/slack-desc/xconsole
-rw-r--r-- 1 root root 844 2012-04-08 03:54 ./source/x/x11/slack-desc/xcursor-themes
--rw-r--r-- 1 root root 834 2012-04-08 03:54 ./source/x/x11/slack-desc/xcursorgen
--rw-r--r-- 1 root root 714 2012-04-08 03:55 ./source/x/x11/slack-desc/xdbedizzy
--rw-r--r-- 1 root root 797 2012-04-08 03:55 ./source/x/x11/slack-desc/xditview
--rw-r--r-- 1 root root 707 2012-04-08 03:55 ./source/x/x11/slack-desc/xdm
--rw-r--r-- 1 root root 810 2012-04-08 03:56 ./source/x/x11/slack-desc/xdpyinfo
--rw-r--r-- 1 root root 808 2012-04-08 03:56 ./source/x/x11/slack-desc/xdriinfo
--rw-r--r-- 1 root root 740 2012-04-08 03:57 ./source/x/x11/slack-desc/xedit
--rw-r--r-- 1 root root 947 2018-02-26 22:59 ./source/x/x11/slack-desc/xev
--rw-r--r-- 1 root root 810 2012-04-08 03:57 ./source/x/x11/slack-desc/xextproto
--rw-r--r-- 1 root root 770 2012-04-08 03:58 ./source/x/x11/slack-desc/xeyes
+-rw-r--r-- 1 root root 834 2012-04-08 03:54 ./source/x/x11/slack-desc/xcursorgen
+-rw-r--r-- 1 root root 714 2012-04-08 03:55 ./source/x/x11/slack-desc/xdbedizzy
+-rw-r--r-- 1 root root 797 2012-04-08 03:55 ./source/x/x11/slack-desc/xditview
+-rw-r--r-- 1 root root 707 2012-04-08 03:55 ./source/x/x11/slack-desc/xdm
+-rw-r--r-- 1 root root 810 2012-04-08 03:56 ./source/x/x11/slack-desc/xdpyinfo
+-rw-r--r-- 1 root root 808 2012-04-08 03:56 ./source/x/x11/slack-desc/xdriinfo
+-rw-r--r-- 1 root root 740 2012-04-08 03:57 ./source/x/x11/slack-desc/xedit
+-rw-r--r-- 1 root root 947 2018-02-26 22:59 ./source/x/x11/slack-desc/xev
+-rw-r--r-- 1 root root 810 2012-04-08 03:57 ./source/x/x11/slack-desc/xextproto
+-rw-r--r-- 1 root root 770 2012-04-08 03:58 ./source/x/x11/slack-desc/xeyes
-rw-r--r-- 1 root root 931 2012-04-08 03:58 ./source/x/x11/slack-desc/xf86-input-acecad
-rw-r--r-- 1 root root 932 2012-04-08 03:59 ./source/x/x11/slack-desc/xf86-input-aiptek
-rw-r--r-- 1 root root 918 2012-04-08 03:59 ./source/x/x11/slack-desc/xf86-input-evdev
@@ -16333,16 +16343,28 @@ drwxr-xr-x 2 root root 4096 2023-02-19 18:29 ./source/y/nethack
-rwxr-xr-x 1 root root 4972 2024-05-05 17:20 ./source/y/nethack/nethack.SlackBuild
-rw-r--r-- 1 root root 59 2023-02-19 18:28 ./source/y/nethack/nethack.url
-rw-r--r-- 1 root root 1031 2020-12-30 21:50 ./source/y/nethack/slack-desc
-drwxr-xr-x 4 root root 4096 2025-01-20 23:21 ./testing
--rw-r--r-- 1 root root 3184 2025-01-20 23:21 ./testing/CHECKSUMS.md5
--rw-r--r-- 1 root root 195 2025-01-20 23:21 ./testing/CHECKSUMS.md5.asc
--rw-r--r-- 1 root root 4349 2025-01-20 23:21 ./testing/FILE_LIST
--rw-r--r-- 1 root root 1541955 2025-01-20 23:21 ./testing/MANIFEST.bz2
--rw-r--r-- 1 root root 2447 2025-01-20 23:21 ./testing/PACKAGES.TXT
-drwxr-xr-x 2 root root 4096 2025-01-20 23:21 ./testing/packages
+drwxr-xr-x 4 root root 4096 2025-01-30 23:37 ./testing
+-rw-r--r-- 1 root root 6962 2025-01-30 23:37 ./testing/CHECKSUMS.md5
+-rw-r--r-- 1 root root 195 2025-01-30 23:37 ./testing/CHECKSUMS.md5.asc
+-rw-r--r-- 1 root root 9604 2025-01-30 23:37 ./testing/FILE_LIST
+-rw-r--r-- 1 root root 1894143 2025-01-30 23:37 ./testing/MANIFEST.bz2
+-rw-r--r-- 1 root root 5028 2025-01-30 23:37 ./testing/PACKAGES.TXT
+drwxr-xr-x 2 root root 4096 2025-01-30 23:37 ./testing/packages
+-rw-r--r-- 1 root root 371 2025-01-30 20:56 ./testing/packages/aaa_glibc-solibs-2.41-x86_64-1.txt
+-rw-r--r-- 1 root root 4594264 2025-01-30 20:56 ./testing/packages/aaa_glibc-solibs-2.41-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 20:56 ./testing/packages/aaa_glibc-solibs-2.41-x86_64-1.txz.asc
-rw-r--r-- 1 root root 455 2024-12-29 19:16 ./testing/packages/gimp-3.0.0_RC2-x86_64-1.txt
-rw-r--r-- 1 root root 18693120 2024-12-29 19:16 ./testing/packages/gimp-3.0.0_RC2-x86_64-1.txz
-rw-r--r-- 1 root root 195 2024-12-29 19:16 ./testing/packages/gimp-3.0.0_RC2-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 313 2025-01-30 20:56 ./testing/packages/glibc-2.41-x86_64-1.txt
+-rw-r--r-- 1 root root 8706564 2025-01-30 20:56 ./testing/packages/glibc-2.41-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 20:56 ./testing/packages/glibc-2.41-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 353 2025-01-30 20:55 ./testing/packages/glibc-i18n-2.41-x86_64-1.txt
+-rw-r--r-- 1 root root 19987296 2025-01-30 20:55 ./testing/packages/glibc-i18n-2.41-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 20:55 ./testing/packages/glibc-i18n-2.41-x86_64-1.txz.asc
+-rw-r--r-- 1 root root 507 2025-01-30 20:55 ./testing/packages/glibc-profile-2.41-x86_64-1.txt
+-rw-r--r-- 1 root root 1636188 2025-01-30 20:55 ./testing/packages/glibc-profile-2.41-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 20:55 ./testing/packages/glibc-profile-2.41-x86_64-1.txz.asc
-rw-r--r-- 1 root root 553 2025-01-20 23:07 ./testing/packages/kernel-generic-6.13.0-x86_64-1.txt
-rw-r--r-- 1 root root 75540904 2025-01-20 23:07 ./testing/packages/kernel-generic-6.13.0-x86_64-1.txz
-rw-r--r-- 1 root root 195 2025-01-20 23:07 ./testing/packages/kernel-generic-6.13.0-x86_64-1.txz.asc
@@ -16352,12 +16374,38 @@ drwxr-xr-x 2 root root 4096 2025-01-20 23:21 ./testing/packages
-rw-r--r-- 1 root root 317 2025-01-20 23:00 ./testing/packages/kernel-source-6.13.0-noarch-1.txt
-rw-r--r-- 1 root root 144073368 2025-01-20 23:00 ./testing/packages/kernel-source-6.13.0-noarch-1.txz
-rw-r--r-- 1 root root 195 2025-01-20 23:00 ./testing/packages/kernel-source-6.13.0-noarch-1.txz.asc
-drwxr-xr-x 4 root root 4096 2025-01-20 23:14 ./testing/source
+-rw-r--r-- 1 root root 362 2025-01-30 22:45 ./testing/packages/mesa-25.0.0_rc1-x86_64-1.txt
+-rw-r--r-- 1 root root 39666968 2025-01-30 22:45 ./testing/packages/mesa-25.0.0_rc1-x86_64-1.txz
+-rw-r--r-- 1 root root 195 2025-01-30 22:45 ./testing/packages/mesa-25.0.0_rc1-x86_64-1.txz.asc
+drwxr-xr-x 6 root root 4096 2025-01-30 22:37 ./testing/source
drwxr-xr-x 2 root root 4096 2024-12-29 19:17 ./testing/source/gimp
-rw-r--r-- 1 root root 396 2024-12-29 18:27 ./testing/source/gimp/doinst.sh
-rw-r--r-- 1 root root 26980968 2024-12-27 18:23 ./testing/source/gimp/gimp-3.0.0-RC2.tar.xz
-rwxr-xr-x 1 root root 4753 2024-12-29 19:15 ./testing/source/gimp/gimp.SlackBuild
-rw-r--r-- 1 root root 907 2024-12-29 18:33 ./testing/source/gimp/slack-desc
+drwxr-xr-x 4 root root 4096 2025-01-30 17:56 ./testing/source/glibc
+-rw-r--r-- 1 root root 5930 2023-09-26 20:37 ./testing/source/glibc/doinst.sh-aaa_glibc-solibs
+-rw-r--r-- 1 root root 6032 2023-09-26 20:36 ./testing/source/glibc/doinst.sh-glibc
+-rw-r--r-- 1 root root 415 2021-01-17 00:43 ./testing/source/glibc/glibc-2.32.en_US.no.am.pm.date.format.diff.gz
+-rw-r--r-- 1 root root 19344868 2025-01-30 01:36 ./testing/source/glibc/glibc-2.41.tar.xz
+-rw-r--r-- 1 root root 981 2025-01-30 01:36 ./testing/source/glibc/glibc-2.41.tar.xz.sig
+-rwxr-xr-x 1 root root 174 2004-08-09 06:21 ./testing/source/glibc/glibc-cvs-checkout.sh
+-rwxr-xr-x 1 root root 21858 2025-01-30 17:55 ./testing/source/glibc/glibc.SlackBuild
+-rw-r--r-- 1 root root 312 2019-02-16 20:06 ./testing/source/glibc/glibc.locale.no-archive.diff.gz
+-rw-r--r-- 1 root root 213 2006-08-22 06:33 ./testing/source/glibc/glibc.ru_RU.CP1251.diff.gz
+-rw-r--r-- 1 root root 393654 2025-01-14 14:39 ./testing/source/glibc/libxcrypt-4.4.38.tar.lz
+-rwxr-xr-x 1 root root 3955 2024-07-21 01:18 ./testing/source/glibc/libxcrypt.build
+-rw-r--r-- 1 root root 38 2023-09-17 19:27 ./testing/source/glibc/libxcrypt.url
+drwxr-xr-x 2 root root 4096 2024-07-22 20:49 ./testing/source/glibc/patches
+-rw-r--r-- 1 root root 1349 2023-08-07 21:56 ./testing/source/glibc/patches/reenable_DT_HASH.patch.gz
+drwxr-xr-x 2 root root 4096 2006-09-14 06:32 ./testing/source/glibc/profile.d
+-rwxr-xr-x 1 root root 328 2011-03-27 21:19 ./testing/source/glibc/profile.d/glibc.csh.new
+-rwxr-xr-x 1 root root 325 2006-09-14 08:26 ./testing/source/glibc/profile.d/glibc.sh.new
+-rw-r--r-- 1 root root 835 2021-02-05 20:55 ./testing/source/glibc/slack-desc.aaa_glibc-solibs
+-rw-r--r-- 1 root root 766 2019-02-21 18:35 ./testing/source/glibc/slack-desc.glibc
+-rw-r--r-- 1 root root 1132 2018-02-27 06:12 ./testing/source/glibc/slack-desc.glibc-debug
+-rw-r--r-- 1 root root 811 2018-02-27 06:12 ./testing/source/glibc/slack-desc.glibc-i18n
+-rw-r--r-- 1 root root 968 2018-02-27 06:12 ./testing/source/glibc/slack-desc.glibc-profile
drwxr-xr-x 6 root root 4096 2025-01-20 22:56 ./testing/source/linux-6.13.x
-rwxr-xr-x 1 root root 9830 2024-12-01 23:52 ./testing/source/linux-6.13.x/build-all-kernels.sh
drwxr-xr-x 2 root root 4096 2024-11-07 22:42 ./testing/source/linux-6.13.x/doinst.sh
@@ -16379,6 +16427,28 @@ drwxr-xr-x 2 root root 4096 2024-09-10 18:15 ./testing/source/linux-6.13.x
-rw-r--r-- 1 root root 778 2018-02-27 06:16 ./testing/source/linux-6.13.x/slack-desc/slack-desc.kernel-source
-rw-r--r-- 1 root root 778 2018-02-27 06:16 ./testing/source/linux-6.13.x/slack-desc/slack-desc.kernel-source.vanilla
-rw-r--r-- 1 root root 729 2024-10-24 22:10 ./testing/source/linux-6.13.x/slack-desc/slack-desc.kernel-template
+drwxr-xr-x 5 root root 4096 2025-01-30 22:39 ./testing/source/mesa
+drwxr-xr-x 4 root root 4096 2022-08-08 18:18 ./testing/source/mesa/amber
+-rw-r--r-- 1 root root 16607716 2022-06-08 18:26 ./testing/source/mesa/amber/mesa-21.3.9.tar.xz
+-rw-r--r-- 1 root root 119 2022-06-08 18:26 ./testing/source/mesa/amber/mesa-21.3.9.tar.xz.sig
+drwxr-xr-x 2 root root 4096 2021-10-15 17:57 ./testing/source/mesa/amber/patches
+drwxr-xr-x 2 root root 4096 2021-03-12 01:31 ./testing/source/mesa/amber/patches-revert
+-rw-r--r-- 1 root root 1706 2021-03-12 01:31 ./testing/source/mesa/amber/patches-revert/72566fd92c27b39abe2057f6f23388ec40793dd9.patch
+-rw-r--r-- 1 root root 1259 2021-03-12 01:31 ./testing/source/mesa/amber/patches-revert/80817b6e344258ac9b955f824ebf9019a0fc1610.patch
+-rw-r--r-- 1 root root 388 2018-12-07 19:28 ./testing/source/mesa/doinst.sh.gz
+-rwxr-xr-x 1 root root 720 2015-12-11 03:09 ./testing/source/mesa/get-mesa.sh
+-rw-r--r-- 1 root root 46566696 2025-01-30 20:26 ./testing/source/mesa/mesa-25.0.0-rc1.tar.xz
+-rw-r--r-- 1 root root 310 2025-01-30 20:26 ./testing/source/mesa/mesa-25.0.0-rc1.tar.xz.sig
+-rwxr-xr-x 1 root root 2901 2024-06-09 18:30 ./testing/source/mesa/mesa-amber.build
+-rw-r--r-- 1 root root 14839368 2023-03-22 15:06 ./testing/source/mesa/mesa-demos-9.0.0.tar.xz
+-rw-r--r-- 1 root root 566 2023-03-22 15:06 ./testing/source/mesa/mesa-demos-9.0.0.tar.xz.sig
+-rwxr-xr-x 1 root root 1917 2025-01-22 19:25 ./testing/source/mesa/mesa-demos.build
+-rw-r--r-- 1 root root 935687 2025-01-30 22:39 ./testing/source/mesa/mesa-subprojects.tar.lz
+-rwxr-xr-x 1 root root 6874 2025-01-30 22:38 ./testing/source/mesa/mesa.SlackBuild
+-rw-r--r-- 1 root root 78 2010-10-01 04:23 ./testing/source/mesa/mesa.url
+drwxr-xr-x 2 root root 4096 2025-01-30 22:42 ./testing/source/mesa/patches
+drwxr-xr-x 2 root root 4096 2024-12-19 22:31 ./testing/source/mesa/patches-revert
+-rw-r--r-- 1 root root 814 2019-09-25 19:15 ./testing/source/mesa/slack-desc
drwxr-xr-x 2 root root 4096 2025-01-23 21:06 ./usb-and-pxe-installers
-rw-r--r-- 1 root root 31203 2011-03-21 21:21 ./usb-and-pxe-installers/README_PXE.TXT
-rw-r--r-- 1 root root 9197 2013-09-25 04:33 ./usb-and-pxe-installers/README_USB.TXT
diff --git a/recompress.sh b/recompress.sh
index fc4201709..a4d7d22f0 100755
--- a/recompress.sh
+++ b/recompress.sh
@@ -1021,4 +1021,9 @@ gzip ./source/x/ibus/doinst.sh
gzip ./source/x/ibus/emoji-test.txt
gzip ./source/x/xcm/xcm.udev.rules.diff
gzip ./source/x/libva/doinst.sh
+gzip ./testing/source/glibc/glibc.ru_RU.CP1251.diff
+gzip ./testing/source/glibc/glibc.locale.no-archive.diff
+gzip ./testing/source/glibc/patches/reenable_DT_HASH.patch
+gzip ./testing/source/glibc/glibc-2.32.en_US.no.am.pm.date.format.diff
+gzip ./testing/source/mesa/doinst.sh
gzip ./testing/source/linux-6.13.x/patches-revert-i686/0001-x86-ioremap-Fix-page-aligned-size-calculation-in-__i.patch
diff --git a/slackware64/l/maketag b/slackware64/l/maketag
index 4a53870bf..5a96775a9 100644
--- a/slackware64/l/maketag
+++ b/slackware64/l/maketag
@@ -27,6 +27,7 @@ you are done." 22 74 10 \
"SDL2_mixer" "SDL2 multi-channel audio mixer library" "on" \
"SDL2_net" "SDL2 network library" "on" \
"SDL2_ttf" "SDL2 TrueType font library" "on" \
+"SDL3" "Simple DirectMedia Layer Version 3" "on" \
"a52dec" "ATSC A/52 stream decoder library" "on" \
"aalib" "ASCII Art library" "on" \
"abseil-cpp" "Abseil C++ library" "on" \
@@ -470,7 +471,7 @@ if [ $? = 1 -o $? = 255 ]; then
rm -f $TMP/SeTpkgs
> $TMP/SeTnewtag
for pkg in \
-GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
+GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf SDL3 a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
; do
echo "$pkg: SKP" >> $TMP/SeTnewtag
done
@@ -478,7 +479,7 @@ GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SD
fi
cat /dev/null > $TMP/SeTnewtag
for PACKAGE in \
-GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
+GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf SDL3 a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
; do
if grep "\(^\| \)$PACKAGE\( \|$\)" $TMP/SeTpkgs 1> /dev/null 2> /dev/null ; then
echo "$PACKAGE: ADD" >> $TMP/SeTnewtag
diff --git a/slackware64/l/maketag.ez b/slackware64/l/maketag.ez
index 4a53870bf..5a96775a9 100644
--- a/slackware64/l/maketag.ez
+++ b/slackware64/l/maketag.ez
@@ -27,6 +27,7 @@ you are done." 22 74 10 \
"SDL2_mixer" "SDL2 multi-channel audio mixer library" "on" \
"SDL2_net" "SDL2 network library" "on" \
"SDL2_ttf" "SDL2 TrueType font library" "on" \
+"SDL3" "Simple DirectMedia Layer Version 3" "on" \
"a52dec" "ATSC A/52 stream decoder library" "on" \
"aalib" "ASCII Art library" "on" \
"abseil-cpp" "Abseil C++ library" "on" \
@@ -470,7 +471,7 @@ if [ $? = 1 -o $? = 255 ]; then
rm -f $TMP/SeTpkgs
> $TMP/SeTnewtag
for pkg in \
-GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
+GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf SDL3 a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
; do
echo "$pkg: SKP" >> $TMP/SeTnewtag
done
@@ -478,7 +479,7 @@ GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SD
fi
cat /dev/null > $TMP/SeTnewtag
for PACKAGE in \
-GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
+GConf Imath LibRaw Mako PyQt-builder PyQt5 PyQt5_sip QScintilla SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf SDL3 a52dec aalib abseil-cpp accountsservice adwaita-icon-theme adwaita-icon-theme-legacy alsa-lib alsa-oss alsa-plugins aom appstream-glib apr apr-util argon2 aspell aspell-en at-spi2-core atkmm atkmm2 audiofile avahi babl boost brotli cairo cairomm cairomm1 ccid cfitsio chmlib clucene colord cryfs cryptopp cxxopts dav1d db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf duktape dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth fmt freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gc gcr gcr4 gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 gi-docgen giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm glibmm2 gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gspell gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtkmm4 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick immer isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lager lame lcms lcms2 lensfun libaio libao libappindicator libarchive libass libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libcupsfilters libdaemon libdbusmenu libdbusmenu-qt libdeflate libdiscid libdmtx libdvdnav libdvdread libedit libev libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libgusb libhandy libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libimobiledevice-glue libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libnvme libodfgen libogg liboggz liboil libopusenc libpaper libpcap libplacebo libplist libpng libppd libproxy libpsl libptytty libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libsoup3 libspectre libssh libssh2 libtasn1 libtheora libtiff libtraceevent libtracefs libunibreak libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth luajit-lgi lz4 lzo media-player-info mhash mlt mm movit mozilla-nss mozjs128 mpfr mujs ncurses neon netpbm newt nodejs ocl-icd oniguruma openal-soft opencv openexr openjpeg opensc opus opusfile orc pango pangomm pangomm2 parted pcaudiolib pcre pcre2 pcsc-lite phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt protobuf pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-Jinja2 python-MarkupSafe python-PyYAML python-alabaster python-appdirs python-babel python-build python-calver python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-doxypypy python-doxyqml python-editables python-flit-core python-future python-glad2 python-hatch-vcs python-hatchling python-html5lib python-idna python-imagesize python-importlib_metadata python-installer python-lxml python-markdown python-notify2 python-packaging python-pathspec python-pbr python-pillow python-pluggy python-ply python-psutil python-pycparser python-pygments python-pyproject-hooks python-pysol_cards python-random2 python-requests python-sane python-setuptools_scm python-six python-smartypants python-snowballstemmer python-sphinx python-sphinx_rtd_theme python-tomli-w python-trove-classifiers python-typogrify python-urllib3 python-versioneer python-webencodings python-wheel python-zipp python2-pycairo qrencode qt5 qt6 qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl seatd serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sof-firmware sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 unicode-ucd utf8proc v4l-utils vid.stab vte wavpack wireplumber woff2 xapian-core xxHash zlib zstd zug zxing-cpp \
; do
if grep "\(^\| \)$PACKAGE\( \|$\)" $TMP/SeTpkgs 1> /dev/null 2> /dev/null ; then
echo "$PACKAGE: ADD" >> $TMP/SeTnewtag
diff --git a/slackware64/l/tagfile b/slackware64/l/tagfile
index 567ea22b3..bace5c76d 100644
--- a/slackware64/l/tagfile
+++ b/slackware64/l/tagfile
@@ -12,6 +12,7 @@ SDL2_image:REC
SDL2_mixer:REC
SDL2_net:REC
SDL2_ttf:REC
+SDL3:REC
a52dec:REC
aalib:REC
abseil-cpp:REC
diff --git a/source/l/SDL3/SDL3.SlackBuild b/source/l/SDL3/SDL3.SlackBuild
new file mode 100755
index 000000000..332b04e38
--- /dev/null
+++ b/source/l/SDL3/SDL3.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+# Copyright 2017, 2018, 2019, 2020, 2022 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=SDL3
+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 | 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) ;;
+ 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:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR="lib$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DSDL_STATIC=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* INSTALL* LICENSE* NEWS* README* REVISION* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Drop this duplicate that's also in a directory we don't use:
+rm -r $PKG/usr/share/licenses
+rmdir $PKG/usr/share
+
+# 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/l/SDL3/SDL3.url b/source/l/SDL3/SDL3.url
new file mode 100644
index 000000000..f7fb83bbb
--- /dev/null
+++ b/source/l/SDL3/SDL3.url
@@ -0,0 +1,2 @@
+https://github.com/libsdl-org/SDL
+https://github.com/libsdl-org/SDL/releases/download/release-3.2.0/SDL3-3.2.0.tar.gz
diff --git a/source/l/SDL3/slack-desc b/source/l/SDL3/slack-desc
new file mode 100644
index 000000000..7d0f2cd30
--- /dev/null
+++ b/source/l/SDL3/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 ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL3: SDL3 (Simple DirectMedia Layer Version 3)
+SDL3:
+SDL3: Simple DirectMedia Layer is a cross-platform development library
+SDL3: designed to provide low-level access to audio, keyboard, mouse,
+SDL3: joystick, and graphics hardware ia via OpenGL. It is used by
+SDL3: video playback software, emulators, and games.
+SDL3:
+SDL3: Homepage: http://www.libsdl.org
+SDL3:
+SDL3:
+SDL3:
diff --git a/source/l/gst-plugins-bad-free/fetch-sources.sh b/source/l/gst-plugins-bad-free/fetch-sources.sh
index d3dd6cb06..9eaf59427 100755
--- a/source/l/gst-plugins-bad-free/fetch-sources.sh
+++ b/source/l/gst-plugins-bad-free/fetch-sources.sh
@@ -26,7 +26,7 @@
#
# Example: VERSION=1.18.5 ./fetch-sources.sh
-VERSION=${VERSION:-1.24.11}
+VERSION=${VERSION:-1.24.12}
rm -rf rm -rf gst-plugins-bad-free-$VERSION gst-plugins-bad-$VERSION
diff --git a/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild b/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
index ee5740797..ac38cd927 100755
--- a/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
+++ b/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gst-plugins-bad-free
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
diff --git a/source/l/libplacebo/056b852018db04aa2ebc0982e27713afcea8106b.patch b/source/l/libplacebo/056b852018db04aa2ebc0982e27713afcea8106b.patch
new file mode 100644
index 000000000..d40db143b
--- /dev/null
+++ b/source/l/libplacebo/056b852018db04aa2ebc0982e27713afcea8106b.patch
@@ -0,0 +1,32 @@
+From 056b852018db04aa2ebc0982e27713afcea8106b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?=
+Date: Mon, 2 Dec 2024 17:10:00 +0100
+Subject: [PATCH] meson: add glslang lib for 15.0.0 linking
+
+Glslang 15.0.0 moved some code around, add also linking to glslang,
+while this is not needed for older versions, it will still work.
+
+Unfortunately CMake config embedded in distributions is not usable
+without installing additional package like glslang-tools, because at
+least Ubuntu splits it. On Arch it would work, but generally the CMake
+config require cmake binary to work also, so let's keep it as-is for
+now.
+---
+ src/glsl/meson.build | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/glsl/meson.build b/src/glsl/meson.build
+index 5a881960..8fb5e699 100644
+--- a/src/glsl/meson.build
++++ b/src/glsl/meson.build
+@@ -39,6 +39,10 @@ elif not glslang_req.disabled()
+
+ glslang_deps += spirv
+
++ # Glslang 15.0.0 moved some code around, add also linking to glslang, while
++ # this is not needed for older versions, it will still work.
++ glslang_deps += cxx.find_library('glslang', required: required, static: static)
++
+ if static
+ glslang_deps += [
+ # Always required for static linking
diff --git a/source/l/libplacebo/libplacebo.SlackBuild b/source/l/libplacebo/libplacebo.SlackBuild
index fe2c73990..e3f1fe072 100755
--- a/source/l/libplacebo/libplacebo.SlackBuild
+++ b/source/l/libplacebo/libplacebo.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libplacebo
VERSION=${VERSION:-$(echo libplacebo-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -72,6 +72,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Build against glslang 15:
+cat $CWD/056b852018db04aa2ebc0982e27713afcea8106b.patch | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
diff --git a/source/x/vulkan-sdk/VERSION b/source/x/vulkan-sdk/VERSION
index 6796fff0f..3f12e194b 100644
--- a/source/x/vulkan-sdk/VERSION
+++ b/source/x/vulkan-sdk/VERSION
@@ -1 +1 @@
-1.3.290.0
+1.4.304.0
diff --git a/source/x/vulkan-sdk/fetch-sources.sh b/source/x/vulkan-sdk/fetch-sources.sh
index 2fe53b3b1..6716dbe6f 100755
--- a/source/x/vulkan-sdk/fetch-sources.sh
+++ b/source/x/vulkan-sdk/fetch-sources.sh
@@ -164,8 +164,8 @@ rm -f *.fetched
# recent one.
if [ "$(tar tf shaderc-*.tar.lz | wc -l)" -lt "7" ]; then
rm shaderc-*.tar.*
- lftpget https://github.com/google/shaderc/archive/refs/tags/v2024.1.tar.gz
- mv v2024.1.tar.gz shaderc-2024.1.tar.gz
- gzip -d shaderc-2024.1.tar.gz
- plzip -9 shaderc-2024.1.tar
+ lftpget https://github.com/google/shaderc/archive/refs/tags/v2024.4.tar.gz
+ mv v2024.1.tar.gz shaderc-2024.4.tar.gz
+ gzip -d shaderc-2024.4.tar.gz
+ plzip -9 shaderc-2024.4.tar
fi
diff --git a/source/x/vulkan-sdk/vulkan-sdk.SlackBuild b/source/x/vulkan-sdk/vulkan-sdk.SlackBuild
index bc334b376..9462631e9 100755
--- a/source/x/vulkan-sdk/vulkan-sdk.SlackBuild
+++ b/source/x/vulkan-sdk/vulkan-sdk.SlackBuild
@@ -1,8 +1,6 @@
#!/bin/bash
-# Slackware build script for vulkan-sdk
-
-# Copyright 2016, 2017, 2018, 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2016, 2017, 2018, 2020, 2021, 2022, 2023, 2024, 2025 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=vulkan-sdk
# The ./VERSION file is created by ./fetch-sources.sh:
VERSION=${VERSION:-$(cat VERSION)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Choose a compiler (gcc/g++ or clang/clang++ if you'd like to debug that ;-)
export CC=${CC:-gcc}
@@ -792,11 +790,11 @@ ln -sf vulkanCapsViewer-x11 $PKG/usr/bin/vulkanCapsViewer
mkdir -p $PKG/usr/share/icons/hicolor/256x256/apps
cp -a gfx/android_icon_256.png $PKG/usr/share/icons/hicolor/256x256/apps/vulkanCapsViewer.png || exit 1
-cd $TMP
-
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+cd $TMP
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Headers
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/SPIRV-Tools
diff --git a/testing/source/glibc/doinst.sh-aaa_glibc-solibs b/testing/source/glibc/doinst.sh-aaa_glibc-solibs
new file mode 100644
index 000000000..fe8fc1f37
--- /dev/null
+++ b/testing/source/glibc/doinst.sh-aaa_glibc-solibs
@@ -0,0 +1,158 @@
+#!/bin/sh
+# Copyright (C) 2002, 2005 Slackware Linux, Inc.
+# Copyright 2005, 2006, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# Swap glibc on the fly.
+#
+# If we're on a running system we have to handle this _very_ carefully. :-)
+# The tricks involved here get trickier every time...
+
+# OK, now we have to be sure of a few things. First, you do have a 2.6
+# kernel running, right?
+
+if [ -r /proc/ksyms ]; then
+ echo "FATAL: you need to be running a 2.6.x kernel in order to upgrade"
+ echo "to this version of glibc."
+ echo
+ sleep 999
+ exit 1
+fi
+
+# Next, stop using the /lib/ntpl libraries. These are now obsolete and
+# will break the installation if present:
+if [ -d lib/tls ]; then
+ mkdir -p lib/obsolete
+ mv lib/tls lib/obsolete
+fi
+if [ -x sbin/ldconfig ]; then
+ sbin/ldconfig -r . 2> /dev/null
+fi
+
+# Install NPTL glibc libraries:
+if [ -x /sbin/ldconfig -a -d lib/incoming ]; then # swap on the fly
+ # Try to protect with flock against another installpkg/removepkg running
+ # ldconfig while we're doing the on-the-fly install:
+ mkdir -p run/lock/pkgtools
+ ( flock 9 || exit 11
+ # First create copies of the incoming libraries:
+ ( cd lib/incoming
+ for file in * ; do
+ if [ ! -r ../${file}.incoming ]; then
+ cp -a $file ../${file}.incoming
+ fi
+ done
+ )
+ # Then switch to them all at once:
+ /sbin/ldconfig -l lib/*.incoming 2> /dev/null
+ # Remove old versions of the glibc libraries. If you really don't want to
+ # do this for some reason, create a file /etc/glibc-nowipe.
+ if [ ! -r etc/glibc-nowipe ]; then
+ ( cd lib
+ for INCOMING in incoming/*-* ; do
+ LIBPREFIX=$(basename $INCOMING | cut -f 1 -d -)
+ for LIBRARY in ${LIBPREFIX}-* ; do
+ # Don't remove the library if it ends in .incoming:
+ if [ "$(echo $LIBRARY | rev | cut -f 1 -d .)" = "gnimocni" ]; then
+ continue
+ fi
+ # Don't remove symlinks:
+ if [ -L $LIBRARY ]; then
+ continue
+ fi
+ rm -f $LIBRARY
+ done
+ done
+ # Remove stale versions of libcrypt from Slackware 14.2 or newer:
+ rm -f libcrypt-{2.23,2.24,2.25,2.26,2.27,2.28,2.29,2.30,2.31,2.32,2.33,2.34,2.35,2.36,2.37}.so
+ )
+ fi
+ # Finally, rename them and clean up:
+ ( cd lib
+ for file in *.incoming ; do
+ rm -f `basename $file .incoming`
+ cp -a $file `basename $file .incoming`
+ /sbin/ldconfig -l `basename $file .incoming` 2> /dev/null
+ rm -f $file
+ done
+ )
+ ) 9> run/lock/pkgtools/ldconfig.lock
+else # no ldconfig? This is a broken situation, but we will do what we can:
+ ( cd lib/incoming
+ for file in * ; do
+ cp -a $file ..
+ done
+ )
+fi
+# Now, get rid of the temporary directory:
+rm -rf lib/incoming
+# Done installing NPTL glibc libraries.
+
+# Handle config files:
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+config etc/profile.d/glibc.csh.new
+config etc/profile.d/glibc.sh.new
+# Clearly you already decided this issue. :-)
+rm -f etc/profile.d/glibc.csh.new
+rm -f etc/profile.d/glibc.sh.new
+
+# This block below *should* be dead code, but it's probably safer to leave it
+# here as a fallback. It no longer has complete coverage of all the links
+# that would be needed in /lib${LIBDIRSUFFIX}, but it covers enough that if
+# we did fall back on this the machine would boot until it reached the boot
+# time call to ldconfig, which would then take care of any missing links.
+if [ ! -x /sbin/ldconfig ]; then
+( cd lib ; rm -rf libm.so.6 )
+( cd lib ; ln -sf libm-@@VERSION@@.so libm.so.6 )
+( cd lib ; rm -rf libnss_files.so.2 )
+( cd lib ; ln -sf libnss_files-@@VERSION@@.so libnss_files.so.2 )
+( cd lib ; rm -rf libresolv.so.2 )
+( cd lib ; ln -sf libresolv-@@VERSION@@.so libresolv.so.2 )
+( cd lib ; rm -rf libutil.so.1 )
+( cd lib ; ln -sf libutil-@@VERSION@@.so libutil.so.1 )
+( cd lib ; rm -rf libnss_compat.so.2 )
+( cd lib ; ln -sf libnss_compat-@@VERSION@@.so libnss_compat.so.2 )
+( cd lib ; rm -rf libthread_db.so.1 )
+( cd lib ; ln -sf libthread_db-1.0.so libthread_db.so.1 )
+( cd lib ; rm -rf libnss_hesiod.so.2 )
+( cd lib ; ln -sf libnss_hesiod-@@VERSION@@.so libnss_hesiod.so.2 )
+( cd lib ; rm -rf libanl.so.1 )
+( cd lib ; ln -sf libanl-@@VERSION@@.so libanl.so.1 )
+( cd lib ; rm -rf libcrypt.so.1 )
+( cd lib ; ln -sf libcrypt1-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; rm -rf libcrypt.so.2 )
+( cd lib ; ln -sf libcrypt2-@@VERSION@@.so libcrypt.so.2 )
+( cd lib ; rm -rf libBrokenLocale.so.1 )
+( cd lib ; ln -sf libBrokenLocale-@@VERSION@@.so libBrokenLocale.so.1 )
+( cd lib ; rm -rf ld-linux.so.2 )
+( cd lib ; ln -sf ld-@@VERSION@@.so ld-linux.so.2 )
+( cd lib ; rm -rf libdl.so.2 )
+( cd lib ; ln -sf libdl-@@VERSION@@.so libdl.so.2 )
+( cd lib ; rm -rf libnss_dns.so.2 )
+( cd lib ; ln -sf libnss_dns-@@VERSION@@.so libnss_dns.so.2 )
+( cd lib ; rm -rf libpthread.so.0 )
+( cd lib ; ln -sf libpthread-@@VERSION@@.so libpthread.so.0 )
+( cd lib ; rm -rf libc.so.6 )
+( cd lib ; ln -sf libc-@@VERSION@@.so libc.so.6 )
+( cd lib ; rm -rf librt.so.1 )
+( cd lib ; ln -sf librt-@@VERSION@@.so librt.so.1 )
+fi
diff --git a/testing/source/glibc/doinst.sh-glibc b/testing/source/glibc/doinst.sh-glibc
new file mode 100644
index 000000000..5fa7d2f86
--- /dev/null
+++ b/testing/source/glibc/doinst.sh-glibc
@@ -0,0 +1,162 @@
+#!/bin/sh
+# Copyright (C) 2002, 2005 Slackware Linux, Inc.
+# Copyright 2005, 2006, 2007, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# Swap glibc on the fly.
+#
+# If we're on a running system we have to handle this _very_ carefully. :-)
+# The tricks involved here get trickier every time...
+
+# OK, now we have to be sure of a few things. First, you do have a 2.6
+# kernel running, right?
+
+if [ -r /proc/ksyms ]; then
+ echo "FATAL: you need to be running a 2.6.x kernel in order to upgrade"
+ echo "to this version of glibc."
+ echo
+ sleep 999
+ exit 1
+fi
+
+# Next, stop using the /lib/ntpl libraries. These are now obsolete and
+# will break the installation if present:
+if [ -d lib/tls ]; then
+ mkdir -p lib/obsolete
+ mv lib/tls lib/obsolete
+fi
+if [ -x sbin/ldconfig ]; then
+ sbin/ldconfig -r . 2> /dev/null
+fi
+
+# Install NPTL glibc libraries:
+if [ -x /sbin/ldconfig -a -d lib/incoming ]; then # swap on the fly
+ # Try to protect with flock against another installpkg/removepkg running
+ # ldconfig while we're doing the on-the-fly install:
+ mkdir -p run/lock/pkgtools
+ ( flock 9 || exit 11
+ # First create copies of the incoming libraries:
+ ( cd lib/incoming
+ for file in * ; do
+ if [ ! -r ../${file}.incoming ]; then
+ cp -a $file ../${file}.incoming
+ fi
+ done
+ )
+ # Then switch to them all at once:
+ /sbin/ldconfig -l lib/*.incoming 2> /dev/null
+ # Remove old versions of the glibc libraries. If you really don't want to
+ # do this for some reason, create a file /etc/glibc-nowipe.
+ if [ ! -r etc/glibc-nowipe ]; then
+ ( cd lib
+ for INCOMING in incoming/*-* ; do
+ LIBPREFIX=$(basename $INCOMING | cut -f 1 -d -)
+ for LIBRARY in ${LIBPREFIX}-* ; do
+ # Don't remove the library if it ends in .incoming:
+ if [ "$(echo $LIBRARY | rev | cut -f 1 -d .)" = "gnimocni" ]; then
+ continue
+ fi
+ # Don't remove symlinks:
+ if [ -L $LIBRARY ]; then
+ continue
+ fi
+ rm -f $LIBRARY
+ done
+ done
+ # Remove stale versions of libcrypt from Slackware 14.2 or newer:
+ rm -f libcrypt-{2.23,2.24,2.25,2.26,2.27,2.28,2.29,2.30,2.31,2.32,2.33,2.34,2.35,2.36,2.37}.so
+ )
+ fi
+ # Finally, rename them and clean up:
+ ( cd lib
+ for file in *.incoming ; do
+ rm -f `basename $file .incoming`
+ cp -a $file `basename $file .incoming`
+ /sbin/ldconfig -l `basename $file .incoming` 2> /dev/null
+ rm -f $file
+ done
+ )
+ ) 9> run/lock/pkgtools/ldconfig.lock
+else # no ldconfig? This is a broken situation, but we will do what we can:
+ ( cd lib/incoming
+ for file in * ; do
+ cp -a $file ..
+ done
+ )
+fi
+# Now, get rid of the temporary directory:
+rm -rf lib/incoming
+# Done installing NPTL glibc libraries.
+
+# Handle config files:
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+config etc/nscd.conf.new
+config etc/profile.d/glibc.csh.new
+config etc/profile.d/glibc.sh.new
+# Clearly you already decided this issue. :-)
+rm -f etc/profile.d/glibc.csh.new
+rm -f etc/profile.d/glibc.sh.new
+
+# This block below *should* be dead code, but it's probably safer to leave it
+# here as a fallback. It no longer has complete coverage of all the links
+# that would be needed in /lib${LIBDIRSUFFIX}, but it covers enough that if
+# we did fall back on this the machine would boot until it reached the boot
+# time call to ldconfig, which would then take care of any missing links.
+# In case there's no ldconfig, make the links manually:
+if [ ! -x /sbin/ldconfig ]; then
+( cd lib ; rm -rf libm.so.6 )
+( cd lib ; ln -sf libm-@@VERSION@@.so libm.so.6 )
+( cd lib ; rm -rf libnss_files.so.2 )
+( cd lib ; ln -sf libnss_files-@@VERSION@@.so libnss_files.so.2 )
+( cd lib ; rm -rf libresolv.so.2 )
+( cd lib ; ln -sf libresolv-@@VERSION@@.so libresolv.so.2 )
+( cd lib ; rm -rf libutil.so.1 )
+( cd lib ; ln -sf libutil-@@VERSION@@.so libutil.so.1 )
+( cd lib ; rm -rf libnss_compat.so.2 )
+( cd lib ; ln -sf libnss_compat-@@VERSION@@.so libnss_compat.so.2 )
+( cd lib ; rm -rf libthread_db.so.1 )
+( cd lib ; ln -sf libthread_db-1.0.so libthread_db.so.1 )
+( cd lib ; rm -rf libnss_hesiod.so.2 )
+( cd lib ; ln -sf libnss_hesiod-@@VERSION@@.so libnss_hesiod.so.2 )
+( cd lib ; rm -rf libanl.so.1 )
+( cd lib ; ln -sf libanl-@@VERSION@@.so libanl.so.1 )
+( cd lib ; rm -rf libcrypt.so.1 )
+( cd lib ; ln -sf libcrypt1-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; rm -rf libcrypt.so.2 )
+( cd lib ; ln -sf libcrypt2-@@VERSION@@.so libcrypt.so.2 )
+( cd lib ; rm -rf libBrokenLocale.so.1 )
+( cd lib ; ln -sf libBrokenLocale-@@VERSION@@.so libBrokenLocale.so.1 )
+( cd lib ; rm -rf ld-linux.so.2 )
+( cd lib ; ln -sf ld-@@VERSION@@.so ld-linux.so.2 )
+( cd lib ; rm -rf libdl.so.2 )
+( cd lib ; ln -sf libdl-@@VERSION@@.so libdl.so.2 )
+( cd lib ; rm -rf libnss_dns.so.2 )
+( cd lib ; ln -sf libnss_dns-@@VERSION@@.so libnss_dns.so.2 )
+( cd lib ; rm -rf libpthread.so.0 )
+( cd lib ; ln -sf libpthread-@@VERSION@@.so libpthread.so.0 )
+( cd lib ; rm -rf libc.so.6 )
+( cd lib ; ln -sf libc-@@VERSION@@.so libc.so.6 )
+( cd lib ; rm -rf librt.so.1 )
+( cd lib ; ln -sf librt-@@VERSION@@.so librt.so.1 )
+fi
+
+# More links:
diff --git a/testing/source/glibc/glibc-2.32.en_US.no.am.pm.date.format.diff b/testing/source/glibc/glibc-2.32.en_US.no.am.pm.date.format.diff
new file mode 100644
index 000000000..5ca84bcac
--- /dev/null
+++ b/testing/source/glibc/glibc-2.32.en_US.no.am.pm.date.format.diff
@@ -0,0 +1,14 @@
+--- ./localedata/locales/en_US.orig 2021-01-16 18:40:31.050990981 -0600
++++ ./localedata/locales/en_US 2021-01-16 18:42:44.784983583 -0600
+@@ -121,7 +121,10 @@
+ % different from d_t_fmt for historical reasons and has been different
+ % since 2000 when date_fmt was added as a GNU extension. At the end
+ % of 2018 it was adjusted to use 12H time (bug 24046) instead of 24H.
+-date_fmt "%a %b %e %r %Z %Y"
++% [ Slackware editor's note - no thank you, US users
++% of UNIX-like systems expect a 24 hour clock, just
++% like users in the vast majority of other locales. ]
++%date_fmt "%a %d %b %Y %r %Z"
+ %
+ % Strings for AM/PM
+ %
diff --git a/testing/source/glibc/glibc-cvs-checkout.sh b/testing/source/glibc/glibc-cvs-checkout.sh
new file mode 100755
index 000000000..022d0117b
--- /dev/null
+++ b/testing/source/glibc/glibc-cvs-checkout.sh
@@ -0,0 +1,3 @@
+echo "The password below is \"anoncvs\":"
+cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc login
+cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc co libc
diff --git a/testing/source/glibc/glibc.SlackBuild b/testing/source/glibc/glibc.SlackBuild
new file mode 100755
index 000000000..b4baabf63
--- /dev/null
+++ b/testing/source/glibc/glibc.SlackBuild
@@ -0,0 +1,608 @@
+#!/bin/bash
+
+# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Patrick J. Volkerding, Sebeka, MN, 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.
+
+# Extended to build 32-bit compatibility libraries on x86_64,
+# by Fred Emmott . No copyright claim.
+# Simplified to produce combined packages (no separate compat-32),
+# by Eric Hameleers
+# Merged into main glibc.SlackBuild and adjusted to be capable of
+# building as pure 64-bit, pure 32-bit, or multilib
+# by Patrick Volkerding
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=glibc
+VERSION=${VERSION:-$(echo glibc-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+CHECKOUT=${CHECKOUT:-""}
+BUILD=${BUILD:-1}
+
+# An optional tag for after the version number in the package's filename:
+#VERTAG=_multilib
+
+# An optional tag for after the build number in the package's filename:
+#TAG=alien
+
+# I was considering disabling NSCD, but MoZes talked me out of it. :)
+#DISABLE_NSCD=" --disable-nscd "
+
+# $ARCH may be preset, otherwise i686 (pentium4) is the Slackware default.
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ 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 ) ;;
+ esac
+fi
+
+# Try to figure out if we want multilib (or set MULTILIB= manually):
+if [ "$ARCH" = "x86_64" -a -f /usr/lib/libgcc_s.so ]; then
+ MULTILIB=${MULTILIB:-"--enable-multilib"}
+else
+ MULTILIB=${MULTILIB:-"--disable-multilib"}
+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 "glibc-${VERSION}${VERTAG}-$ARCH-${BUILD}${TAG}.txz"
+ echo "glibc-i18n-${VERSION}${VERTAG}-$ARCH-${BUILD}${TAG}.txz"
+ echo "glibc-profile-${VERSION}${VERTAG}-$ARCH-${BUILD}${TAG}.txz"
+ echo "aaa_glibc-solibs-${VERSION}${VERTAG}-$ARCH-${BUILD}${TAG}.txz"
+ exit 0
+fi
+
+# How many jobs to run in parallel:
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+# Work around -Werror failure with gcc-10.2.0.
+# NOTE: Until the next glibc release takes care of this issue, this will
+# likely need to be updated with every new gcc release's version. Yes, we
+# could pass --disable-werror by default, but I'd rather not just shove a
+# stick in it like that.
+if [ "$(gcc -dumpversion)" = "10.2.0" ]; then
+ if [ "$VERSION" = "2.30" ]; then
+ WERROR="--disable-werror"
+ fi
+fi
+
+# Define the build flags for both 64-bit and 32-bit x86 before using them
+# below. We'll possibly need them both later on...
+# -mstackrealign is needed for compatibilty with legacy binaries that
+# keep 4-byte stack alignment.
+# -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer are required by
+# both nouveau and the nvidia driver to prevent crashes and hangs.
+# We could also possibly add these:
+# -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize
+# But since we're already requiring at least a pentium4, I'm not sure
+# what the benefit would be, so we won't do this yet.
+X86FLAGS32="-O3 -march=pentium4 -mtune=generic -mstackrealign -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"
+X86FLAGS64="-O3 -march=x86-64 -mtune=generic -fPIC"
+
+# I'll break this out as an option for fun :-)
+case $ARCH in
+ i686)
+ OPTIMIZ="${X86FLAGS32}"
+ LIBDIRSUFFIX=""
+ TARGET=${TARGET:-i686}
+ ;;
+ x86_64)
+ OPTIMIZ="${X86FLAGS64}"
+ LIBDIRSUFFIX="64"
+ TARGET=${TARGET:-x86_64}
+ TARGET32=${TARGET32:-i686}
+ ;;
+ *)
+ OPTIMIZ="-O3"
+ LIBDIRSUFFIX=""
+ TARGET=${TARGET:-"$ARCH"}
+ ;;
+esac
+
+# Hand off the $ARCH variable to $SLACKWARE_ARCH to avoid confusing glibc:
+SLACKWARE_ARCH=$ARCH
+unset ARCH
+
+CVSVER=${VERSION}${CHECKOUT}
+
+# NOTE!!! glibc needs to be built against the sanitized kernel headers,
+# which will be installed under /usr/include by the kernel-headers package.
+# Be sure the correct version of the headers package is installed BEFORE
+# building glibc!
+
+TMP=${TMP:-/tmp}
+mkdir -p $TMP
+
+# This function fixes a doinst.sh file for x86_64.
+# With thanks to Fred Emmott.
+fix_doinst() {
+ if [ "$LIBDIRSUFFIX" = "" ]; then
+ return;
+ fi;
+ if [ "$MULTILIB" = "--enable-multilib" ]; then
+ # Save a copy of this to append the 32-bit links later.
+ cp -a install/doinst.sh install/doinst32.sh
+ fi
+ # Fix "( cd usr/lib ;" occurrences
+ sed -i "s#lib ;#lib${LIBDIRSUFFIX} ;#" install/doinst.sh
+ # Fix "lib/" occurrences
+ sed -i "s#lib/#lib${LIBDIRSUFFIX}/#g" install/doinst.sh
+ # Fix "( cd lib" occurrences
+ sed -i "s#( cd lib\$#( cd lib${LIBDIRSUFFIX}#" install/doinst.sh
+ if [ "$SLACKWARE_ARCH" = "x86_64" ]; then
+ sed -i 's#ld-linux.so.2#ld-linux-x86-64.so.2#' install/doinst.sh
+ fi
+ if [ "$MULTILIB" = "--enable-multilib" ]; then
+ echo "# Add 32-bit library links for multilib:" >> install/doinst.sh
+ cat install/doinst32.sh | grep -e '^( cd lib ' -e '^( cd usr/lib ' >> install/doinst.sh
+ rm -f install/doinst32.sh
+ fi
+}
+
+# This is a patch function to put all glibc patches in the build script
+# up near the top.
+apply_patches() {
+ # Use old-style locale directories rather than a single (and strangely
+ # formatted) /usr/lib/locale/locale-archive file:
+ zcat $CWD/glibc.locale.no-archive.diff.gz | patch -p1 --verbose || exit 1
+ # Support ru_RU.CP1251 locale:
+ zcat $CWD/glibc.ru_RU.CP1251.diff.gz | patch -p1 --verbose || exit 1
+ # Don't use AM/PM format for date(1). That's just plain crazy.
+ zcat $CWD/glibc-2.32.en_US.no.am.pm.date.format.diff.gz | patch -p1 --verbose || exit 1
+ # Other regression fixes from git:
+ for git_patch in $CWD/patches/*.patch.gz ; do
+ zcat $git_patch | patch -p1 --verbose || exit 1
+ done
+}
+
+# This is going to be the initial $DESTDIR:
+export PKG=$TMP/package-glibc-incoming-tree
+PGLIBC=$TMP/package-glibc
+PSOLIBS=$TMP/package-aaa_glibc-solibs
+PI18N=$TMP/package-glibc-i18n
+PPROFILE=$TMP/package-glibc-profile
+PDEBUG=$TMP/package-glibc-debug
+
+# Empty these locations first:
+for dir in $PKG $PGLIBC $PSOLIBS $PZONE $PI18N $PPROFILE $PDEBUG ; do
+ if [ -d $dir ]; then
+ rm -rf $dir
+ fi
+ mkdir -p $dir
+done
+if [ -d $TMP/glibc-$VERSION ]; then
+ rm -rf $TMP/glibc-$VERSION
+fi
+
+# Create an incoming directory structure for glibc to be built into:
+mkdir -p $PKG/lib${LIBDIRSUFFIX}
+mkdir -p $PKG/sbin
+mkdir -p $PKG/usr/bin
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
+mkdir -p $PKG/usr/sbin
+mkdir -p $PKG/usr/include
+mkdir -p $PKG/usr/doc
+mkdir -p $PKG/usr/man
+mkdir -p $PKG/usr/share
+mkdir -p $PKG/var/db/nscd
+mkdir -p $PKG/var/run/nscd
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ mkdir -p $PKG/lib
+ mkdir -p $PKG/usr/lib
+fi
+
+# Begin extract/compile:
+cd $TMP
+rm -rf glibc-$CVSVER
+echo "Extracting $CWD/glibc-$CVSVER.tar.?z..."
+tar xf $CWD/glibc-$CVSVER.tar.xz \
+ || tar xf $CWD/glibc-$CVSVER.tar.lz \
+ || tar xf $CWD/glibc-$CVSVER.tar.gz
+cd glibc-$CVSVER
+
+# Apply patches; exit if any fail.
+apply_patches
+if [ ! $? = 0 ]; then
+ exit 1
+fi
+
+# Clean up leftover CVS directories:
+find . -type d -name CVS -exec rm -r {} \+ 2> /dev/null
+
+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 {} \+
+
+# Main function to build glibc:
+build_glibc() {
+ CFLAGS="-g $OPTIMIZ" \
+ CXXFLAGS="-g $OPTIMIZ" \
+ ../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --enable-kernel=4.4 \
+ --with-headers=/usr/include \
+ --enable-add-ons \
+ --enable-multi-arch \
+ --enable-profile \
+ $DISABLE_NSCD \
+ $WERROR \
+ --infodir=/usr/info \
+ --mandir=/usr/man \
+ --with-tls \
+ --with-__thread \
+ --without-cvs \
+ $TARGET-slackware-linux || exit 1
+ make $NUMJOBS || exit 1
+ make $NUMJOBS install install_root=$PKG || exit 1
+ # Don't use this, as it makes the i18n package WAY bigger:
+ #make localedata/install-locale-files DESTDIR=$PKG || exit 1
+ # This is ugly run in parallel, and seems to hang at the end. But it actually
+ # completes much faster. :)
+ make $NUMJOBS localedata/install-locales install_root=$PKG DESTDIR=$PKG || exit 1
+}
+
+# If this is a multilib build, then build the 32-bit binaries first so that the
+# 64-bit stuff will overwrite it later where appropriate:
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ echo "BUILDING DAS 32-BiT NPTL GLIBC"
+ (
+ MYRET=0
+ mkdir build-glibc-compat32-$VERSION
+ cd build-glibc-compat32-$VERSION || exit 1
+ export BUILD_ARCH=$TARGET
+ export TARGET=$TARGET32
+ export LIBDIRSUFFIX=
+ export CC="gcc -m32"
+ export CXX="g++ -m32"
+ export OPTIMIZ="${X86FLAGS32}"
+ build_glibc || exit 1
+ MYRET=$(( $MYRET + $? ))
+ # Build and install libxcrypt:
+ pushd $CWD
+ ARCH=$TARGET LIBDIRSUFFIX=$LIBDIRSUFFIX SLKCFLAGS=$OPTIMIZ ./libxcrypt.build || exit 1
+ MYRET=$(( $MYRET + $? ))
+ popd
+ exit $MYRET
+ ) || exit $?
+fi
+
+# Now do the main build:
+mkdir build-glibc-$VERSION
+cd build-glibc-$VERSION
+echo "BUILDING DAS NPTL GLIBC"
+build_glibc || exit 1
+
+# Build and install libxcrypt:
+pushd $CWD
+ARCH=$SLACKWARE_ARCH LIBDIRSUFFIX=$LIBDIRSUFFIX SLKCFLAGS=$OPTIMIZ ./libxcrypt.build || exit 1
+popd
+
+# We've always had an sln symlink in /bin, so let's make sure it
+# remains there so as not to break any scripts that might need it:
+mkdir -p $PKG/bin
+( cd $PKG/bin ; ln -sf /sbin/sln sln )
+
+# The prevailing standard seems to be putting unstripped libraries in
+# /usr/lib/debug/ and stripping the debugging symbols from all the other
+# libraries.
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/debug
+cp -a $PKG/lib${LIBDIRSUFFIX}/l*.so* $PKG/usr/lib${LIBDIRSUFFIX}/debug
+cp -a $PKG/usr/lib${LIBDIRSUFFIX}/*.a $PKG/usr/lib${LIBDIRSUFFIX}/debug
+# Don't need debug+profile:
+( cd $PKG/usr/lib${LIBDIRSUFFIX}/debug ; rm -f *_p.* )
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ mkdir -p $PKG/usr/lib/debug
+ cp -a $PKG/lib/l*.so* $PKG/usr/lib/debug
+ cp -a $PKG/usr/lib/*.a $PKG/usr/lib/debug
+ # Don't need debug+profile:
+ ( cd $PKG/usr/lib/debug ; rm -f *_p.* )
+fi
+# NOTE: Is there really a reason for the glibc-debug package?
+# If you're debugging glibc, you can also compile it, right?
+## COMMENTED OUT: There's no reason for profile libs to include -g information.
+## Put back unstripped profiling libraries:
+#mv $PKG/usr/lib${LIBDIRSUFFIX}/debug/*_p.a $PKG/usr/lib${LIBDIRSUFFIX}
+# It might be best to put the unstripped and profiling libraries in glibc-debug and glibc-profile.
+
+# I don't think "strip -g" causes the pthread problems. It's --strip-unneeded that does.
+strip -g $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ strip -g $PKG/usr/lib/lib*.a
+fi
+
+# Remove the rquota.x and rquota.h include files, as they are provided by
+# the quota package:
+rm -f $PKG/usr/include/rpcsvc/rquota.{h,x}
+
+# Back to the sources dir to add some files/docs:
+cd $TMP/glibc-$CVSVER
+
+# We'll automatically install the config file for the Name Server Cache Daemon.
+# Perhaps this should also have some commented-out startup code in rc.inet2...
+mkdir -p $PKG/etc
+cat nscd/nscd.conf > $PKG/etc/nscd.conf.new
+
+# Install docs:
+( mkdir -p $PKG/usr/doc/glibc-$VERSION
+ cp -a \
+ CONTRIBUTED-BY* COPYING* INSTALL* LICENSES* MAINTAINERS* NEWS* README* SECURITY* SHARED-FILES* \
+ $PKG/usr/doc/glibc-$VERSION
+)
+
+# Trim the NEWS file to omit ancient history:
+if [ -r NEWS ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/glibc-$VERSION)
+ cat NEWS | head -n 1000 > $DOCSDIR/NEWS
+ touch -r NEWS $DOCSDIR/NEWS
+fi
+
+# Strip most binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-debug 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip -g 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
+
+# This is junk:
+rm $PKG/etc/ld.so.cache
+
+# Remove any stray .orig files:
+( cd $PKG
+ find . -name "*.orig" -exec rm {} \+
+)
+
+##################################
+# OK, time to make some packages #
+##################################
+
+# glibc-profile:
+cd $PPROFILE
+mkdir -p usr/lib${LIBDIRSUFFIX}
+# Might as well just grab these with 'mv' to simplify things later:
+mv $PKG/usr/lib${LIBDIRSUFFIX}/lib*_p.a usr/lib${LIBDIRSUFFIX}
+# Profile libs should be stripped. Use the debug libs to debug...
+( cd usr/lib${LIBDIRSUFFIX} ; strip -g *.a )
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ # Might as well just grab these with 'mv' to simplify things later:
+ mv $PKG/usr/lib/lib*_p.a usr/lib
+ # Profile libs should be stripped. Use the debug libs to debug...
+ ( cd usr/lib ; strip -g *.a )
+fi
+mkdir install
+cp -a $CWD/slack-desc.glibc-profile install/slack-desc
+makepkg -l y -c n $TMP/glibc-profile-${VERSION}${VERTAG}-$SLACKWARE_ARCH-${BUILD}${TAG}.txz
+
+# THIS IS NO LONGER PACKAGED (or is it? might be better to let it be made, and then ship it or not...)
+# glibc-debug:
+cd $PDEBUG
+mkdir -p usr/lib${LIBDIRSUFFIX}
+# Might as well just grab these with 'mv' to simplify things later:
+mv $PKG/usr/lib${LIBDIRSUFFIX}/debug usr/lib${LIBDIRSUFFIX}
+mkdir install
+cp -a $CWD/slack-desc.glibc-debug install/slack-desc
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ mkdir -p usr/lib
+ # Might as well just grab these with 'mv' to simplify things later:
+ mv $PKG/usr/lib/debug usr/lib
+fi
+## Don't package this:
+#makepkg -l y -c n $TMP/glibc-debug-${VERSION}${VERTAG}-$SLACKWARE_ARCH-${BUILD}${TAG}.txz
+## INSTEAD, NUKE THESE LIBS
+#rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/debug
+
+# glibc-i18n:
+cd $PI18N
+mkdir -p usr/share/{i18n,locale}
+mv $PKG/usr/share/i18n/* usr/share/i18n
+mv $PKG/usr/share/locale/* usr/share/locale
+mkdir -p usr/lib${LIBDIRSUFFIX}/locale
+mv $PKG/usr/lib${LIBDIRSUFFIX}/locale/* usr/lib${LIBDIRSUFFIX}/locale
+# Leave copies of the C, POSIX, and en_US locales in the main glibc package:
+cp -a usr/lib${LIBDIRSUFFIX}/locale/{C,en_US}* $PKG/usr/lib${LIBDIRSUFFIX}/locale
+mkdir -p $PKG/usr/share/i18n/locales
+cp -a usr/share/i18n/locales/{C,POSIX,en_US} $PKG/usr/share/i18n/locales
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ mkdir -p usr/lib/locale
+ mv $PKG/usr/lib/locale/* usr/lib/locale
+ # Leave copies of the C, POSIX, and en_US locales in the main glibc package:
+ cp -a usr/lib/locale/{C,en_US}* $PKG/usr/lib/locale
+fi
+mkdir install
+cp -a $CWD/slack-desc.glibc-i18n install/slack-desc
+makepkg -l y -c n $TMP/glibc-i18n-${VERSION}${VERTAG}-$SLACKWARE_ARCH-${BUILD}${TAG}.txz
+
+# aaa_glibc-solibs:
+cd $PSOLIBS
+mkdir -p etc/profile.d
+cp -a $CWD/profile.d/* etc/profile.d
+chown -R root:root etc
+chmod 755 etc/profile.d/*
+mkdir -p lib${LIBDIRSUFFIX}
+cp -a $PKG/lib${LIBDIRSUFFIX}/* lib${LIBDIRSUFFIX}
+( cd lib${LIBDIRSUFFIX}
+ mkdir incoming
+ mv *so* incoming
+ mv incoming/libmemusage.so .
+ # Beginning with glibc-2.34, shared objects are using their ABI sonames
+ # directly, which is frankly, a terrible idea. It might help other package
+ # managers, but doesn't do us any favors where we already had a system for
+ # dealing with upgrades (and downgrades!). We'll change these libraries to
+ # use the versioned naming system of glibc-2.33 and earlier so that we don't
+ # have to handle these files differently and so that it's easy to see what
+ # version of glibc is in use at a glance.
+ cd incoming
+ # First do the new libxcrypt links (a little bit differently):
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ # This one is a special case. We don't want an $ARCH embedded in the
+ # filename. It prevents using the same install scripts on all $ARCH
+ # and does no good since we'll never have multiple $ARCH libraries
+ # installed in the same directory anyway. So give it the previous name
+ # format:
+ mv ld-linux*-${VERSION}.so ld-${VERSION}.so
+)
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ # We don't need to use an incoming directory here.
+ mkdir -p lib
+ cp -a $PKG/lib/* lib
+ ( cd lib
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ )
+fi
+mkdir -p usr
+cp -a $PKG/usr/bin usr
+mv usr/bin/ldd .
+rm usr/bin/*
+mv ldd usr/bin
+mkdir -p usr/lib${LIBDIRSUFFIX}
+# The gconv directory has a lot of stuff, but including it here will save some problems.
+# Seems standard elsewhere.
+cp -a $PKG/usr/lib${LIBDIRSUFFIX}/gconv usr/lib${LIBDIRSUFFIX}
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ mkdir -p usr/lib
+ cp -a $PKG/usr/lib/gconv usr/lib
+fi
+mkdir -p usr/libexec
+cp -a $PKG/usr/libexec/pt_chown usr/libexec
+# Same usr.bin deal:
+cp -a $PKG/sbin .
+mv sbin/ldconfig .
+rm sbin/*
+mv ldconfig sbin
+mkdir install
+cp -a $CWD/slack-desc.aaa_glibc-solibs install/slack-desc
+cp -a $CWD/doinst.sh-aaa_glibc-solibs install/doinst.sh
+# Fix specific versioning for the symlink creation script. This part of the
+# script would only be used in the case where there is no ldconfig on the
+# running system that's used to install the package. That should never be the
+# case, but we'll leave the code in place anyway just in case.
+sed -i "s/@@VERSION@@/$VERSION/g" install/doinst.sh
+# Call the function to fix doinst.sh where $LIBDIRSUFFIX is needed:
+fix_doinst
+# Only scrub the links in /lib{,64} that will be created by ldconfig:
+find lib${LIBDIRSUFFIX} -type l -exec rm {} \+
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ find lib -type l -exec rm {} \+
+fi
+# Build the package:
+makepkg -l y -c n $TMP/aaa_glibc-solibs-${VERSION}${VERTAG}-$SLACKWARE_ARCH-${BUILD}${TAG}.txz
+
+# And finally, the complete "all-in-one" glibc package is created
+# from whatever was leftover:
+cd $PGLIBC
+mv $PKG/* .
+mkdir -p etc/profile.d
+cp -a $CWD/profile.d/* etc/profile.d
+chown -R root:root etc
+chmod 755 etc/profile.d/*
+# Only scrub the links in /lib{,64} that will be created by ldconfig:
+find lib${LIBDIRSUFFIX} -type l -exec rm {} \+
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ find lib -type l -exec rm {} \+
+fi
+mkdir install
+cp -a $CWD/slack-desc.glibc install/slack-desc
+cp -a $CWD/doinst.sh-glibc install/doinst.sh
+# Fix specific versioning for the symlink creation script. This part of the
+# script would only be used in the case where there is no ldconfig on the
+# running system that's used to install the package. That should never be the
+# case, but we'll leave the code in place anyway just in case.
+sed -i "s/@@VERSION@@/$VERSION/g" install/doinst.sh
+# Call the function to fix doinst.sh where $LIBDIRSUFFIX is needed:
+fix_doinst
+( cd lib${LIBDIRSUFFIX}
+ mkdir incoming
+ mv *so* incoming
+ mv incoming/libmemusage.so .
+ # Beginning with glibc-2.34, shared objects are using their ABI sonames
+ # directly, which is frankly, a terrible idea. It might help other package
+ # managers, but doesn't do us any favors where we already had a system for
+ # dealing with upgrades (and downgrades!). We'll change these libraries to
+ # use the versioned naming system of glibc-2.33 and earlier so that we don't
+ # have to handle these files differently and so that it's easy to see what
+ # version of glibc is in use at a glance.
+ cd incoming
+ # First do the new libxcrypt links (a little bit differently):
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ # This one is a special case. We don't want an $ARCH embedded in the
+ # filename. It prevents using the same install scripts on all $ARCH
+ # and does no good since we'll never have multiple $ARCH libraries
+ # installed in the same directory anyway. So give it the previous name
+ # format:
+ mv ld-linux*-${VERSION}.so ld-${VERSION}.so
+)
+if [ "$MULTILIB" = "--enable-multilib" ]; then
+ # We don't need to use an incoming directory here.
+ mkdir -p lib
+ cp -a $PKG/lib/* lib
+ ( cd lib
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ )
+fi
+# Build the package:
+/sbin/makepkg -l y -c n $TMP/glibc-${VERSION}${VERTAG}-$SLACKWARE_ARCH-${BUILD}${TAG}.txz
+
+# Done!
+echo
+echo "glibc packages built in $TMP!"
diff --git a/testing/source/glibc/glibc.locale.no-archive.diff b/testing/source/glibc/glibc.locale.no-archive.diff
new file mode 100644
index 000000000..173bafc72
--- /dev/null
+++ b/testing/source/glibc/glibc.locale.no-archive.diff
@@ -0,0 +1,10 @@
+--- ./localedata/Makefile.orig 2019-02-16 14:05:01.794154302 -0600
++++ ./localedata/Makefile 2019-02-16 14:06:25.744146460 -0600
+@@ -413,6 +413,7 @@
+ echo -n '...'; \
+ input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
+ $(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \
++ --no-archive \
+ -i locales/$$input -f charmaps/$$charset \
+ $(addprefix --prefix=,$(install_root)) $$locale \
+ && echo ' done';
diff --git a/testing/source/glibc/glibc.ru_RU.CP1251.diff b/testing/source/glibc/glibc.ru_RU.CP1251.diff
new file mode 100644
index 000000000..376cf76a7
--- /dev/null
+++ b/testing/source/glibc/glibc.ru_RU.CP1251.diff
@@ -0,0 +1,10 @@
+--- ./localedata/SUPPORTED.orig 2005-07-17 20:50:35.000000000 -0500
++++ ./localedata/SUPPORTED 2006-08-22 01:33:09.000000000 -0500
+@@ -270,6 +270,7 @@
+ ro_RO/ISO-8859-2 \
+ ru_RU.KOI8-R/KOI8-R \
+ ru_RU.UTF-8/UTF-8 \
++ru_RU.CP1251/CP1251 \
+ ru_RU/ISO-8859-5 \
+ ru_UA.UTF-8/UTF-8 \
+ ru_UA/KOI8-U \
diff --git a/testing/source/glibc/libxcrypt.build b/testing/source/glibc/libxcrypt.build
new file mode 100755
index 000000000..f4b7cc927
--- /dev/null
+++ b/testing/source/glibc/libxcrypt.build
@@ -0,0 +1,119 @@
+#!/bin/bash
+
+# Copyright 2023 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=libxcrypt
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-glibc-incoming-tree
+
+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
+
+# First, build and install the compat library:
+mkdir build-libxcrypt-compat
+cd build-libxcrypt-compat
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --enable-hashes=strong,glibc \
+ --enable-obsolete-api=glibc \
+ --disable-failure-tokens \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Next, build the next-gen crypt library. We'll see what can link to it. :)
+mkdir build-libxcrypt
+cd build-libxcrypt
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --enable-hashes=strong,glibc \
+ --enable-obsolete-api=no \
+ --disable-failure-tokens \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/libcrypt*.la
+
+# Strip binaries:
+find $PKG -name "libcrypt*" | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip -g 2> /dev/null
+
+# Move libraries out of /usr:
+mkdir -p $PKG/lib${LIBDIRSUFFIX}
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ ## Actually, glibc always had libcrypt.a, so...
+ ## No static crypt() libraries:
+ #rm libcrypt*.a
+ # No .so symlinks (yet):
+ rm libcrypt*.so
+ # Move libraries and remaining symlinks:
+ mv libcrypt*so* ../../lib${LIBDIRSUFFIX}
+ # Add .so symlinks for libcrypt and libxcrypt:
+ ln -sf ../../lib${LIBDIRSUFFIX}/libcrypt.so.2 libcrypt.so
+ ln -sf ../../lib${LIBDIRSUFFIX}/libcrypt.so.2 libxcrypt.so
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* ChangeLog COPYING* LICENSING* NEWS* README* THANKS* TODO* \
+ $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
diff --git a/testing/source/glibc/libxcrypt.url b/testing/source/glibc/libxcrypt.url
new file mode 100644
index 000000000..4e0d180af
--- /dev/null
+++ b/testing/source/glibc/libxcrypt.url
@@ -0,0 +1 @@
+https://github.com/besser82/libxcrypt
diff --git a/testing/source/glibc/patches/reenable_DT_HASH.patch b/testing/source/glibc/patches/reenable_DT_HASH.patch
new file mode 100644
index 000000000..7b7fe9ee4
--- /dev/null
+++ b/testing/source/glibc/patches/reenable_DT_HASH.patch
@@ -0,0 +1,101 @@
+diff -up glibc-2.38/Makeconfig.45~ glibc-2.38/Makeconfig
+--- glibc-2.38/Makeconfig.45~ 2023-08-01 01:02:58.246719027 +0200
++++ glibc-2.38/Makeconfig 2023-08-01 01:02:58.303719582 +0200
+@@ -381,6 +381,15 @@ relro-LDFLAGS = -Wl,-z,relro
+ LDFLAGS.so += $(relro-LDFLAGS)
+ LDFLAGS-rtld += $(relro-LDFLAGS)
+
++ifeq (yes,$(have-hash-style))
++# For the time being we unconditionally use 'both'. At some time we
++# should declare statically linked code as 'out of luck' and compile
++# with --hash-style=gnu only.
++hashstyle-LDFLAGS = -Wl,--hash-style=both
++LDFLAGS.so += $(hashstyle-LDFLAGS)
++LDFLAGS-rtld += $(hashstyle-LDFLAGS)
++endif
++
+ # Linker options to enable and disable DT_RELR.
+ ifeq ($(have-dt-relr),yes)
+ dt-relr-ldflag = -Wl,-z,pack-relative-relocs
+diff -up glibc-2.38/Makerules.45~ glibc-2.38/Makerules
+diff -up glibc-2.38/config.make.in.45~ glibc-2.38/config.make.in
+--- glibc-2.38/config.make.in.45~ 2023-08-01 01:02:58.301719562 +0200
++++ glibc-2.38/config.make.in 2023-08-01 01:03:54.721267748 +0200
+@@ -71,6 +71,7 @@ have-libaudit = @have_libaudit@
+ have-libcap = @have_libcap@
+ have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
+ bind-now = @bindnow@
++have-hash-style = @libc_cv_hashstyle@
+ have-cxx-thread_local = @libc_cv_cxx_thread_local@
+ have-loop-to-function = @libc_cv_cc_loop_to_function@
+ have-textrel_ifunc = @libc_cv_textrel_ifunc@
+diff -up glibc-2.38/configure.45~ glibc-2.38/configure
+--- glibc-2.38/configure.45~ 2023-07-31 19:54:16.000000000 +0200
++++ glibc-2.38/configure 2023-08-01 01:04:54.904850299 +0200
+@@ -655,6 +655,7 @@ libc_cv_cc_submachine
+ libc_cv_cc_nofma
+ libc_cv_mtls_dialect_gnu2
+ libc_cv_has_glob_dat
++libc_cv_hashstyle
+ libc_cv_fpie
+ libc_cv_z_execstack
+ ASFLAGS_config
+@@ -7107,6 +7108,32 @@ fi
+ printf "%s\n" "$libc_cv_fpie" >&6; }
+
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --hash-style option" >&5
++$as_echo_n "checking for --hash-style option... " >&6; }
++if ${libc_cv_hashstyle+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ cat > conftest.c <&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++ test $ac_status = 0; }; }
++then
++ libc_cv_hashstyle=yes
++else
++ libc_cv_hashstyle=no
++fi
++rm -f conftest*
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_hashstyle" >&5
++$as_echo "$libc_cv_hashstyle" >&6; }
++
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GLOB_DAT reloc" >&5
+ printf %s "checking for GLOB_DAT reloc... " >&6; }
+diff -up glibc-2.38/configure.ac.45~ glibc-2.38/configure.ac
+--- glibc-2.38/configure.ac.45~ 2023-07-31 19:54:16.000000000 +0200
++++ glibc-2.38/configure.ac 2023-08-01 01:02:58.303719582 +0200
+@@ -1339,6 +1339,22 @@ LIBC_TRY_CC_OPTION([-fpie], [libc_cv_fpi
+
+ AC_SUBST(libc_cv_fpie)
+
++AC_CACHE_CHECK(for --hash-style option,
++ libc_cv_hashstyle, [dnl
++cat > conftest.c <&AS_MESSAGE_LOG_FD])
++then
++ libc_cv_hashstyle=yes
++else
++ libc_cv_hashstyle=no
++fi
++rm -f conftest*])
++AC_SUBST(libc_cv_hashstyle)
++
+ AC_CACHE_CHECK(for GLOB_DAT reloc,
+ libc_cv_has_glob_dat, [dnl
+ cat > conftest.c <
+glibc-debug:
+glibc-debug: Or, use this approach if you need to debug a setuid binary:
+glibc-debug: su user -c "LD_LIBRARY_PATH=/usr/lib/debug gdb "
diff --git a/testing/source/glibc/slack-desc.glibc-i18n b/testing/source/glibc/slack-desc.glibc-i18n
new file mode 100644
index 000000000..a697bc3db
--- /dev/null
+++ b/testing/source/glibc/slack-desc.glibc-i18n
@@ -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------------------------------------------------------|
+glibc-i18n: glibc-i18n (locale files from glibc)
+glibc-i18n:
+glibc-i18n: These files go in /usr/lib/locale, /usr/share/i18n/, and
+glibc-i18n: /usr/share/locale/ to provide internationalization support.
+glibc-i18n: You'll need this package unless you will be using US English only.
+glibc-i18n:
+glibc-i18n:
+glibc-i18n:
+glibc-i18n:
+glibc-i18n:
+glibc-i18n:
diff --git a/testing/source/glibc/slack-desc.glibc-profile b/testing/source/glibc/slack-desc.glibc-profile
new file mode 100644
index 000000000..4b4100e08
--- /dev/null
+++ b/testing/source/glibc/slack-desc.glibc-profile
@@ -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------------------------------------------------------|
+glibc-profile: glibc-profile (GNU C libraries with profiling support)
+glibc-profile:
+glibc-profile: This package contains static versions of the GNU C libraries with
+glibc-profile: support for profiling binaries using gprof. gprof calculates how
+glibc-profile: much time a program spends in each routine which can suggest where
+glibc-profile: to concentrate efforts to improve performance.
+glibc-profile:
+glibc-profile: See the gprof man page for more details.
+glibc-profile:
+glibc-profile:
+glibc-profile:
diff --git a/testing/source/mesa/amber/patches-revert/72566fd92c27b39abe2057f6f23388ec40793dd9.patch b/testing/source/mesa/amber/patches-revert/72566fd92c27b39abe2057f6f23388ec40793dd9.patch
new file mode 100644
index 000000000..0200efa3f
--- /dev/null
+++ b/testing/source/mesa/amber/patches-revert/72566fd92c27b39abe2057f6f23388ec40793dd9.patch
@@ -0,0 +1,42 @@
+From 72566fd92c27b39abe2057f6f23388ec40793dd9 Mon Sep 17 00:00:00 2001
+From: Jesse Natalie
+Date: Wed, 18 Nov 2020 18:28:49 -0800
+Subject: [PATCH] clover: Support LLVM coming from CMake instead of config-tool
+
+Reviewed-by: Karol Herbst
+Reviewed-by: Francisco Jerez
+Part-of:
+---
+ src/gallium/frontends/clover/meson.build | 2 +-
+ src/gallium/targets/opencl/meson.build | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/gallium/frontends/clover/meson.build b/src/gallium/frontends/clover/meson.build
+index 95a100d005c..b946eefff37 100644
+--- a/src/gallium/frontends/clover/meson.build
++++ b/src/gallium/frontends/clover/meson.build
+@@ -71,7 +71,7 @@ libclllvm = static_library(
+ clover_opencl_cpp_args,
+ clover_spirv_cpp_args,
+ '-DCLANG_RESOURCE_DIR="@0@"'.format(join_paths(
+- dep_llvm.get_configtool_variable('libdir'), 'clang',
++ dep_llvm.get_variable(cmake : 'LLVM_LIBRARY_DIR', configtool: 'libdir'), 'clang',
+ dep_llvm.version(), 'include',
+ )),
+ ],
+diff --git a/src/gallium/targets/opencl/meson.build b/src/gallium/targets/opencl/meson.build
+index dedd8ab7647..e758e4c12d9 100644
+--- a/src/gallium/targets/opencl/meson.build
++++ b/src/gallium/targets/opencl/meson.build
+@@ -29,7 +29,7 @@ if with_ld_version_script
+ opencl_link_deps += files('opencl.sym')
+ endif
+
+-llvm_libdir = dep_llvm.get_configtool_variable('libdir')
++llvm_libdir = dep_llvm.get_variable(cmake : 'LLVM_LIBRARY_DIR', configtool: 'libdir')
+ opencl_libname = with_opencl_icd ? 'MesaOpenCL' : 'OpenCL'
+
+ polly_dep = null_dep
+--
+GitLab
+
diff --git a/testing/source/mesa/amber/patches-revert/80817b6e344258ac9b955f824ebf9019a0fc1610.patch b/testing/source/mesa/amber/patches-revert/80817b6e344258ac9b955f824ebf9019a0fc1610.patch
new file mode 100644
index 000000000..13eec39c3
--- /dev/null
+++ b/testing/source/mesa/amber/patches-revert/80817b6e344258ac9b955f824ebf9019a0fc1610.patch
@@ -0,0 +1,35 @@
+From 80817b6e344258ac9b955f824ebf9019a0fc1610 Mon Sep 17 00:00:00 2001
+From: Jesse Natalie
+Date: Wed, 18 Nov 2020 18:30:30 -0800
+Subject: [PATCH] meson: Adjust Clover's required LLVM modules
+
+When coming from CMake, all-targets doesn't exist, and Clover's
+mechanism for finding Clang apparently requires the OpenMP frontend
+lib but doesn't automatically pull it in.
+
+Reviewed-by: Daniel Stone
+Part-of:
+---
+ meson.build | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 6d1607c35a3..f828eb80faa 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1479,9 +1479,10 @@ if with_amd_vk or with_gallium_radeonsi or with_gallium_r600
+ endif
+ if with_gallium_opencl
+ llvm_modules += [
+- 'all-targets', 'linker', 'coverage', 'instrumentation', 'ipo', 'irreader',
+- 'lto', 'option', 'objcarcopts', 'profiledata',
++ 'linker', 'coverage', 'instrumentation', 'ipo', 'irreader',
++ 'lto', 'option', 'objcarcopts', 'profiledata'
+ ]
++ llvm_optional_modules += ['frontendopenmp']
+ endif
+ if with_microsoft_clc
+ llvm_modules += ['target', 'linker', 'irreader', 'option', 'libdriver']
+--
+GitLab
+
diff --git a/testing/source/mesa/doinst.sh b/testing/source/mesa/doinst.sh
new file mode 100644
index 000000000..d6297d692
--- /dev/null
+++ b/testing/source/mesa/doinst.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+config() {
+ NEW="$1"
+ OLD="`dirname $NEW`/`basename $NEW .new`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+# Don't mess with /etc/drirc. Mesa now installs the defaults as
+# /usr/share/drirc.d/00-mesa-defaults.conf. We won't protect that
+# as a .new file as it shouldn't be modified. Create /etc/drirc if
+# you need local overrides.
+#config etc/drirc.new
diff --git a/testing/source/mesa/get-mesa.sh b/testing/source/mesa/get-mesa.sh
new file mode 100755
index 000000000..b88329984
--- /dev/null
+++ b/testing/source/mesa/get-mesa.sh
@@ -0,0 +1,20 @@
+# Pull a stable branch + patches
+BRANCH=7.10
+
+rm -rf mesa
+git clone git://anongit.freedesktop.org/git/mesa/mesa
+# package the source archive and clean up:
+( cd mesa
+ git checkout $BRANCH || exit 1
+)
+HEADISAT="$(cat mesa/.git/packed-refs | grep "refs/remotes/origin/${BRANCH}$" | cut -b1-7)"
+# Cleanup. We're not packing up the whole git repo.
+( cd mesa && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+DATE=$(date +%Y%m%d)
+mv mesa mesa-${BRANCH}_${HEADISAT}
+tar cf mesa-${BRANCH}_${HEADISAT}.tar mesa-${BRANCH}_${HEADISAT}
+xz -9 mesa-${BRANCH}_${HEADISAT}.tar
+rm -rf mesa-${BRANCH}_${HEADISAT}
+echo
+echo "Mesa branch $BRANCH with HEAD at $HEADISAT packaged as mesa-${BRANCH}_${HEADISAT}.tar.xz"
+echo
diff --git a/testing/source/mesa/mesa-amber.build b/testing/source/mesa/mesa-amber.build
new file mode 100755
index 000000000..a4531913a
--- /dev/null
+++ b/testing/source/mesa/mesa-amber.build
@@ -0,0 +1,98 @@
+#!/bin/bash
+# This script is not meant to be run directly:
+if [ -z $AMBERVERS ]; then
+ exit 1
+fi
+
+
+# Be sure this list is up-to-date:
+DRI_DRIVERS="i915,i965,r100,r200,nouveau"
+
+cd $TMP
+rm -rf ${PKGNAM}-${AMBERVERS}
+
+tar xvf $CWD/amber/${PKGNAM}-${AMBERVERS}.tar.?z || exit 1
+cd ${PKGNAM}-$AMBERVERS || exit 1
+
+# Let's kill the warning about operating on a dangling symlink:
+rm -f src/gallium/state_trackers/d3d1x/w32api
+
+# Make sure ownerships and permissions are sane:
+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 {} \+
+
+# Apply patches from git (and maybe elsewhere):
+# Patches obtained by:
+# git checkout origin/17.2
+# git format-patch 93c2beafc0a7fa2f210b006d22aba61caa71f773 # 17.2.6 release
+if /bin/ls $CWD/amber/patches/*.patch 1> /dev/null 2> /dev/null ; then
+ for patch in $CWD/amber/patches/*.patch ; do
+ patch -p1 --verbose < $patch || exit 1 ;
+ done
+fi
+
+# Revert these patches from git (and maybe elsewhere):
+if /bin/ls $CWD/amber/patches-revert/*.patch 1> /dev/null 2> /dev/null ; then
+ for patch in $CWD/amber/patches-revert/*.patch ; do
+ patch -p1 -R --verbose < $patch || exit 1 ;
+ done
+fi
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+# Architecture-specific settings can be configured in the mesa.SlackBuild
+# within the variable 'SLK_AMBER_CONF_OPTS'
+meson setup \
+ $SLK_AMBER_CONF_OPTS \
+ --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 \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dplatforms=x11,wayland \
+ -Damber=true \
+ -Ddri-drivers=$DRI_DRIVERS \
+ -Dgallium-drivers='' \
+ -Dvulkan-drivers='' \
+ -Dosmesa=false \
+ -Dglvnd=true \
+ -Dllvm=enabled \
+ -Dshared-llvm=enabled \
+ -Dshared-glapi=enabled \
+ -Degl=enabled \
+ -Dgles1=enabled \
+ -Dgles2=enabled \
+ -Dopengl=true \
+ -Dglx=dri \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG/cruft $NINJA install || exit 1
+cd ..
+
+# We will install only the DRI drivers.
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/dri
+# First, remove any drivers that were built by the newer Mesa:
+( cd $PKG/usr/lib${LIBDIRSUFFIX}/dri ; /bin/ls * ) | while read newdriver ; do
+ rm -f -v $PKG/cruft/usr/lib${LIBDIRSUFFIX}/dri/$newdriver
+done
+rsync -lHprvt $PKG/cruft/usr/lib${LIBDIRSUFFIX}/dri/ $PKG/usr/lib${LIBDIRSUFFIX}/dri/
+rm -rf $PKG/cruft
+
+rm -rf $PKG/usr/doc/$PKGNAM-$AMBERVERS
+mkdir -p $PKG/usr/doc/$PKGNAM-amber-$AMBERVERS
+cp -a \
+ CODEOWNERS* README* docs/README* docs/license* docs/relnotes/${AMBERVERS}.* \
+ $PKG/usr/doc/$PKGNAM-amber-$AMBERVERS
diff --git a/testing/source/mesa/mesa-demos.build b/testing/source/mesa/mesa-demos.build
new file mode 100755
index 000000000..9ac4c3479
--- /dev/null
+++ b/testing/source/mesa/mesa-demos.build
@@ -0,0 +1,58 @@
+#!/bin/bash
+# This script is not meant to be run directly:
+if [ -z $DEMOVERS ]; then
+ exit 1
+fi
+
+# Now build/install a small subset of the demos:
+export CWD SLKCFLAGS NUMJOBS PKG
+( cd $TMP
+ rm -rf mesa-demos-$DEMOVERS
+ tar xvf $CWD/mesa-demos-$DEMOVERS.tar.?z || exit 1
+ cd mesa-demos-$DEMOVERS
+ 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 {} \+
+ # Architecture-specific settings can be configured in the mesa.SlackBuild
+ # within the variable 'SLK_MESADEMOS_CONF_OPTS'
+ 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 \
+ --localstatedir=/var \
+ --buildtype=release \
+ $SLK_MESADEMOS_CONF_OPTS \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ # Install all the demos (including the pointless ones) at first, in a
+ # temporary location:
+ DESTDIR=$PKG/cruft $NINJA install || exit 1
+ cd ..
+ # Install gears and glinfo, as well as a few other demos:
+ mkdir -p $PKG/usr/bin
+ MESA_DEMO_BINS="${MESA_DEMO_BINS:=eglinfo gears glinfo glthreads glxcontexts glxdemo \
+ glxgears glxgears_fbconfig glxheads glxinfo glxpbdemo glxpixmap}"
+ # Install the demo:
+ for demo in $MESA_DEMO_BINS ; do
+ mv --verbose $PKG/cruft/usr/bin/$demo $PKG/usr/bin
+ done
+ # Remove cruft:
+ rm -rf $PKG/cruft
+ # Add the README file(s):
+ rm -rf $PKG/usr/doc/mesa-demos-$DEMOVERS
+ mkdir -p $PKG/usr/doc/mesa-demos-$DEMOVERS
+ cp -a README* $PKG/usr/doc/mesa-demos-$DEMOVERS
+) || exit 1
diff --git a/testing/source/mesa/mesa.SlackBuild b/testing/source/mesa/mesa.SlackBuild
new file mode 100755
index 000000000..9ea18c6e5
--- /dev/null
+++ b/testing/source/mesa/mesa.SlackBuild
@@ -0,0 +1,227 @@
+#!/bin/bash
+
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, 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=mesa
+VERSION=${VERSION:-$(echo $PKGNAM-[0-9]*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
+AMBERVERS=${AMBERVERS:-21.3.9}
+DEMOVERS=${DEMOVERS:-9.0.0}
+BUILD=${BUILD:-1}
+BUILD_AMBER=${BUILD_AMBER:-YES}
+BUILD_DEMOS=${BUILD_DEMOS:-YES}
+CODECS=${CODECS:-h264dec,h264enc,h265dec,h265enc,vc1dec,av1dec,av1enc,vp9dec}
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+# Be sure this list is up-to-date:
+GALLIUM_DRIVERS="nouveau,r300,r600,svga,radeonsi,softpipe,llvmpipe,virgl,i915,iris,crocus,zink,d3d12"
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i686 ;;
+ arm*) export ARCH=arm ;;
+ *) export ARCH=$( uname -m ) ;;
+ esac
+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-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-mesa
+
+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"
+ # Only supported on x86_64:
+ INTELRT="-Dintel-rt=enabled"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+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
+
+# Let's kill the warning about operating on a dangling symlink:
+rm -f src/gallium/state_trackers/d3d1x/w32api
+
+# Don't use the system DirectX headers:
+rm -f /usr/lib${LIBDIRSUFFIX}/pkgconfig/DirectX-Headers.pc
+
+# Make sure ownerships and permissions are sane:
+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 {} \+
+
+# Apply patches from git (and maybe elsewhere):
+# Patches obtained by:
+# git checkout origin/17.2
+# git format-patch 93c2beafc0a7fa2f210b006d22aba61caa71f773 # 17.2.6 release
+if /bin/ls $CWD/patches/*.patch 1> /dev/null 2> /dev/null ; then
+ for patch in $CWD/patches/*.patch ; do
+ patch -p1 --verbose < $patch || exit 1 ;
+ done
+fi
+
+# Revert these patches from git (and maybe elsewhere):
+if /bin/ls $CWD/patches-revert/*.patch 1> /dev/null 2> /dev/null ; then
+ for patch in $CWD/patches-revert/*.patch ; do
+ patch -p1 -R --verbose < $patch || exit 1 ;
+ done
+fi
+
+# "Download" subprojects:
+if [ -r $CWD/mesa-subprojects.tar.lz ]; then
+ tar xvf $CWD/mesa-subprojects.tar.lz || exit 1
+fi
+
+# 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 \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dplatforms=x11,wayland \
+ -Dgallium-opencl=icd \
+ -Dgallium-nine=true \
+ -Dgallium-rusticl=true \
+ -Dgallium-extra-hud=true \
+ -Drust_std=2021 \
+ -Dosmesa=true \
+ -Dgallium-drivers=$GALLIUM_DRIVERS \
+ -Dvulkan-drivers=amd,intel,intel_hasvk,swrast,virtio,nouveau \
+ -Dvulkan-layers=device-select,intel-nullhw,overlay \
+ -Dvideo-codecs="$CODECS" \
+ -Dglvnd=enabled \
+ -Dllvm=enabled \
+ -Dshared-llvm=enabled \
+ -Dshared-glapi=enabled \
+ -Degl=enabled \
+ -Dgles1=enabled \
+ -Dgles2=enabled \
+ -Dopengl=true \
+ -Dglx=dri \
+ -Dlibunwind=disabled \
+ -Dmicrosoft-clc=disabled \
+ -Dvalgrind=enabled \
+ -Dintel-clc=enabled \
+ $INTELRT \
+ .. || exit 1
+
+ # If there's no mesa-subprojects.tar.lz in $CWD, let's try to make one:
+ if [ ! -r $CWD/mesa-subprojects.tar.lz ]; then
+ cd ..
+ mkdir -p tmp/subprojects
+ for file in subprojects/* ; do
+ if [ "$file" -nt "$PKG" ]; then
+ cp -a -v $file tmp/subprojects
+ fi
+ done
+ cd tmp
+ find . -name ".git*" -exec rm -r "{}" \; 2> /dev/null
+ tar cf $CWD/mesa-subprojects.tar subprojects
+ plzip -9 $CWD/mesa-subprojects.tar
+ cd ..
+ rm -r tmp
+ cd meson-build
+ fi
+
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# Install /etc/drirc as a .new file:
+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_AMBER" = "YES" ]; then
+ . $CWD/mesa-amber.build
+fi
+
+if [ "$BUILD_DEMOS" = "YES" ]; then
+ . $CWD/mesa-demos.build
+fi
+
+# 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 man pages, if any:
+if [ -d $PKG/usr/man ]; then
+ 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
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ rm -f $PKG/usr/info/dir
+ gzip -9 $PKG/usr/info/*
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ CODEOWNERS* README* docs/README* docs/license* docs/relnotes/${VERSION}.* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
diff --git a/testing/source/mesa/mesa.url b/testing/source/mesa/mesa.url
new file mode 100644
index 000000000..3f30cc843
--- /dev/null
+++ b/testing/source/mesa/mesa.url
@@ -0,0 +1,2 @@
+ftp://ftp.freedesktop.org/pub/mesa/
+ftp://ftp.freedesktop.org/pub/mesa/demos/
diff --git a/testing/source/mesa/slack-desc b/testing/source/mesa/slack-desc
new file mode 100644
index 000000000..ffbe90832
--- /dev/null
+++ b/testing/source/mesa/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------------------------------------------------------|
+mesa: mesa (a 3-D graphics library)
+mesa:
+mesa: Mesa is a 3-D graphics library with an API very similar to that of
+mesa: another well-known 3-D graphics library. The Mesa libraries are used
+mesa: by X to provide both software and hardware accelerated graphics.
+mesa:
+mesa: Mesa was written by Brian Paul.
+mesa:
+mesa: Homepage: https://www.mesa3d.org
+mesa:
+mesa: