Fri Dec 16 04:46:51 UTC 2022

d/help2man-1.49.3-x86_64-1.txz:  Upgraded.
l/pipewire-0.3.63-x86_64-1.txz:  Upgraded.
x/libX11-1.8.3-x86_64-1.txz:  Upgraded.
x/mesa-22.3.1-x86_64-1.txz:  Upgraded.
xap/mozilla-firefox-108.0-x86_64-1.txz:  Upgraded.
  This update contains security fixes and improvements.
  Thanks to marav for the build help.
  For more information, see:
    https://www.mozilla.org/en-US/firefox/108.0/releasenotes/
    https://www.mozilla.org/en-US/security/advisories/mfsa2022-51/
    https://www.cve.org/CVERecord?id=CVE-2022-46871
    https://www.cve.org/CVERecord?id=CVE-2022-46872
    https://www.cve.org/CVERecord?id=CVE-2022-46873
    https://www.cve.org/CVERecord?id=CVE-2022-46874
    https://www.cve.org/CVERecord?id=CVE-2022-46875
    https://www.cve.org/CVERecord?id=CVE-2022-46877
    https://www.cve.org/CVERecord?id=CVE-2022-46878
    https://www.cve.org/CVERecord?id=CVE-2022-46879
  (* Security fix *)
This commit is contained in:
Patrick J Volkerding 2022-12-16 04:46:51 +00:00 committed by Eric Hameleers
parent fc0ff5a5d7
commit 7852409378
22 changed files with 3766 additions and 1560 deletions

View file

@ -11,9 +11,38 @@
<description>Tracking Slackware development in git.</description>
<language>en-us</language>
<id xmlns="http://www.w3.org/2005/Atom">urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f</id>
<pubDate>Wed, 14 Dec 2022 21:19:34 GMT</pubDate>
<lastBuildDate>Wed, 14 Dec 2022 22:46:45 GMT</lastBuildDate>
<pubDate>Fri, 16 Dec 2022 04:46:51 GMT</pubDate>
<lastBuildDate>Fri, 16 Dec 2022 05:37:57 GMT</lastBuildDate>
<generator>maintain_current_git.sh v 1.17</generator>
<item>
<title>Fri, 16 Dec 2022 04:46:51 GMT</title>
<pubDate>Fri, 16 Dec 2022 04:46:51 GMT</pubDate>
<link>https://git.slackware.nl/current/tag/?h=20221216044651</link>
<guid isPermaLink="false">20221216044651</guid>
<description>
<![CDATA[<pre>
d/help2man-1.49.3-x86_64-1.txz: Upgraded.
l/pipewire-0.3.63-x86_64-1.txz: Upgraded.
x/libX11-1.8.3-x86_64-1.txz: Upgraded.
x/mesa-22.3.1-x86_64-1.txz: Upgraded.
xap/mozilla-firefox-108.0-x86_64-1.txz: Upgraded.
This update contains security fixes and improvements.
Thanks to marav for the build help.
For more information, see:
https://www.mozilla.org/en-US/firefox/108.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-51/
https://www.cve.org/CVERecord?id=CVE-2022-46871
https://www.cve.org/CVERecord?id=CVE-2022-46872
https://www.cve.org/CVERecord?id=CVE-2022-46873
https://www.cve.org/CVERecord?id=CVE-2022-46874
https://www.cve.org/CVERecord?id=CVE-2022-46875
https://www.cve.org/CVERecord?id=CVE-2022-46877
https://www.cve.org/CVERecord?id=CVE-2022-46878
https://www.cve.org/CVERecord?id=CVE-2022-46879
(* Security fix *)
</pre>]]>
</description>
</item>
<item>
<title>Wed, 14 Dec 2022 21:19:34 GMT</title>
<pubDate>Wed, 14 Dec 2022 21:19:34 GMT</pubDate>

View file

@ -1,3 +1,24 @@
Fri Dec 16 04:46:51 UTC 2022
d/help2man-1.49.3-x86_64-1.txz: Upgraded.
l/pipewire-0.3.63-x86_64-1.txz: Upgraded.
x/libX11-1.8.3-x86_64-1.txz: Upgraded.
x/mesa-22.3.1-x86_64-1.txz: Upgraded.
xap/mozilla-firefox-108.0-x86_64-1.txz: Upgraded.
This update contains security fixes and improvements.
Thanks to marav for the build help.
For more information, see:
https://www.mozilla.org/en-US/firefox/108.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-51/
https://www.cve.org/CVERecord?id=CVE-2022-46871
https://www.cve.org/CVERecord?id=CVE-2022-46872
https://www.cve.org/CVERecord?id=CVE-2022-46873
https://www.cve.org/CVERecord?id=CVE-2022-46874
https://www.cve.org/CVERecord?id=CVE-2022-46875
https://www.cve.org/CVERecord?id=CVE-2022-46877
https://www.cve.org/CVERecord?id=CVE-2022-46878
https://www.cve.org/CVERecord?id=CVE-2022-46879
(* Security fix *)
+--------------------------+
Wed Dec 14 21:19:34 UTC 2022
a/bash-5.2.015-x86_64-1.txz: Upgraded.
a/tcsh-6.24.06-x86_64-1.txz: Upgraded.

View file

@ -1,20 +1,20 @@
Wed Dec 14 21:25:58 UTC 2022
Fri Dec 16 04:50:34 UTC 2022
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 2022-12-14 21:19 .
drwxr-xr-x 12 root root 4096 2022-12-16 04:46 .
-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 1106265 2022-12-10 19:32 ./CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-10 19:32 ./CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 1107882 2022-12-14 21:26 ./CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-14 21:26 ./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 425550 2022-12-14 21:19 ./ChangeLog.txt
-rw-r--r-- 1 root root 426513 2022-12-16 04:46 ./ChangeLog.txt
drwxr-xr-x 3 root root 4096 2013-03-20 22:17 ./EFI
drwxr-xr-x 2 root root 4096 2022-10-24 18:57 ./EFI/BOOT
-rw-r--r-- 1 root root 1187840 2021-06-15 19:16 ./EFI/BOOT/bootx64.efi
@ -25,9 +25,9 @@ drwxr-xr-x 2 root root 4096 2022-10-24 18:57 ./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 1440477 2022-12-10 19:31 ./FILELIST.TXT
-rw-r--r-- 1 root root 1442559 2022-12-14 21:25 ./FILELIST.TXT
-rw-r--r-- 1 root root 1572 2012-08-29 18:27 ./GPG-KEY
-rw-r--r-- 1 root root 861672 2022-12-14 21:25 ./PACKAGES.TXT
-rw-r--r-- 1 root root 861670 2022-12-16 04:50 ./PACKAGES.TXT
-rw-r--r-- 1 root root 8034 2022-02-02 03:36 ./README.TXT
-rw-r--r-- 1 root root 3635 2022-10-24 18:47 ./README.initrd
-rw-r--r-- 1 root root 34162 2022-01-30 20:35 ./README_CRYPT.TXT
@ -746,11 +746,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 2022-12-14 21:25 ./slackware64
-rw-r--r-- 1 root root 336310 2022-12-14 21:25 ./slackware64/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-14 21:25 ./slackware64/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 417083 2022-12-14 21:24 ./slackware64/FILE_LIST
-rw-r--r-- 1 root root 4286048 2022-12-14 21:24 ./slackware64/MANIFEST.bz2
drwxr-xr-x 17 root root 4096 2022-12-16 04:50 ./slackware64
-rw-r--r-- 1 root root 336304 2022-12-16 04:50 ./slackware64/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-16 04:50 ./slackware64/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 417077 2022-12-16 04:49 ./slackware64/FILE_LIST
-rw-r--r-- 1 root root 4282520 2022-12-16 04:49 ./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 2022-12-14 21:24 ./slackware64/a
-rw-r--r-- 1 root root 327 2022-02-15 18:16 ./slackware64/a/aaa_base-15.1-x86_64-2.txt
@ -1391,7 +1391,7 @@ drwxr-xr-x 2 root root 20480 2022-12-14 21:24 ./slackware64/ap
-rw-r--r-- 1 root root 506 2022-05-15 17:09 ./slackware64/ap/zsh-5.9-x86_64-1.txt
-rw-r--r-- 1 root root 3156392 2022-05-15 17:09 ./slackware64/ap/zsh-5.9-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-05-15 17:09 ./slackware64/ap/zsh-5.9-x86_64-1.txz.asc
drwxr-xr-x 2 root root 20480 2022-12-14 21:24 ./slackware64/d
drwxr-xr-x 2 root root 20480 2022-12-16 04:49 ./slackware64/d
-rw-r--r-- 1 root root 360 2022-03-09 03:58 ./slackware64/d/Cython-0.29.28-x86_64-1.txt
-rw-r--r-- 1 root root 2393012 2022-03-09 03:58 ./slackware64/d/Cython-0.29.28-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-03-09 03:58 ./slackware64/d/Cython-0.29.28-x86_64-1.txz.asc
@ -1488,9 +1488,9 @@ drwxr-xr-x 2 root root 20480 2022-12-14 21:24 ./slackware64/d
-rw-r--r-- 1 root root 451 2021-11-03 00:53 ./slackware64/d/gyp-20210831_d6c5dd51-x86_64-2.txt
-rw-r--r-- 1 root root 414488 2021-11-03 00:53 ./slackware64/d/gyp-20210831_d6c5dd51-x86_64-2.txz
-rw-r--r-- 1 root root 163 2021-11-03 00:53 ./slackware64/d/gyp-20210831_d6c5dd51-x86_64-2.txz.asc
-rw-r--r-- 1 root root 287 2022-04-11 18:45 ./slackware64/d/help2man-1.49.2-x86_64-1.txt
-rw-r--r-- 1 root root 211192 2022-04-11 18:45 ./slackware64/d/help2man-1.49.2-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-04-11 18:45 ./slackware64/d/help2man-1.49.2-x86_64-1.txz.asc
-rw-r--r-- 1 root root 287 2022-12-16 04:29 ./slackware64/d/help2man-1.49.3-x86_64-1.txt
-rw-r--r-- 1 root root 215088 2022-12-16 04:29 ./slackware64/d/help2man-1.49.3-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-16 04:29 ./slackware64/d/help2man-1.49.3-x86_64-1.txz.asc
-rw-r--r-- 1 root root 541 2022-03-04 19:46 ./slackware64/d/icecream-1.4.0-x86_64-1.txt
-rw-r--r-- 1 root root 261312 2022-03-04 19:46 ./slackware64/d/icecream-1.4.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-03-04 19:46 ./slackware64/d/icecream-1.4.0-x86_64-1.txz.asc
@ -2774,7 +2774,7 @@ drwxr-xr-x 2 root root 86016 2022-12-14 21:24 ./slackware64/kde
-rw-r--r-- 1 root root 517 2022-12-08 20:47 ./slackware64/kde/zanshin-22.12.0-x86_64-1.txt
-rw-r--r-- 1 root root 682872 2022-12-08 20:47 ./slackware64/kde/zanshin-22.12.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-08 20:47 ./slackware64/kde/zanshin-22.12.0-x86_64-1.txz.asc
drwxr-xr-x 2 root root 86016 2022-12-14 21:24 ./slackware64/l
drwxr-xr-x 2 root root 86016 2022-12-16 04:49 ./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
@ -3643,9 +3643,9 @@ drwxr-xr-x 2 root root 86016 2022-12-14 21:24 ./slackware64/l
-rw-r--r-- 1 root root 415 2021-02-13 07:37 ./slackware64/l/pilot-link-0.12.5-x86_64-16.txt
-rw-r--r-- 1 root root 554276 2021-02-13 07:37 ./slackware64/l/pilot-link-0.12.5-x86_64-16.txz
-rw-r--r-- 1 root root 163 2021-02-13 07:37 ./slackware64/l/pilot-link-0.12.5-x86_64-16.txz.asc
-rw-r--r-- 1 root root 552 2022-12-09 18:27 ./slackware64/l/pipewire-0.3.62-x86_64-1.txt
-rw-r--r-- 1 root root 1967136 2022-12-09 18:27 ./slackware64/l/pipewire-0.3.62-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-09 18:27 ./slackware64/l/pipewire-0.3.62-x86_64-1.txz.asc
-rw-r--r-- 1 root root 552 2022-12-15 20:20 ./slackware64/l/pipewire-0.3.63-x86_64-1.txt
-rw-r--r-- 1 root root 1971404 2022-12-15 20:20 ./slackware64/l/pipewire-0.3.63-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-15 20:20 ./slackware64/l/pipewire-0.3.63-x86_64-1.txz.asc
-rw-r--r-- 1 root root 450 2022-03-12 20:28 ./slackware64/l/polkit-0.120-x86_64-3.txt
-rw-r--r-- 1 root root 402572 2022-03-12 20:28 ./slackware64/l/polkit-0.120-x86_64-3.txz
-rw-r--r-- 1 root root 163 2022-03-12 20:28 ./slackware64/l/polkit-0.120-x86_64-3.txz.asc
@ -4454,7 +4454,7 @@ drwxr-xr-x 2 root root 4096 2022-11-23 19:54 ./slackware64/tcl
-rw-r--r-- 1 root root 227 2022-11-23 19:07 ./slackware64/tcl/tk-8.6.13-x86_64-1.txt
-rw-r--r-- 1 root root 1802760 2022-11-23 19:07 ./slackware64/tcl/tk-8.6.13-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-11-23 19:07 ./slackware64/tcl/tk-8.6.13-x86_64-1.txz.asc
drwxr-xr-x 2 root root 65536 2022-12-14 21:24 ./slackware64/x
drwxr-xr-x 2 root root 65536 2022-12-16 04:49 ./slackware64/x
-rw-r--r-- 1 root root 440 2022-12-09 18:23 ./slackware64/x/OpenCC-1.1.6-x86_64-1.txt
-rw-r--r-- 1 root root 677084 2022-12-09 18:23 ./slackware64/x/OpenCC-1.1.6-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-09 18:23 ./slackware64/x/OpenCC-1.1.6-x86_64-1.txz.asc
@ -4718,9 +4718,9 @@ drwxr-xr-x 2 root root 65536 2022-12-14 21:24 ./slackware64/x
-rw-r--r-- 1 root root 288 2021-02-13 13:05 ./slackware64/x/libSM-1.2.3-x86_64-3.txt
-rw-r--r-- 1 root root 76428 2021-02-13 13:05 ./slackware64/x/libSM-1.2.3-x86_64-3.txz
-rw-r--r-- 1 root root 163 2021-02-13 13:05 ./slackware64/x/libSM-1.2.3-x86_64-3.txz.asc
-rw-r--r-- 1 root root 305 2022-11-11 18:58 ./slackware64/x/libX11-1.8.2-x86_64-1.txt
-rw-r--r-- 1 root root 2608504 2022-11-11 18:58 ./slackware64/x/libX11-1.8.2-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-11-11 18:58 ./slackware64/x/libX11-1.8.2-x86_64-1.txz.asc
-rw-r--r-- 1 root root 305 2022-12-16 04:32 ./slackware64/x/libX11-1.8.3-x86_64-1.txt
-rw-r--r-- 1 root root 2612668 2022-12-16 04:32 ./slackware64/x/libX11-1.8.3-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-16 04:32 ./slackware64/x/libX11-1.8.3-x86_64-1.txz.asc
-rw-r--r-- 1 root root 405 2022-12-05 02:29 ./slackware64/x/libXScrnSaver-1.2.4-x86_64-1.txt
-rw-r--r-- 1 root root 26564 2022-12-05 02:29 ./slackware64/x/libXScrnSaver-1.2.4-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-05 02:29 ./slackware64/x/libXScrnSaver-1.2.4-x86_64-1.txz.asc
@ -4912,9 +4912,9 @@ drwxr-xr-x 2 root root 65536 2022-12-14 21:24 ./slackware64/x
-rw-r--r-- 1 root root 485 2022-03-06 20:48 ./slackware64/x/marisa-0.2.6-x86_64-5.txt
-rw-r--r-- 1 root root 156984 2022-03-06 20:48 ./slackware64/x/marisa-0.2.6-x86_64-5.txz
-rw-r--r-- 1 root root 163 2022-03-06 20:48 ./slackware64/x/marisa-0.2.6-x86_64-5.txz.asc
-rw-r--r-- 1 root root 362 2022-12-07 18:04 ./slackware64/x/mesa-22.3.0-x86_64-1.txt
-rw-r--r-- 1 root root 27925776 2022-12-07 18:04 ./slackware64/x/mesa-22.3.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-07 18:04 ./slackware64/x/mesa-22.3.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 362 2022-12-16 04:36 ./slackware64/x/mesa-22.3.1-x86_64-1.txt
-rw-r--r-- 1 root root 27965664 2022-12-16 04:36 ./slackware64/x/mesa-22.3.1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-16 04:36 ./slackware64/x/mesa-22.3.1-x86_64-1.txz.asc
-rw-r--r-- 1 root root 425 2022-04-04 18:48 ./slackware64/x/mkcomposecache-1.2.2-x86_64-1.txt
-rw-r--r-- 1 root root 13532 2022-04-04 18:48 ./slackware64/x/mkcomposecache-1.2.2-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-04-04 18:48 ./slackware64/x/mkcomposecache-1.2.2-x86_64-1.txz.asc
@ -5327,7 +5327,7 @@ drwxr-xr-x 2 root root 65536 2022-12-14 21:24 ./slackware64/x
-rw-r--r-- 1 root root 213 2022-07-11 18:36 ./slackware64/x/xwud-1.0.6-x86_64-1.txt
-rw-r--r-- 1 root root 25896 2022-07-11 18:36 ./slackware64/x/xwud-1.0.6-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-07-11 18:36 ./slackware64/x/xwud-1.0.6-x86_64-1.txz.asc
drwxr-xr-x 2 root root 16384 2022-12-14 21:24 ./slackware64/xap
drwxr-xr-x 2 root root 16384 2022-12-16 04:49 ./slackware64/xap
-rw-r--r-- 1 root root 625 2022-10-09 18:00 ./slackware64/xap/MPlayer-20221009-x86_64-1.txt
-rw-r--r-- 1 root root 2750024 2022-10-09 18:00 ./slackware64/xap/MPlayer-20221009-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-10-09 18:00 ./slackware64/xap/MPlayer-20221009-x86_64-1.txz.asc
@ -5404,9 +5404,9 @@ drwxr-xr-x 2 root root 16384 2022-12-14 21:24 ./slackware64/xap
-rw-r--r-- 1 root root 163 2022-12-04 20:18 ./slackware64/xap/libnma-1.10.4-x86_64-2.txz.asc
-rw-r--r-- 1 root root 4491 2021-09-23 19:14 ./slackware64/xap/maketag
-rw-r--r-- 1 root root 4491 2021-09-23 19:14 ./slackware64/xap/maketag.ez
-rw-r--r-- 1 root root 570 2022-11-29 19:36 ./slackware64/xap/mozilla-firefox-107.0.1-x86_64-1.txt
-rw-r--r-- 1 root root 59279196 2022-11-29 19:36 ./slackware64/xap/mozilla-firefox-107.0.1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-11-29 19:36 ./slackware64/xap/mozilla-firefox-107.0.1-x86_64-1.txz.asc
-rw-r--r-- 1 root root 570 2022-12-15 22:21 ./slackware64/xap/mozilla-firefox-108.0-x86_64-1.txt
-rw-r--r-- 1 root root 59420048 2022-12-15 22:21 ./slackware64/xap/mozilla-firefox-108.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-15 22:21 ./slackware64/xap/mozilla-firefox-108.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 663 2022-12-14 01:28 ./slackware64/xap/mozilla-thunderbird-102.6.0-x86_64-1.txt
-rw-r--r-- 1 root root 55151156 2022-12-14 01:28 ./slackware64/xap/mozilla-thunderbird-102.6.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-14 01:28 ./slackware64/xap/mozilla-thunderbird-102.6.0-x86_64-1.txz.asc
@ -5594,11 +5594,11 @@ drwxr-xr-x 2 root root 4096 2021-02-15 19:33 ./slackware64/y
-rw-r--r-- 1 root root 1486956 2021-02-13 13:56 ./slackware64/y/nethack-3.6.6-x86_64-3.txz
-rw-r--r-- 1 root root 163 2021-02-13 13:56 ./slackware64/y/nethack-3.6.6-x86_64-3.txz.asc
-rw-r--r-- 1 root root 26 2020-12-30 21:55 ./slackware64/y/tagfile
drwxr-xr-x 18 root root 4096 2022-12-14 21:25 ./source
-rw-r--r-- 1 root root 594229 2022-12-14 21:25 ./source/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-14 21:25 ./source/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 826624 2022-12-14 21:25 ./source/FILE_LIST
-rw-r--r-- 1 root root 24004464 2022-12-14 21:25 ./source/MANIFEST.bz2
drwxr-xr-x 18 root root 4096 2022-12-16 04:50 ./source
-rw-r--r-- 1 root root 594433 2022-12-16 04:50 ./source/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-16 04:50 ./source/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 826862 2022-12-16 04:50 ./source/FILE_LIST
-rw-r--r-- 1 root root 24003356 2022-12-16 04:50 ./source/MANIFEST.bz2
-rw-r--r-- 1 root root 828 2022-02-02 04:43 ./source/README.TXT
drwxr-xr-x 123 root root 4096 2022-10-07 02:22 ./source/a
-rw-r--r-- 1 root root 234 2022-10-16 18:39 ./source/a/FTBFSlog
@ -7478,9 +7478,9 @@ drwxr-xr-x 2 root root 4096 2022-09-06 18:27 ./source/d/gyp
-rw-r--r-- 1 root root 737 2020-05-26 00:58 ./source/d/gyp/gyp-python39.patch.gz
-rwxr-xr-x 1 root root 3741 2022-09-06 18:27 ./source/d/gyp/gyp.SlackBuild
-rw-r--r-- 1 root root 902 2020-05-30 20:24 ./source/d/gyp/slack-desc
drwxr-xr-x 2 root root 4096 2022-09-06 18:27 ./source/d/help2man
-rw-r--r-- 1 root root 225428 2022-04-11 09:59 ./source/d/help2man/help2man-1.49.2.tar.xz
-rw-r--r-- 1 root root 95 2022-04-11 09:59 ./source/d/help2man/help2man-1.49.2.tar.xz.sig
drwxr-xr-x 2 root root 4096 2022-12-16 04:29 ./source/d/help2man
-rw-r--r-- 1 root root 228472 2022-12-15 10:46 ./source/d/help2man/help2man-1.49.3.tar.xz
-rw-r--r-- 1 root root 95 2022-12-15 10:46 ./source/d/help2man/help2man-1.49.3.tar.xz.sig
-rwxr-xr-x 1 root root 4744 2022-09-06 18:27 ./source/d/help2man/help2man.SlackBuild
-rw-r--r-- 1 root root 743 2018-02-27 06:13 ./source/d/help2man/slack-desc
drwxr-xr-x 2 root root 4096 2022-11-21 20:13 ./source/d/icecream
@ -11332,11 +11332,11 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/l/pilot-link
-rwxr-xr-x 1 root root 4918 2021-02-13 05:32 ./source/l/pilot-link/pilot-link.SlackBuild
-rw-r--r-- 1 root root 645 2010-02-19 18:53 ./source/l/pilot-link/pilot-link.png14.diff.gz
-rw-r--r-- 1 root root 873 2018-02-27 06:12 ./source/l/pilot-link/slack-desc
drwxr-xr-x 2 root root 4096 2022-12-09 18:27 ./source/l/pipewire
drwxr-xr-x 2 root root 4096 2022-12-15 20:19 ./source/l/pipewire
-rw-r--r-- 1 root root 162 2022-01-05 06:46 ./source/l/pipewire/doinst.sh.gz
-rwxr-xr-x 1 root root 1525 2022-10-09 17:38 ./source/l/pipewire/fetch-media-session.sh
-rw-r--r-- 1 root root 84434 2022-12-09 18:27 ./source/l/pipewire/media-session.tar.lz
-rw-r--r-- 1 root root 1253843 2022-12-09 10:28 ./source/l/pipewire/pipewire-0.3.62.tar.lz
-rw-r--r-- 1 root root 84468 2022-12-15 20:19 ./source/l/pipewire/media-session.tar.lz
-rw-r--r-- 1 root root 1255679 2022-12-15 08:56 ./source/l/pipewire/pipewire-0.3.63.tar.lz
-rw-r--r-- 1 root root 2661 2022-01-05 06:36 ./source/l/pipewire/pipewire-disable.sh
-rw-r--r-- 1 root root 2167 2022-01-04 21:52 ./source/l/pipewire/pipewire-enable.sh
-rw-r--r-- 1 root root 298 2022-01-03 20:12 ./source/l/pipewire/pipewire-media-session.desktop.sample
@ -13437,7 +13437,7 @@ drwxr-xr-x 2 root root 4096 2022-03-06 20:46 ./source/x/marisa
-rwxr-xr-x 1 root root 4717 2022-03-06 20:46 ./source/x/marisa/marisa.SlackBuild
-rw-r--r-- 1 root root 38 2020-12-08 18:39 ./source/x/marisa/marisa.url
-rw-r--r-- 1 root root 972 2020-11-28 00:57 ./source/x/marisa/slack-desc
drwxr-xr-x 5 root root 4096 2022-12-07 17:59 ./source/x/mesa
drwxr-xr-x 5 root root 4096 2022-12-16 04:32 ./source/x/mesa
drwxr-xr-x 4 root root 4096 2022-08-08 18:18 ./source/x/mesa/amber
-rw-r--r-- 1 root root 16607716 2022-06-08 18:26 ./source/x/mesa/amber/mesa-21.3.9.tar.xz
-rw-r--r-- 1 root root 119 2022-06-08 18:26 ./source/x/mesa/amber/mesa-21.3.9.tar.xz.sig
@ -13447,8 +13447,8 @@ drwxr-xr-x 2 root root 4096 2021-03-12 01:31 ./source/x/mesa/amber/patches
-rw-r--r-- 1 root root 1259 2021-03-12 01:31 ./source/x/mesa/amber/patches-revert/80817b6e344258ac9b955f824ebf9019a0fc1610.patch
-rw-r--r-- 1 root root 388 2018-12-07 19:28 ./source/x/mesa/doinst.sh.gz
-rwxr-xr-x 1 root root 720 2015-12-11 03:09 ./source/x/mesa/get-mesa.sh
-rw-r--r-- 1 root root 16878600 2022-11-30 21:43 ./source/x/mesa/mesa-22.3.0.tar.xz
-rw-r--r-- 1 root root 329 2022-11-30 21:43 ./source/x/mesa/mesa-22.3.0.tar.xz.sig
-rw-r--r-- 1 root root 16972884 2022-12-14 22:24 ./source/x/mesa/mesa-22.3.1.tar.xz
-rw-r--r-- 1 root root 329 2022-12-14 22:24 ./source/x/mesa/mesa-22.3.1.tar.xz.sig
-rwxr-xr-x 1 root root 2526 2022-08-08 21:46 ./source/x/mesa/mesa-amber.build
-rw-r--r-- 1 root root 7322153 2022-05-30 14:26 ./source/x/mesa/mesa-demos-8.5.0.tar.lz
-rwxr-xr-x 1 root root 1347 2022-08-08 19:08 ./source/x/mesa/mesa-demos.build
@ -14399,7 +14399,7 @@ drwxr-xr-x 2 root root 12288 2022-05-21 04:31 ./source/x/x11/slack-desc
-rw-r--r-- 1 root root 716 2012-04-08 02:21 ./source/x/x11/slack-desc/xwd
-rw-r--r-- 1 root root 702 2012-04-08 02:21 ./source/x/x11/slack-desc/xwininfo
-rw-r--r-- 1 root root 668 2012-04-07 23:42 ./source/x/x11/slack-desc/xwud
drwxr-xr-x 12 root root 4096 2022-12-14 19:13 ./source/x/x11/src
drwxr-xr-x 12 root root 4096 2022-12-16 04:30 ./source/x/x11/src
drwxr-xr-x 2 root root 4096 2022-12-14 19:13 ./source/x/x11/src/app
-rw-r--r-- 1 root root 118972 2022-04-03 18:57 ./source/x/x11/src/app/appres-1.0.6.tar.xz
-rw-r--r-- 1 root root 109956 2013-01-15 05:23 ./source/x/x11/src/app/beforelight-1.0.5.tar.xz
@ -14560,11 +14560,11 @@ drwxr-xr-x 2 root root 4096 2022-07-14 18:10 ./source/x/x11/src/font
-rwxr-xr-x 1 root root 2154 2020-07-09 18:37 ./source/x/x11/src/get-xf86-video-sis.sh
-rwxr-xr-x 1 root root 2154 2020-07-09 18:37 ./source/x/x11/src/get-xf86-video-v4l.sh
-rwxr-xr-x 1 root root 2205 2022-08-08 20:05 ./source/x/x11/src/get-xf86-video-vmware.sh
drwxr-xr-x 2 root root 4096 2022-12-08 18:13 ./source/x/x11/src/lib
drwxr-xr-x 2 root root 4096 2022-12-16 04:30 ./source/x/x11/src/lib
-rw-r--r-- 1 root root 287416 2022-08-26 22:33 ./source/x/x11/src/lib/libFS-1.0.9.tar.xz
-rw-r--r-- 1 root root 335960 2022-12-08 16:09 ./source/x/x11/src/lib/libICE-1.1.1.tar.xz
-rw-r--r-- 1 root root 300712 2018-10-10 15:05 ./source/x/x11/src/lib/libSM-1.2.3.tar.xz
-rw-r--r-- 1 root root 1823712 2022-11-10 20:46 ./source/x/x11/src/lib/libX11-1.8.2.tar.xz
-rw-r--r-- 1 root root 1811712 2022-12-15 23:23 ./source/x/x11/src/lib/libX11-1.8.3.tar.xz
-rw-r--r-- 1 root root 264384 2022-12-04 23:39 ./source/x/x11/src/lib/libXScrnSaver-1.2.4.tar.xz
-rw-r--r-- 1 root root 274108 2022-12-08 16:04 ./source/x/x11/src/lib/libXau-1.0.11.tar.xz
-rw-r--r-- 1 root root 590852 2021-03-27 17:42 ./source/x/x11/src/lib/libXaw-1.0.14.tar.xz
@ -14837,8 +14837,9 @@ drwxr-xr-x 2 root root 4096 2022-12-04 20:11 ./source/xap/libnma
-rw-r--r-- 1 root root 1351932 2022-11-07 07:55 ./source/xap/libnma/libnma-1.10.4.tar.xz
-rwxr-xr-x 1 root root 3712 2022-12-04 20:12 ./source/xap/libnma/libnma.SlackBuild
-rw-r--r-- 1 root root 792 2020-03-07 19:38 ./source/xap/libnma/slack-desc
drwxr-xr-x 3 root root 4096 2022-11-29 19:10 ./source/xap/mozilla-firefox
drwxr-xr-x 3 root root 4096 2022-12-15 21:00 ./source/xap/mozilla-firefox
-rw-r--r-- 1 root root 693 2021-03-22 17:58 ./source/xap/mozilla-firefox/0027-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch.gz
-rw-r--r-- 1 root root 6732 2022-12-15 20:58 ./source/xap/mozilla-firefox/8f889cf198ae7ffa9341423cb5a07ed39c07463a.patch.gz
-rw-r--r-- 1 root root 266 2022-08-06 19:40 ./source/xap/mozilla-firefox/arc4random_buf.glibc-2.36.diff.gz
drwxr-xr-x 3 root root 4096 2022-12-07 18:06 ./source/xap/mozilla-firefox/build-deps
-rwxr-xr-x 1 root root 1652 2022-12-07 18:07 ./source/xap/mozilla-firefox/build-deps.sh
@ -14848,14 +14849,15 @@ drwxr-xr-x 2 root root 4096 2016-07-03 18:05 ./source/xap/mozilla-firefox/
-rwxr-xr-x 1 root root 2486 2019-07-08 21:06 ./source/xap/mozilla-firefox/build-deps/autoconf/autoconf.build
-rwxr-xr-x 1 root root 840 2018-03-13 12:55 ./source/xap/mozilla-firefox/fetch-and-repack.sh
-rw-r--r-- 1 root root 330 2019-07-08 18:41 ./source/xap/mozilla-firefox/ff.ui.scrollToClick.diff.gz
-rw-r--r-- 1 root root 508678860 2022-11-28 20:32 ./source/xap/mozilla-firefox/firefox-107.0.1.source.tar.xz
-rw-r--r-- 1 root root 833 2022-11-28 20:32 ./source/xap/mozilla-firefox/firefox-107.0.1.source.tar.xz.asc
-rw-r--r-- 1 root root 503688784 2022-12-12 14:42 ./source/xap/mozilla-firefox/firefox-108.0.source.tar.xz
-rw-r--r-- 1 root root 833 2022-12-12 14:42 ./source/xap/mozilla-firefox/firefox-108.0.source.tar.xz.asc
-rw-r--r-- 1 root root 327 2008-06-17 17:19 ./source/xap/mozilla-firefox/firefox.moz_plugin_path.diff.gz
-rw-r--r-- 1 root root 518 2021-03-15 17:43 ./source/xap/mozilla-firefox/gkrust.a.no.networking.check.diff.gz
-rw-r--r-- 1 root root 462 2009-07-01 06:05 ./source/xap/mozilla-firefox/mimeTypes.rdf.gz
-rw-r--r-- 1 root root 680 2009-07-01 13:28 ./source/xap/mozilla-firefox/mozilla-firefox-mimeTypes-fix.diff.gz
-rwxr-xr-x 1 root root 16248 2022-08-06 20:56 ./source/xap/mozilla-firefox/mozilla-firefox.SlackBuild
-rwxr-xr-x 1 root root 16863 2022-12-15 21:10 ./source/xap/mozilla-firefox/mozilla-firefox.SlackBuild
-rw-r--r-- 1 root root 2748 2017-12-04 21:30 ./source/xap/mozilla-firefox/mozilla-firefox.desktop
-rw-r--r-- 1 root root 15263 2022-12-15 19:50 ./source/xap/mozilla-firefox/regenerated-uniffi-toolkit-components.diff.gz
-rw-r--r-- 1 root root 1033 2020-07-07 18:08 ./source/xap/mozilla-firefox/slack-desc
drwxr-xr-x 4 root root 4096 2022-12-14 00:47 ./source/xap/mozilla-thunderbird
-rw-r--r-- 1 root root 266 2022-08-06 19:40 ./source/xap/mozilla-thunderbird/arc4random_buf.glibc-2.36.diff.gz
@ -14871,7 +14873,7 @@ drwxr-xr-x 2 root root 4096 2016-07-03 18:05 ./source/xap/mozilla-thunderb
-rwxr-xr-x 1 root root 2502 2019-08-27 19:46 ./source/xap/mozilla-thunderbird/build-deps/autoconf/autoconf.build
-rw-r--r-- 1 root root 263 2022-06-30 18:42 ./source/xap/mozilla-thunderbird/double_t.x86.diff.gz
-rw-r--r-- 1 root root 518 2021-03-15 17:43 ./source/xap/mozilla-thunderbird/gkrust.a.no.networking.check.diff.gz
-rwxr-xr-x 1 root root 13415 2022-12-14 00:47 ./source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild
-rwxr-xr-x 1 root root 12877 2022-12-15 20:32 ./source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild
-rw-r--r-- 1 root root 3378 2005-03-08 05:13 ./source/xap/mozilla-thunderbird/mozilla-thunderbird.desktop
-rw-r--r-- 1 root root 1130 2018-02-27 06:47 ./source/xap/mozilla-thunderbird/slack-desc
-rw-r--r-- 1 root root 330 2019-08-27 16:35 ./source/xap/mozilla-thunderbird/tb.ui.scrollToClick.diff.gz
@ -15237,99 +15239,76 @@ drwxr-xr-x 2 root root 4096 2022-08-27 16:40 ./source/xfce/xfce4-terminal
-rw-r--r-- 1 root root 52 2022-08-27 16:40 ./source/xfce/xfce4-terminal/xfce4-terminal.url
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/xfce/xfce4-weather-plugin
-rw-r--r-- 1 root root 837 2018-02-27 06:13 ./source/xfce/xfce4-weather-plugin/slack-desc
-rw-r--r-- 1 root root 2767044 2020-11-09 21:06 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin-0.10.2.tar.lz
-rwxr-xr-x 1 root root 3721 2021-02-13 05:32 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild
-rw-r--r-- 1 root root 65 2018-09-22 21:37 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.url
drwxr-xr-x 2 root root 4096 2021-11-15 19:35 ./source/xfce/xfce4-whiskermenu-plugin
-rw-r--r-- 1 root root 172 2016-06-18 20:47 ./source/xfce/xfce4-whiskermenu-plugin/doinst.sh.gz
-rw-r--r-- 1 root root 1334 2020-11-25 21:11 ./source/xfce/xfce4-whiskermenu-plugin/slack-desc
-rw-r--r-- 1 root root 166821 2021-11-13 14:12 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin-2.6.2.tar.lz
-rwxr-xr-x 1 root root 4047 2021-09-19 18:29 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin.SlackBuild
-rw-r--r-- 1 root root 69 2018-11-20 06:26 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin.url
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/xfce/xfconf
-rw-r--r-- 1 root root 747 2018-02-27 06:13 ./source/xfce/xfconf/slack-desc
-rw-r--r-- 1 root root 491652 2020-12-22 22:54 ./source/xfce/xfconf/xfconf-4.16.0.tar.lz
-rwxr-xr-x 1 root root 4785 2021-02-13 05:32 ./source/xfce/xfconf/xfconf.SlackBuild
drwxr-xr-x 2 root root 4096 2022-08-21 18:40 ./source/xfce/xfdesktop
-rw-r--r-- 1 root root 880 2018-02-27 06:13 ./source/xfce/xfdesktop/slack-desc
-rw-r--r-- 1 root root 1714552 2022-08-20 16:14 ./source/xfce/xfdesktop/xfdesktop-4.16.1.tar.lz
-rwxr-xr-x 1 root root 4615 2022-08-21 18:40 ./source/xfce/xfdesktop/xfdesktop.SlackBuild
-rw-r--r-- 1 root root 50 2022-08-21 18:39 ./source/xfce/xfdesktop/xfdesktop.url
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/xfce/xfwm4
-rw-r--r-- 1 root root 738 2018-02-27 06:13 ./source/xfce/xfwm4/slack-desc
-rw-r--r-- 1 root root 1013895 2021-01-09 18:02 ./source/xfce/xfwm4/xfwm4-4.16.1.tar.lz
-rwxr-xr-x 1 root root 4732 2021-02-13 05:32 ./source/xfce/xfwm4/xfwm4.SlackBuild
-rw-r--r-- 1 root root 65 2019-02-08 19:39 ./source/xfce/xfwm4/xfwm4.url
-rw-r--r-- 1 root root 886 2020-12-23 08:10 ./source/xfce/xfwm4/xinitrc.xfce
drwxr-xr-x 4 root root 4096 2020-12-30 21:23 ./source/y
-rw-r--r-- 1 root root 111 2022-02-07 20:58 ./source/y/FTBFSlog
drwxr-xr-x 3 root root 4096 2021-02-13 05:32 ./source/y/bsd-games
-rw-r--r-- 1 root root 1794497 2005-02-18 19:17 ./source/y/bsd-games/bsd-games-2.17.tar.lz
-rw-r--r-- 1 root root 164 1999-09-27 21:18 ./source/y/bsd-games/bsd-games-login-fortune.csh
-rw-r--r-- 1 root root 164 2010-05-11 19:26 ./source/y/bsd-games/bsd-games-login-fortune.sh
-rwxr-xr-x 1 root root 8135 2021-02-13 05:32 ./source/y/bsd-games/bsd-games.SlackBuild
-rw-r--r-- 1 root root 15107 2002-03-10 05:09 ./source/y/bsd-games/fortunes-linuxcookie.tar.gz
-rw-r--r-- 1 root root 104848 1993-10-25 00:02 ./source/y/bsd-games/hangman-words.gz
drwxr-xr-x 2 root root 4096 2019-02-17 22:03 ./source/y/bsd-games/patches
-rw-r--r-- 1 root root 2159 2019-02-17 21:20 ./source/y/bsd-games/patches/0001-Replace-getline-with-get_line.patch.gz
-rw-r--r-- 1 root root 336 2019-02-17 21:20 ./source/y/bsd-games/patches/0002-robots-Refresh-screen.patch.gz
-rw-r--r-- 1 root root 4582 2019-02-17 21:20 ./source/y/bsd-games/patches/0003-quiz-Update-presidents-capitals-fix-typos-in-murders.patch.gz
-rw-r--r-- 1 root root 386 2019-02-17 21:20 ./source/y/bsd-games/patches/0004-Define-__dead-for-GNU-GCC.patch.gz
-rw-r--r-- 1 root root 544 2019-02-17 21:20 ./source/y/bsd-games/patches/0005-rain-Update-default-delay.-Closes-579062.patch.gz
-rw-r--r-- 1 root root 5817 2019-02-17 21:20 ./source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch.gz
-rw-r--r-- 1 root root 431 2019-02-17 21:20 ./source/y/bsd-games/patches/0008-quiz-Add-answers-to-adults-babies.-Closes-659528.patch.gz
-rw-r--r-- 1 root root 679 2019-02-17 21:20 ./source/y/bsd-games/patches/0009-hangman-Error-out-on-1000-unsuitable-words.-Closes-6.patch.gz
-rw-r--r-- 1 root root 577 2019-02-17 21:20 ./source/y/bsd-games/patches/0010-Fix-typos-spotted-by-Lintian.patch.gz
-rw-r--r-- 1 root root 3152 2019-02-17 21:20 ./source/y/bsd-games/patches/0011-Fix-format-security-compiling-errors.patch.gz
-rw-r--r-- 1 root root 745 2019-02-17 21:20 ./source/y/bsd-games/patches/0012-Fix-include-stdio.h-C-incompatibility.patch.gz
-rw-r--r-- 1 root root 25237 2019-02-17 21:20 ./source/y/bsd-games/patches/0013-Update-acronyms.patch.gz
-rw-r--r-- 1 root root 7476 2019-02-17 21:20 ./source/y/bsd-games/patches/0015-primes-Update-to-NetBSD-CVS-2018-02-03.patch.gz
-rw-r--r-- 1 root root 791 2019-02-17 21:20 ./source/y/bsd-games/patches/0016-Better-explanation-how-to-read-the-documentation.patch.gz
-rw-r--r-- 1 root root 801 2019-02-17 21:20 ./source/y/bsd-games/patches/0017-hack-Fix-segv-when-i-inventory-done-after-load-from-.patch.gz
-rw-r--r-- 1 root root 563 2003-02-03 21:48 ./source/y/bsd-games/patches/bsd-games.config.params.diff.gz
-rw-r--r-- 1 root root 422 2019-02-17 21:39 ./source/y/bsd-games/patches/bsd-games.factor.no.ubig.diff.gz
-rw-r--r-- 1 root root 313 2019-02-17 22:07 ./source/y/bsd-games/patches/bsd-games.fortunepath.diff.gz
-rw-r--r-- 1 root root 1960 2006-09-09 00:47 ./source/y/bsd-games/patches/bsd-games.pom.diff.gz
-rw-r--r-- 1 root root 1065 2019-02-17 22:28 ./source/y/bsd-games/slack-desc
drwxr-xr-x 2 root root 4096 2022-09-06 18:27 ./source/y/nethack
-rw-r--r-- 1 root root 4023451 2020-03-08 18:44 ./source/y/nethack/nethack-366-src.tar.lz
-rwxr-xr-x 1 root root 5000 2022-09-06 18:27 ./source/y/nethack/nethack.SlackBuild
-rw-r--r-- 1 root root 59 2020-12-30 20:25 ./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 2022-12-14 21:25 ./testing
-rw-r--r-- 1 root root 2348 2022-12-14 21:25 ./testing/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-14 21:25 ./testing/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 3097 2022-12-14 21:25 ./testing/FILE_LIST
-rw-r--r-- 1 root root 2431786 2022-12-14 21:25 ./testing/MANIFEST.bz2
-rw-r--r-- 1 root root 975 2022-12-14 21:25 ./testing/PACKAGES.TXT
drwxr-xr-x 2 root root 4096 2022-12-14 21:25 ./testing/packages
-rw-r--r-- 1 root root 570 2022-12-14 19:47 ./testing/packages/mozilla-firefox-108.0-x86_64-1.txt
-rw-r--r-- 1 root root 59410480 2022-12-14 19:47 ./testing/packages/mozilla-firefox-108.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2022-12-14 19:47 ./testing/packages/mozilla-firefox-108.0-x86_64-1.txz.asc
drwxr-xr-x 3 root root 4096 2022-12-14 19:37 ./testing/source
drwxr-xr-x 3 root root 4096 2022-12-14 19:37 ./testing/source/mozilla-firefox
-rw-r--r-- 1 root root 693 2021-03-22 17:58 ./testing/source/mozilla-firefox/0027-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch.gz
-rw-r--r-- 1 root root 266 2022-08-06 19:40 ./testing/source/mozilla-firefox/arc4random_buf.glibc-2.36.diff.gz
drwxr-xr-x 3 root root 4096 2022-12-07 18:06 ./testing/source/mozilla-firefox/build-deps
-rwxr-xr-x 1 root root 1652 2022-12-07 18:07 ./testing/source/mozilla-firefox/build-deps.sh
drwxr-xr-x 2 root root 4096 2016-07-03 18:05 ./testing/source/mozilla-firefox/build-deps/autoconf
-rw-r--r-- 1 root root 5869 2016-07-03 18:04 ./testing/source/mozilla-firefox/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch.gz
-rw-r--r-- 1 root root 300116 1999-01-15 21:03 ./testing/source/mozilla-firefox/build-deps/autoconf/autoconf-2.13.tar.xz
-rwxr-xr-x 1 root root 2486 2019-07-08 21:06 ./testing/source/mozilla-firefox/build-deps/autoconf/autoconf.build
-rwxr-xr-x 1 root root 840 2018-03-13 12:55 ./testing/source/mozilla-firefox/fetch-and-repack.sh
-rw-r--r-- 1 root root 330 2019-07-08 18:41 ./testing/source/mozilla-firefox/ff.ui.scrollToClick.diff.gz
-rw-r--r-- 1 root root 503688784 2022-12-12 14:42 ./testing/source/mozilla-firefox/firefox-108.0.source.tar.xz
-rw-r--r-- 1 root root 833 2022-12-12 14:42 ./testing/source/mozilla-firefox/firefox-108.0.source.tar.xz.asc
-rw-r--r-- 1 root root 327 2008-06-17 17:19 ./testing/source/mozilla-firefox/firefox.moz_plugin_path.diff.gz
-rw-r--r-- 1 root root 518 2021-03-15 17:43 ./testing/source/mozilla-firefox/gkrust.a.no.networking.check.diff.gz
-rw-r--r-- 1 root root 462 2009-07-01 06:05 ./testing/source/mozilla-firefox/mimeTypes.rdf.gz
-rw-r--r-- 1 root root 680 2009-07-01 13:28 ./testing/source/mozilla-firefox/mozilla-firefox-mimeTypes-fix.diff.gz
-rwxr-xr-x 1 root root 16248 2022-08-06 20:56 ./testing/source/mozilla-firefox/mozilla-firefox.SlackBuild
-rw-r--r-- 1 root root 2748 2017-12-04 21:30 ./testing/source/mozilla-firefox/mozilla-firefox.desktop
-rw-r--r-- 1 root root 1033 2020-07-07 18:08 ./testing/source/mozilla-firefox/slack-desc
drwxr-xr-x 2 root root 4096 2022-10-24 18:57 ./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
-rw-r--r-- 1 root root 574 2013-03-27 04:59 ./usb-and-pxe-installers/pxelinux.cfg_default
-rw-r--r-- 1 root root 57648128 2022-10-24 18:57 ./usb-and-pxe-installers/usbboot.img
-rw-r--r-- 1 root root 16314 2022-03-24 20:54 ./usb-and-pxe-installers/usbimg2disk.sh
-rw-r--r-- 1 root root 2767044 2020-11-09 21:06 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin-0.10.2.tar.lz
-rwxr-xr-x 1 root root 3721 2021-02-13 05:32 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild
-rw-r--r-- 1 root root 65 2018-09-22 21:37 ./source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.url
drwxr-xr-x 2 root root 4096 2021-11-15 19:35 ./source/xfce/xfce4-whiskermenu-plugin
-rw-r--r-- 1 root root 172 2016-06-18 20:47 ./source/xfce/xfce4-whiskermenu-plugin/doinst.sh.gz
-rw-r--r-- 1 root root 1334 2020-11-25 21:11 ./source/xfce/xfce4-whiskermenu-plugin/slack-desc
-rw-r--r-- 1 root root 166821 2021-11-13 14:12 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin-2.6.2.tar.lz
-rwxr-xr-x 1 root root 4047 2021-09-19 18:29 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin.SlackBuild
-rw-r--r-- 1 root root 69 2018-11-20 06:26 ./source/xfce/xfce4-whiskermenu-plugin/xfce4-whiskermenu-plugin.url
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/xfce/xfconf
-rw-r--r-- 1 root root 747 2018-02-27 06:13 ./source/xfce/xfconf/slack-desc
-rw-r--r-- 1 root root 491652 2020-12-22 22:54 ./source/xfce/xfconf/xfconf-4.16.0.tar.lz
-rwxr-xr-x 1 root root 4785 2021-02-13 05:32 ./source/xfce/xfconf/xfconf.SlackBuild
drwxr-xr-x 2 root root 4096 2022-08-21 18:40 ./source/xfce/xfdesktop
-rw-r--r-- 1 root root 880 2018-02-27 06:13 ./source/xfce/xfdesktop/slack-desc
-rw-r--r-- 1 root root 1714552 2022-08-20 16:14 ./source/xfce/xfdesktop/xfdesktop-4.16.1.tar.lz
-rwxr-xr-x 1 root root 4615 2022-08-21 18:40 ./source/xfce/xfdesktop/xfdesktop.SlackBuild
-rw-r--r-- 1 root root 50 2022-08-21 18:39 ./source/xfce/xfdesktop/xfdesktop.url
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/xfce/xfwm4
-rw-r--r-- 1 root root 738 2018-02-27 06:13 ./source/xfce/xfwm4/slack-desc
-rw-r--r-- 1 root root 1013895 2021-01-09 18:02 ./source/xfce/xfwm4/xfwm4-4.16.1.tar.lz
-rwxr-xr-x 1 root root 4732 2021-02-13 05:32 ./source/xfce/xfwm4/xfwm4.SlackBuild
-rw-r--r-- 1 root root 65 2019-02-08 19:39 ./source/xfce/xfwm4/xfwm4.url
-rw-r--r-- 1 root root 886 2020-12-23 08:10 ./source/xfce/xfwm4/xinitrc.xfce
drwxr-xr-x 4 root root 4096 2020-12-30 21:23 ./source/y
-rw-r--r-- 1 root root 111 2022-02-07 20:58 ./source/y/FTBFSlog
drwxr-xr-x 3 root root 4096 2021-02-13 05:32 ./source/y/bsd-games
-rw-r--r-- 1 root root 1794497 2005-02-18 19:17 ./source/y/bsd-games/bsd-games-2.17.tar.lz
-rw-r--r-- 1 root root 164 1999-09-27 21:18 ./source/y/bsd-games/bsd-games-login-fortune.csh
-rw-r--r-- 1 root root 164 2010-05-11 19:26 ./source/y/bsd-games/bsd-games-login-fortune.sh
-rwxr-xr-x 1 root root 8135 2021-02-13 05:32 ./source/y/bsd-games/bsd-games.SlackBuild
-rw-r--r-- 1 root root 15107 2002-03-10 05:09 ./source/y/bsd-games/fortunes-linuxcookie.tar.gz
-rw-r--r-- 1 root root 104848 1993-10-25 00:02 ./source/y/bsd-games/hangman-words.gz
drwxr-xr-x 2 root root 4096 2019-02-17 22:03 ./source/y/bsd-games/patches
-rw-r--r-- 1 root root 2159 2019-02-17 21:20 ./source/y/bsd-games/patches/0001-Replace-getline-with-get_line.patch.gz
-rw-r--r-- 1 root root 336 2019-02-17 21:20 ./source/y/bsd-games/patches/0002-robots-Refresh-screen.patch.gz
-rw-r--r-- 1 root root 4582 2019-02-17 21:20 ./source/y/bsd-games/patches/0003-quiz-Update-presidents-capitals-fix-typos-in-murders.patch.gz
-rw-r--r-- 1 root root 386 2019-02-17 21:20 ./source/y/bsd-games/patches/0004-Define-__dead-for-GNU-GCC.patch.gz
-rw-r--r-- 1 root root 544 2019-02-17 21:20 ./source/y/bsd-games/patches/0005-rain-Update-default-delay.-Closes-579062.patch.gz
-rw-r--r-- 1 root root 5817 2019-02-17 21:20 ./source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch.gz
-rw-r--r-- 1 root root 431 2019-02-17 21:20 ./source/y/bsd-games/patches/0008-quiz-Add-answers-to-adults-babies.-Closes-659528.patch.gz
-rw-r--r-- 1 root root 679 2019-02-17 21:20 ./source/y/bsd-games/patches/0009-hangman-Error-out-on-1000-unsuitable-words.-Closes-6.patch.gz
-rw-r--r-- 1 root root 577 2019-02-17 21:20 ./source/y/bsd-games/patches/0010-Fix-typos-spotted-by-Lintian.patch.gz
-rw-r--r-- 1 root root 3152 2019-02-17 21:20 ./source/y/bsd-games/patches/0011-Fix-format-security-compiling-errors.patch.gz
-rw-r--r-- 1 root root 745 2019-02-17 21:20 ./source/y/bsd-games/patches/0012-Fix-include-stdio.h-C-incompatibility.patch.gz
-rw-r--r-- 1 root root 25237 2019-02-17 21:20 ./source/y/bsd-games/patches/0013-Update-acronyms.patch.gz
-rw-r--r-- 1 root root 7476 2019-02-17 21:20 ./source/y/bsd-games/patches/0015-primes-Update-to-NetBSD-CVS-2018-02-03.patch.gz
-rw-r--r-- 1 root root 791 2019-02-17 21:20 ./source/y/bsd-games/patches/0016-Better-explanation-how-to-read-the-documentation.patch.gz
-rw-r--r-- 1 root root 801 2019-02-17 21:20 ./source/y/bsd-games/patches/0017-hack-Fix-segv-when-i-inventory-done-after-load-from-.patch.gz
-rw-r--r-- 1 root root 563 2003-02-03 21:48 ./source/y/bsd-games/patches/bsd-games.config.params.diff.gz
-rw-r--r-- 1 root root 422 2019-02-17 21:39 ./source/y/bsd-games/patches/bsd-games.factor.no.ubig.diff.gz
-rw-r--r-- 1 root root 313 2019-02-17 22:07 ./source/y/bsd-games/patches/bsd-games.fortunepath.diff.gz
-rw-r--r-- 1 root root 1960 2006-09-09 00:47 ./source/y/bsd-games/patches/bsd-games.pom.diff.gz
-rw-r--r-- 1 root root 1065 2019-02-17 22:28 ./source/y/bsd-games/slack-desc
drwxr-xr-x 2 root root 4096 2022-09-06 18:27 ./source/y/nethack
-rw-r--r-- 1 root root 4023451 2020-03-08 18:44 ./source/y/nethack/nethack-366-src.tar.lz
-rwxr-xr-x 1 root root 5000 2022-09-06 18:27 ./source/y/nethack/nethack.SlackBuild
-rw-r--r-- 1 root root 59 2020-12-30 20:25 ./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 2022-12-16 04:50 ./testing
-rw-r--r-- 1 root root 552 2022-12-16 04:50 ./testing/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2022-12-16 04:50 ./testing/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 709 2022-12-16 04:50 ./testing/FILE_LIST
-rw-r--r-- 1 root root 14 2022-12-16 04:50 ./testing/MANIFEST.bz2
-rw-r--r-- 1 root root 224 2022-12-16 04:50 ./testing/PACKAGES.TXT
drwxr-xr-x 2 root root 4096 2022-12-15 20:48 ./testing/packages
drwxr-xr-x 2 root root 4096 2022-12-15 20:48 ./testing/source
drwxr-xr-x 2 root root 4096 2022-10-24 18:57 ./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
-rw-r--r-- 1 root root 574 2013-03-27 04:59 ./usb-and-pxe-installers/pxelinux.cfg_default
-rw-r--r-- 1 root root 57648128 2022-10-24 18:57 ./usb-and-pxe-installers/usbboot.img
-rw-r--r-- 1 root root 16314 2022-03-24 20:54 ./usb-and-pxe-installers/usbimg2disk.sh

View file

@ -1062,11 +1062,13 @@ gzip ./source/xap/pidgin/doinst.sh
gzip ./source/xap/NetworkManager-openvpn/openvpn.nobody.nogroup.diff
gzip ./source/xap/mozilla-firefox/firefox.moz_plugin_path.diff
gzip ./source/xap/mozilla-firefox/ff.ui.scrollToClick.diff
gzip ./source/xap/mozilla-firefox/8f889cf198ae7ffa9341423cb5a07ed39c07463a.patch
gzip ./source/xap/mozilla-firefox/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch
gzip ./source/xap/mozilla-firefox/arc4random_buf.glibc-2.36.diff
gzip ./source/xap/mozilla-firefox/mimeTypes.rdf
gzip ./source/xap/mozilla-firefox/mozilla-firefox-mimeTypes-fix.diff
gzip ./source/xap/mozilla-firefox/0027-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch
gzip ./source/xap/mozilla-firefox/regenerated-uniffi-toolkit-components.diff
gzip ./source/xap/mozilla-firefox/gkrust.a.no.networking.check.diff
gzip ./source/xap/electricsheep/electricsheep.mplayer.diff
gzip ./source/installer/sources/dropbear/doinst.sh
@ -1156,14 +1158,6 @@ 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/mozilla-firefox/firefox.moz_plugin_path.diff
gzip ./testing/source/mozilla-firefox/ff.ui.scrollToClick.diff
gzip ./testing/source/mozilla-firefox/build-deps/autoconf/autoconf-2.13-consolidated_fixes-1.patch
gzip ./testing/source/mozilla-firefox/arc4random_buf.glibc-2.36.diff
gzip ./testing/source/mozilla-firefox/mimeTypes.rdf
gzip ./testing/source/mozilla-firefox/mozilla-firefox-mimeTypes-fix.diff
gzip ./testing/source/mozilla-firefox/0027-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch
gzip ./testing/source/mozilla-firefox/gkrust.a.no.networking.check.diff
gzip ./pasture/source/php/php-fpm.conf.diff
gzip ./pasture/source/php/doinst.sh
gzip ./pasture/source/php/PHP-5.6.31-OpenSSL-1.1.0-compatibility-20170801.patch

View file

@ -0,0 +1,801 @@
From 8f889cf198ae7ffa9341423cb5a07ed39c07463a Mon Sep 17 00:00:00 2001
From: Mike Hommey <mh@glandium.org>
Date: Thu, 15 Dec 2022 16:36:52 +0900
Subject: [PATCH] Replace the use of Hash with a custom trait
The custom trait is expected to consistently give the result that Hash
gives on 64-bits little-endian, but on all platforms
---
uniffi_bindgen/src/interface/attributes.rs | 19 ++--
uniffi_bindgen/src/interface/callbacks.rs | 11 +-
uniffi_bindgen/src/interface/enum_.rs | 5 +-
uniffi_bindgen/src/interface/error.rs | 3 +-
uniffi_bindgen/src/interface/function.rs | 17 ++--
uniffi_bindgen/src/interface/literal.rs | 11 +-
uniffi_bindgen/src/interface/mod.rs | 28 +++---
uniffi_bindgen/src/interface/object.rs | 37 +++----
uniffi_bindgen/src/interface/record.rs | 5 +-
uniffi_bindgen/src/interface/types/mod.rs | 3 +-
uniffi_checksum_derive/Cargo.toml | 22 ++++
uniffi_checksum_derive/src/lib.rs | 111 +++++++++++++++++++++
uniffi_meta/Cargo.toml | 1 +
uniffi_meta/src/lib.rs | 89 +++++++++++++++--
14 files changed, 288 insertions(+), 74 deletions(-)
create mode 100644 uniffi_checksum_derive/Cargo.toml
create mode 100644 uniffi_checksum_derive/src/lib.rs
diff --git a/uniffi_bindgen/src/interface/attributes.rs b/uniffi_bindgen/src/interface/attributes.rs
index 49b885520..3c9bd522b 100644
--- a/uniffi_bindgen/src/interface/attributes.rs
+++ b/uniffi_bindgen/src/interface/attributes.rs
@@ -15,13 +15,14 @@
//! if we grow significantly more complicated attribute handling.
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
/// Represents an attribute parsed from UDL, like `[ByRef]` or `[Throws]`.
///
/// This is a convenience enum for parsing UDL attributes and erroring out if we encounter
/// any unsupported ones. These don't convert directly into parts of a `ComponentInterface`, but
/// may influence the properties of things like functions and arguments.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub(super) enum Attribute {
ByRef,
Enum,
@@ -119,7 +120,7 @@ where
/// Attributes that can be attached to an `enum` definition in the UDL.
/// There's only one case here: using `[Error]` to mark an enum as an error class.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct EnumAttributes(Vec<Attribute>);
impl EnumAttributes {
@@ -155,7 +156,7 @@ impl<T: TryInto<EnumAttributes, Error = anyhow::Error>> TryFrom<Option<T>> for E
///
/// This supports the `[Throws=ErrorName]` attribute for functions that
/// can produce an error.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct FunctionAttributes(Vec<Attribute>);
impl FunctionAttributes {
@@ -198,7 +199,7 @@ impl<T: TryInto<FunctionAttributes, Error = anyhow::Error>> TryFrom<Option<T>>
///
/// This supports the `[ByRef]` attribute for arguments that should be passed
/// by reference in the generated Rust scaffolding.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct ArgumentAttributes(Vec<Attribute>);
impl ArgumentAttributes {
@@ -233,7 +234,7 @@ impl<T: TryInto<ArgumentAttributes, Error = anyhow::Error>> TryFrom<Option<T>>
}
/// Represents UDL attributes that might appear on an `interface` definition.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct InterfaceAttributes(Vec<Attribute>);
impl InterfaceAttributes {
@@ -287,7 +288,7 @@ impl<T: TryInto<InterfaceAttributes, Error = anyhow::Error>> TryFrom<Option<T>>
///
/// This supports the `[Throws=ErrorName]` attribute for constructors that can produce
/// an error, and the `[Name=MethodName]` for non-default constructors.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct ConstructorAttributes(Vec<Attribute>);
impl ConstructorAttributes {
@@ -326,7 +327,7 @@ impl TryFrom<&weedle::attribute::ExtendedAttributeList<'_>> for ConstructorAttri
///
/// This supports the `[Throws=ErrorName]` attribute for methods that can produce
/// an error, and the `[Self=ByArc]` attribute for methods that take `Arc<Self>` as receiver.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct MethodAttributes(Vec<Attribute>);
impl MethodAttributes {
@@ -375,7 +376,7 @@ impl<T: TryInto<MethodAttributes, Error = anyhow::Error>> TryFrom<Option<T>> for
/// Actually we only support one of these right now, `[Self=ByArc]`.
/// We might add more in future, e.g. a `[Self=ByRef]` if there are cases
/// where we need to force the receiver to be taken by reference.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub(super) enum SelfType {
ByArc, // Method receiver is `Arc<Self>`.
}
@@ -398,7 +399,7 @@ impl TryFrom<&weedle::attribute::IdentifierOrString<'_>> for SelfType {
/// Represents UDL attributes that might appear on a typedef
///
/// This supports the `[External="crate_name"]` and `[Custom]` attributes for types.
-#[derive(Debug, Clone, Hash, Default)]
+#[derive(Debug, Clone, Checksum, Default)]
pub(super) struct TypedefAttributes(Vec<Attribute>);
impl TypedefAttributes {
diff --git a/uniffi_bindgen/src/interface/callbacks.rs b/uniffi_bindgen/src/interface/callbacks.rs
index 654652afe..886f02b29 100644
--- a/uniffi_bindgen/src/interface/callbacks.rs
+++ b/uniffi_bindgen/src/interface/callbacks.rs
@@ -33,9 +33,10 @@
//! # Ok::<(), anyhow::Error>(())
//! ```
-use std::hash::{Hash, Hasher};
+use std::hash::Hasher;
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::ffi::{FFIArgument, FFIFunction, FFIType};
use super::object::Method;
@@ -88,16 +89,16 @@ impl CallbackInterface {
}
}
-impl Hash for CallbackInterface {
- fn hash<H: Hasher>(&self, state: &mut H) {
+impl Checksum for CallbackInterface {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
// We don't include the FFIFunc in the hash calculation, because:
// - it is entirely determined by the other fields,
// so excluding it is safe.
// - its `name` property includes a checksum derived from the very
// hash value we're trying to calculate here, so excluding it
// avoids a weird circular depenendency in the calculation.
- self.name.hash(state);
- self.methods.hash(state);
+ self.name.checksum(state);
+ self.methods.checksum(state);
}
}
diff --git a/uniffi_bindgen/src/interface/enum_.rs b/uniffi_bindgen/src/interface/enum_.rs
index 04eba0d25..b8fe0ddd7 100644
--- a/uniffi_bindgen/src/interface/enum_.rs
+++ b/uniffi_bindgen/src/interface/enum_.rs
@@ -77,6 +77,7 @@
//! ```
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::record::Field;
use super::types::{Type, TypeIterator};
@@ -87,7 +88,7 @@ use super::{APIConverter, ComponentInterface};
///
/// Enums are passed across the FFI by serializing to a bytebuffer, with a
/// i32 indicating the variant followed by the serialization of each field.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub struct Enum {
pub(super) name: String,
pub(super) variants: Vec<Variant>,
@@ -174,7 +175,7 @@ impl APIConverter<Enum> for weedle::InterfaceDefinition<'_> {
/// Represents an individual variant in an Enum.
///
/// Each variant has a name and zero or more fields.
-#[derive(Debug, Clone, Default, Hash)]
+#[derive(Debug, Clone, Default, Checksum)]
pub struct Variant {
pub(super) name: String,
pub(super) fields: Vec<Field>,
diff --git a/uniffi_bindgen/src/interface/error.rs b/uniffi_bindgen/src/interface/error.rs
index 7e9b571a1..adae769f0 100644
--- a/uniffi_bindgen/src/interface/error.rs
+++ b/uniffi_bindgen/src/interface/error.rs
@@ -83,6 +83,7 @@
//! ```
use anyhow::Result;
+use uniffi_meta::Checksum;
use super::enum_::{Enum, Variant};
use super::types::{Type, TypeIterator};
@@ -94,7 +95,7 @@ use super::{APIConverter, ComponentInterface};
/// they're handled in the FFI very differently. We create them in `uniffi::call_with_result()` if
/// the wrapped function returns an `Err` value
/// struct and assign an integer error code to each variant.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub struct Error {
pub name: String,
enum_: Enum,
diff --git a/uniffi_bindgen/src/interface/function.rs b/uniffi_bindgen/src/interface/function.rs
index 4eff0795c..869c1b59b 100644
--- a/uniffi_bindgen/src/interface/function.rs
+++ b/uniffi_bindgen/src/interface/function.rs
@@ -32,9 +32,10 @@
//! # Ok::<(), anyhow::Error>(())
//! ```
use std::convert::TryFrom;
-use std::hash::{Hash, Hasher};
+use std::hash::Hasher;
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::ffi::{FFIArgument, FFIFunction};
use super::literal::{convert_default_value, Literal};
@@ -142,18 +143,18 @@ impl From<uniffi_meta::FnMetadata> for Function {
}
}
-impl Hash for Function {
- fn hash<H: Hasher>(&self, state: &mut H) {
+impl Checksum for Function {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
// We don't include the FFIFunc in the hash calculation, because:
// - it is entirely determined by the other fields,
// so excluding it is safe.
// - its `name` property includes a checksum derived from the very
// hash value we're trying to calculate here, so excluding it
// avoids a weird circular depenendency in the calculation.
- self.name.hash(state);
- self.arguments.hash(state);
- self.return_type.hash(state);
- self.attributes.hash(state);
+ self.name.checksum(state);
+ self.arguments.checksum(state);
+ self.return_type.checksum(state);
+ self.attributes.checksum(state);
}
}
@@ -185,7 +186,7 @@ impl APIConverter<Function> for weedle::namespace::OperationNamespaceMember<'_>
/// Represents an argument to a function/constructor/method call.
///
/// Each argument has a name and a type, along with some optional metadata.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub struct Argument {
pub(super) name: String,
pub(super) type_: Type,
diff --git a/uniffi_bindgen/src/interface/literal.rs b/uniffi_bindgen/src/interface/literal.rs
index 8b333c614..1aa1c8785 100644
--- a/uniffi_bindgen/src/interface/literal.rs
+++ b/uniffi_bindgen/src/interface/literal.rs
@@ -8,12 +8,13 @@
//! which appear in places such as default arguments.
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::types::Type;
// Represents a literal value.
// Used for e.g. default argument values.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub enum Literal {
Boolean(bool),
String(String),
@@ -35,13 +36,19 @@ pub enum Literal {
// Represent the radix of integer literal values.
// We preserve the radix into the generated bindings for readability reasons.
-#[derive(Debug, Clone, Copy, Hash)]
+#[derive(Debug, Clone, Copy)]
pub enum Radix {
Decimal = 10,
Octal = 8,
Hexadecimal = 16,
}
+impl Checksum for Radix {
+ fn checksum<H: ::core::hash::Hasher>(&self, state: &mut H) {
+ state.write(&(*self as u64).to_le_bytes());
+ }
+}
+
pub(super) fn convert_default_value(
default_value: &weedle::literal::DefaultValue<'_>,
type_: &Type,
diff --git a/uniffi_bindgen/src/interface/mod.rs b/uniffi_bindgen/src/interface/mod.rs
index 9aa92e9b0..eb40ea3fd 100644
--- a/uniffi_bindgen/src/interface/mod.rs
+++ b/uniffi_bindgen/src/interface/mod.rs
@@ -47,7 +47,7 @@
use std::{
collections::HashSet,
convert::TryFrom,
- hash::{Hash, Hasher},
+ hash::Hasher,
iter,
};
@@ -77,7 +77,7 @@ pub use record::{Field, Record};
pub mod ffi;
pub use ffi::{FFIArgument, FFIFunction, FFIType};
-use uniffi_meta::{MethodMetadata, ObjectMetadata};
+use uniffi_meta::{Checksum, MethodMetadata, ObjectMetadata};
/// The main public interface for this module, representing the complete details of an interface exposed
/// by a rust component and the details of consuming it via an extern-C FFI layer.
@@ -672,20 +672,16 @@ impl ComponentInterface {
}
}
-/// `ComponentInterface` structs can be hashed, but this is mostly a convenient way to
-/// produce a checksum of their contents. They're not really intended to live in a hashtable.
-impl Hash for ComponentInterface {
- fn hash<H: Hasher>(&self, state: &mut H) {
- // We can't hash `self.types`, but its contents are implied by the other fields
- // anyway, so it's safe to ignore it.
- self.uniffi_version.hash(state);
- self.namespace.hash(state);
- self.enums.hash(state);
- self.records.hash(state);
- self.functions.hash(state);
- self.objects.hash(state);
- self.callback_interfaces.hash(state);
- self.errors.hash(state);
+impl Checksum for ComponentInterface {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ Checksum::checksum(&self.uniffi_version, state);
+ Checksum::checksum(&self.namespace, state);
+ Checksum::checksum(&self.enums, state);
+ Checksum::checksum(&self.records, state);
+ Checksum::checksum(&self.functions, state);
+ Checksum::checksum(&self.objects, state);
+ Checksum::checksum(&self.callback_interfaces, state);
+ Checksum::checksum(&self.errors, state);
}
}
diff --git a/uniffi_bindgen/src/interface/object.rs b/uniffi_bindgen/src/interface/object.rs
index e366123b5..3bd6bfabe 100644
--- a/uniffi_bindgen/src/interface/object.rs
+++ b/uniffi_bindgen/src/interface/object.rs
@@ -58,10 +58,11 @@
//! ```
use std::convert::TryFrom;
-use std::hash::{Hash, Hasher};
+use std::hash::Hasher;
use std::{collections::HashSet, iter};
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::ffi::{FFIArgument, FFIFunction, FFIType};
use super::function::Argument;
@@ -190,17 +191,17 @@ impl Object {
}
}
-impl Hash for Object {
- fn hash<H: Hasher>(&self, state: &mut H) {
+impl Checksum for Object {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
// We don't include the FFIFunc in the hash calculation, because:
// - it is entirely determined by the other fields,
// so excluding it is safe.
// - its `name` property includes a checksum derived from the very
// hash value we're trying to calculate here, so excluding it
// avoids a weird circular depenendency in the calculation.
- self.name.hash(state);
- self.constructors.hash(state);
- self.methods.hash(state);
+ self.name.checksum(state);
+ self.constructors.checksum(state);
+ self.methods.checksum(state);
}
}
@@ -299,17 +300,17 @@ impl Constructor {
}
}
-impl Hash for Constructor {
- fn hash<H: Hasher>(&self, state: &mut H) {
+impl Checksum for Constructor {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
// We don't include the FFIFunc in the hash calculation, because:
// - it is entirely determined by the other fields,
// so excluding it is safe.
// - its `name` property includes a checksum derived from the very
// hash value we're trying to calculate here, so excluding it
// avoids a weird circular depenendency in the calculation.
- self.name.hash(state);
- self.arguments.hash(state);
- self.attributes.hash(state);
+ self.name.checksum(state);
+ self.arguments.checksum(state);
+ self.attributes.checksum(state);
}
}
@@ -450,19 +451,19 @@ impl From<uniffi_meta::MethodMetadata> for Method {
}
}
-impl Hash for Method {
- fn hash<H: Hasher>(&self, state: &mut H) {
+impl Checksum for Method {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
// We don't include the FFIFunc in the hash calculation, because:
// - it is entirely determined by the other fields,
// so excluding it is safe.
// - its `name` property includes a checksum derived from the very
// hash value we're trying to calculate here, so excluding it
// avoids a weird circular depenendency in the calculation.
- self.name.hash(state);
- self.object_name.hash(state);
- self.arguments.hash(state);
- self.return_type.hash(state);
- self.attributes.hash(state);
+ self.name.checksum(state);
+ self.object_name.checksum(state);
+ self.arguments.checksum(state);
+ self.return_type.checksum(state);
+ self.attributes.checksum(state);
}
}
diff --git a/uniffi_bindgen/src/interface/record.rs b/uniffi_bindgen/src/interface/record.rs
index c55200eb1..dd6a48e2c 100644
--- a/uniffi_bindgen/src/interface/record.rs
+++ b/uniffi_bindgen/src/interface/record.rs
@@ -45,6 +45,7 @@
//! ```
use anyhow::{bail, Result};
+use uniffi_meta::Checksum;
use super::types::{Type, TypeIterator};
use super::{
@@ -58,7 +59,7 @@ use super::{APIConverter, ComponentInterface};
/// In the FFI these are represented as a byte buffer, which one side explicitly
/// serializes the data into and the other serializes it out of. So I guess they're
/// kind of like "pass by clone" values.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub struct Record {
pub(super) name: String,
pub(super) fields: Vec<Field>,
@@ -109,7 +110,7 @@ impl APIConverter<Record> for weedle::DictionaryDefinition<'_> {
}
// Represents an individual field on a Record.
-#[derive(Debug, Clone, Hash)]
+#[derive(Debug, Clone, Checksum)]
pub struct Field {
pub(super) name: String,
pub(super) type_: Type,
diff --git a/uniffi_bindgen/src/interface/types/mod.rs b/uniffi_bindgen/src/interface/types/mod.rs
index 8a0131c9f..65426926f 100644
--- a/uniffi_bindgen/src/interface/types/mod.rs
+++ b/uniffi_bindgen/src/interface/types/mod.rs
@@ -25,6 +25,7 @@ use std::{collections::hash_map::Entry, collections::BTreeSet, collections::Hash
use anyhow::{bail, Result};
use heck::ToUpperCamelCase;
+use uniffi_meta::Checksum;
use super::ffi::FFIType;
@@ -36,7 +37,7 @@ pub(super) use resolver::{resolve_builtin_type, TypeResolver};
/// Represents all the different high-level types that can be used in a component interface.
/// At this level we identify user-defined types by name, without knowing any details
/// of their internal structure apart from what type of thing they are (record, enum, etc).
-#[derive(Debug, Clone, Eq, PartialEq, Hash, Ord, PartialOrd)]
+#[derive(Debug, Clone, Eq, PartialEq, Checksum, Ord, PartialOrd)]
pub enum Type {
// Primitive types.
UInt8,
diff --git a/uniffi_checksum_derive/Cargo.toml b/uniffi_checksum_derive/Cargo.toml
new file mode 100644
index 000000000..a04c31aab
--- /dev/null
+++ b/uniffi_checksum_derive/Cargo.toml
@@ -0,0 +1,22 @@
+[package]
+name = "uniffi_checksum_derive"
+version = "0.21.0"
+authors = ["Firefox Sync Team <sync-team@mozilla.com>"]
+description = "a multi-language bindings generator for rust (checksum custom derive)"
+documentation = "https://mozilla.github.io/uniffi-rs"
+homepage = "https://mozilla.github.io/uniffi-rs"
+repository = "https://github.com/mozilla/uniffi-rs"
+license = "MPL-2.0"
+edition = "2021"
+keywords = ["ffi", "bindgen"]
+
+[lib]
+proc-macro = true
+
+[dependencies]
+quote = "1.0"
+syn = { version = "1.0", features = ["derive"] }
+
+[features]
+default = []
+nightly = []
diff --git a/uniffi_checksum_derive/src/lib.rs b/uniffi_checksum_derive/src/lib.rs
new file mode 100644
index 000000000..c79064d8b
--- /dev/null
+++ b/uniffi_checksum_derive/src/lib.rs
@@ -0,0 +1,111 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+#![cfg_attr(feature = "nightly", feature(proc_macro_expand))]
+
+//! Custom derive for uniffi_meta::Checksum
+
+use proc_macro::TokenStream;
+use quote::{format_ident, quote};
+use syn::{parse_macro_input, Data, DeriveInput, Fields, Index};
+
+#[proc_macro_derive(Checksum)]
+pub fn checksum_derive(input: TokenStream) -> TokenStream {
+ let input: DeriveInput = parse_macro_input!(input);
+
+ let name = input.ident;
+
+ let (impl_generics, ty_generics, where_clause) = input.generics.split_for_impl();
+
+ let code = match input.data {
+ Data::Enum(enum_)
+ if enum_.variants.len() == 1
+ && enum_
+ .variants
+ .iter()
+ .all(|variant| matches!(variant.fields, Fields::Unit)) =>
+ {
+ quote!()
+ }
+ Data::Enum(enum_) => {
+ let match_inner = enum_.variants.iter().enumerate().map(|(num, variant)| {
+ let num = num as u64;
+ let ident = &variant.ident;
+ if variant.discriminant.is_some() {
+ panic!("#[derive(Checksum)] doesn't support explicit discriminants in enums");
+ }
+ let discriminant = quote! { state.write(&#num.to_le_bytes()) };
+ match &variant.fields {
+ Fields::Unnamed(fields) => {
+ let field_idents = fields
+ .unnamed
+ .iter()
+ .enumerate()
+ .map(|(num, _)| format_ident!("__self_{}", num))
+ .collect::<Vec<_>>();
+ let field_stmts = field_idents
+ .iter()
+ .map(|ident| quote! { Checksum::checksum(#ident, state); });
+ quote! {
+ Self::#ident(#(#field_idents,)*) => {
+ #discriminant;
+ #(#field_stmts)*
+ }
+ }
+ }
+ Fields::Named(fields) => {
+ let field_idents = fields
+ .named
+ .iter()
+ .map(|field| field.ident.as_ref().unwrap())
+ .collect::<Vec<_>>();
+ let field_stmts = field_idents
+ .iter()
+ .map(|ident| quote! { Checksum::checksum(#ident, state); });
+ quote! {
+ Self::#ident { #(#field_idents,)* } => {
+ #discriminant;
+ #(#field_stmts)*
+ }
+ }
+ }
+ Fields::Unit => quote! { Self::#ident => #discriminant, },
+ }
+ });
+ quote! {
+ match self {
+ #(#match_inner)*
+ }
+ }
+ }
+ Data::Struct(struct_) => {
+ let stmts =
+ struct_
+ .fields
+ .iter()
+ .enumerate()
+ .map(|(num, field)| match field.ident.as_ref() {
+ Some(ident) => quote! { Checksum::checksum(&self.#ident, state); },
+ None => {
+ let i = Index::from(num);
+ quote! { Checksum::checksum(&self.#i, state); }
+ }
+ });
+ quote! {
+ #(#stmts)*
+ }
+ }
+ Data::Union(_) => {
+ panic!("#[derive(Checksum)] is not supported for unions");
+ }
+ };
+
+ quote! {
+ impl #impl_generics Checksum for #name #ty_generics #where_clause {
+ fn checksum<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
+ #code
+ }
+ }
+ }
+ .into()
+}
diff --git a/uniffi_meta/Cargo.toml b/uniffi_meta/Cargo.toml
index ca33156df..358b6ef4c 100644
--- a/uniffi_meta/Cargo.toml
+++ b/uniffi_meta/Cargo.toml
@@ -10,3 +10,4 @@ keywords = ["ffi", "bindgen"]
[dependencies]
serde = { version = "1.0.136", features = ["derive"] }
+uniffi_checksum_derive = { version = "0.21.0", path = "../uniffi_checksum_derive" }
diff --git a/uniffi_meta/src/lib.rs b/uniffi_meta/src/lib.rs
index 6cfa733e9..2555ae19c 100644
--- a/uniffi_meta/src/lib.rs
+++ b/uniffi_meta/src/lib.rs
@@ -6,10 +6,79 @@ use std::{
collections::hash_map::DefaultHasher,
hash::{Hash, Hasher},
};
+pub use uniffi_checksum_derive::Checksum;
use serde::{Deserialize, Serialize};
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+pub trait Checksum {
+ fn checksum<H: Hasher>(&self, state: &mut H);
+}
+
+impl Checksum for bool {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ Hash::hash(self, state);
+ }
+}
+
+impl Checksum for u64 {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ state.write(&self.to_le_bytes());
+ }
+}
+
+impl Checksum for i64 {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ state.write(&self.to_le_bytes());
+ }
+}
+
+impl<T: Checksum> Checksum for Box<T> {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ (**self).checksum(state)
+ }
+}
+
+impl<T: Checksum> Checksum for [T] {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ state.write(&(self.len() as u64).to_le_bytes());
+ for item in self {
+ Checksum::checksum(item, state);
+ }
+ }
+}
+
+impl<T: Checksum> Checksum for Vec<T> {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ Checksum::checksum(&**self, state);
+ }
+}
+
+impl<T: Checksum> Checksum for Option<T> {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ match self {
+ None => state.write(&0u64.to_le_bytes()),
+ Some(value) => {
+ state.write(&1u64.to_le_bytes());
+ Checksum::checksum(value, state)
+ }
+ }
+ }
+}
+
+impl Checksum for str {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ state.write(self.as_bytes());
+ state.write_u8(0xff);
+ }
+}
+
+impl Checksum for String {
+ fn checksum<H: Hasher>(&self, state: &mut H) {
+ (**self).checksum(state)
+ }
+}
+
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct FnMetadata {
pub module_path: Vec<String>,
pub name: String,
@@ -23,7 +92,7 @@ impl FnMetadata {
}
}
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct MethodMetadata {
pub module_path: Vec<String>,
pub self_name: String,
@@ -39,14 +108,14 @@ impl MethodMetadata {
}
}
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct FnParamMetadata {
pub name: String,
#[serde(rename = "type")]
pub ty: Type,
}
-#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Checksum, Deserialize, Serialize)]
pub enum Type {
U8,
U16,
@@ -78,21 +147,21 @@ pub enum Type {
},
}
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct RecordMetadata {
pub module_path: Vec<String>,
pub name: String,
pub fields: Vec<FieldMetadata>,
}
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct FieldMetadata {
pub name: String,
#[serde(rename = "type")]
pub ty: Type,
}
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub struct ObjectMetadata {
pub module_path: Vec<String>,
pub name: String,
@@ -112,9 +181,9 @@ impl ObjectMetadata {
///
/// To be used as a checksum of FFI symbols, as a safeguard against different UniFFI versions being
/// used for scaffolding and bindings generation.
-pub fn checksum<T: Hash>(val: &T) -> u16 {
+pub fn checksum<T: Checksum>(val: &T) -> u16 {
let mut hasher = DefaultHasher::new();
- val.hash(&mut hasher);
+ val.checksum(&mut hasher);
(hasher.finish() & 0x000000000000FFFF) as u16
}
@@ -124,7 +193,7 @@ pub fn fn_ffi_symbol_name(mod_path: &[String], name: &str, checksum: u16) -> Str
}
/// Enum covering all the possible metadata types
-#[derive(Clone, Debug, Hash, Deserialize, Serialize)]
+#[derive(Clone, Debug, Checksum, Deserialize, Serialize)]
pub enum Metadata {
Func(FnMetadata),
Method(MethodMetadata),

View file

@ -317,6 +317,28 @@ fi
# Add the $OPTIONS above to .mozconfig:
for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
# Patch to match ./toolkit/components/ that have been regenerated with:
# ./mach uniffi generate
# This works around a build failure with 108.0 on i686. It also seems to break
# the previously working x86_64 build, so we'll only apply it for i686.
# Hopefully we can drop this when 108.0.1 ships.
if [ "$ARCH" = "i686" ]; then
zcat $CWD/regenerated-uniffi-toolkit-components.diff.gz | patch -p1 --verbose || exit 1
fi
# This is the upstream patch to fix the above issue, but unfortunately it
# doesn't apply completely and also causes an additional crate to be downloaded
# at build time, which won't do. I'll leave it here for reference in case
# anyone is interested, but we'll use the above kludge instead and wait for
# a proper fixed release from upstream for this to be correctly handled.
#
# [PATCH] Replace the use of Hash with a custom trait
# The custom trait is expected to consistently give the result that Hash
# gives on 64-bits little-endian, but on all platforms
#( cd ./third_party/rust
# zcat $CWD/8f889cf198ae7ffa9341423cb5a07ed39c07463a.patch.gz | patch -p1 --verbose || exit 1
#)
# https://developer.mozilla.org/en-US/docs/Building_with_Profile-Guided_Optimization
# Thanks to ArchLinux and Gentoo for the additional hints.
if [ "$PGO" = "yes" ]; then
@ -349,38 +371,25 @@ rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/firefox-devel-$RELEASEVER
# Nor these:
rm -rf $PKG/usr/include
( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER
#mv defaults/profile/mimeTypes.rdf defaults/profile/mimeTypes.rdf.orig || exit 1
if [ -d defaults/profile ]; then
zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1
fi
# OK, this patch is useless on 7.x. We'll float without it and see what happens.
# Perhaps it won't make a difference or should be worked around elsewhere.
#zcat $CWD/firefox.moz_plugin_path.diff.gz \
# | sed -e "s#usr/lib#usr/lib${LIBDIRSUFFIX}#g" \
# | patch -p1 --verbose --backup --suffix=.orig || exit 1
# Clean up if the above patch was successful:
#rm -f firefox.orig
) || exit
# 2022-12, COMMENTING OUT AS OBSOLETE
#( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox
# #mv defaults/profile/mimeTypes.rdf defaults/profile/mimeTypes.rdf.orig || exit 1
# if [ -d defaults/profile ]; then
# zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1
# fi
# # OK, this patch is useless on 7.x. We'll float without it and see what happens.
# # Perhaps it won't make a difference or should be worked around elsewhere.
# #zcat $CWD/firefox.moz_plugin_path.diff.gz \
# # | sed -e "s#usr/lib#usr/lib${LIBDIRSUFFIX}#g" \
# # | patch -p1 --verbose --backup --suffix=.orig || exit 1
# # Clean up if the above patch was successful:
# #rm -f firefox.orig
#) || exit
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
mkdir -p $PKG/usr/share/applications
cat $CWD/mozilla-firefox.desktop > $PKG/usr/share/applications/mozilla-firefox.desktop
# These files/directories are usually created if Firefox is run as root,
# which on many systems might (and possibly should) be never. Therefore, if we
# don't see them we'll put stubs in place to prevent startup errors.
( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER
if [ -d extensions/talkback\@mozilla.org ]; then
if [ ! -r extensions/talkback\@mozilla.org/chrome.manifest ]; then
echo > extensions/talkback\@mozilla.org/chrome.manifest
fi
fi
if [ ! -d updates ]; then
mkdir -p updates/0
fi
)
# Need some default icons in the right place:
for i in 16 22 24 32 48 256; do
install -m 0644 -D browser/branding/official/default${i}.png \

File diff suppressed because it is too large Load diff

View file

@ -317,20 +317,6 @@ mkdir -p $PKG/usr/share/pixmaps
# Symlinked below.
#cat $CWD/thunderbird.png > $PKG/usr/share/pixmaps/thunderbird.png
# These files/directories are usually created if Thunderbird is run as root,
# which on many systems might (and possibly should) be never. Therefore, if we
# don't see them we'll put stubs in place to prevent startup errors.
( cd $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$RELEASEVER
if [ -d extensions/talkback\@mozilla.org ]; then
if [ ! -r extensions/talkback\@mozilla.org/chrome.manifest ]; then
echo > extensions/talkback\@mozilla.org/chrome.manifest
fi
fi
if [ ! -d updates ]; then
mkdir -p updates/0
fi
)
# Need some default icons in the right place:
for i in 16 22 24 32 48 256; do
install -m 0644 -D comm/mail/branding/thunderbird/default${i}.png \

View file

@ -1,34 +0,0 @@
From 8ae6defd8340a13d88977d9973abd79495a99fcd Mon Sep 17 00:00:00 2001
From: Thomas Deutschmann <whissi@gentoo.org>
Date: Sat, 29 Aug 2020 22:30:59 +0200
Subject: [PATCH 27/30] LTO: Only enable LTO for Rust when complete build uses
LTO
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
---
config/makefiles/rust.mk | 2 ++
1 file changed, 2 insertions(+)
diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk
index 92f3070a85..0d72914c43 100644
--- a/config/makefiles/rust.mk
+++ b/config/makefiles/rust.mk
@@ -64,6 +64,7 @@ endif
# These flags are passed via `cargo rustc` and only apply to the final rustc
# invocation (i.e., only the top-level crate, not its dependencies).
cargo_rustc_flags = $(CARGO_RUSTCFLAGS)
+ifdef MOZ_LTO
ifndef DEVELOPER_OPTIONS
ifndef MOZ_DEBUG_RUST
# Enable link-time optimization for release builds, but not when linking
@@ -77,6 +78,7 @@ RUSTFLAGS += -Cembed-bitcode=yes
endif
endif
endif
+endif
ifdef CARGO_INCREMENTAL
export CARGO_INCREMENTAL
--
2.31.0

View file

@ -1,18 +0,0 @@
--- ./ipc/chromium/src/third_party/libevent/arc4random.c.orig 2022-08-04 14:57:57.000000000 -0500
+++ ./ipc/chromium/src/third_party/libevent/arc4random.c 2022-08-06 14:40:21.569033657 -0500
@@ -484,6 +484,7 @@
}
#endif
+#if 0
ARC4RANDOM_EXPORT void
arc4random_buf(void *buf_, size_t n)
{
@@ -497,6 +498,7 @@
}
ARC4_UNLOCK_();
}
+#endif
#ifndef ARC4RANDOM_NOUNIFORM
/*

View file

@ -1,35 +0,0 @@
#!/bin/bash
# Copyright 2019 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.
# Clear out any existing build deps:
rm -rf $TMP/mozilla-firefox-build-deps
mkdir -p $TMP/mozilla-firefox-build-deps
# This will be at the beginning of the $PATH, so protect against nonsense
# happening in /tmp:
chmod 700 $TMP/mozilla-firefox-build-deps
if /bin/ls build-deps*.txz 1> /dev/null 2> /dev/null ; then # use prebuilt
( cd $TMP/mozilla-firefox-build-deps ; tar xf $CWD/build-deps*.txz )
else
# We need to use the incredibly ancient autoconf-2.13 for this :/
( cd $CWD/build-deps/autoconf ; ./autoconf.build ) || exit 1
fi

View file

@ -1,504 +0,0 @@
Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2016-06-11
Initial Package Version: 2.13
Upstream Status: Version is historic and unmaintained.
Origin: Found at fedora, plus fixes for LFS.
Description: All of the patches currently used by fedora, except for
the patch which ensures gawk is used in preference to mawk (we do not
install mawk). For LFS: we put mktemp in /usr/bin not /bin, remove
the install-info target because that will overwrite standards.info
with an old version (fedora always use a DESTDIR), and change the
man and info dirs to ${datadir}/ i.e. /usr/share (an empty /usr/info
will otherwise be created).
diff -Naur a/acgeneral.m4 b/acgeneral.m4
--- a/acgeneral.m4 1999-01-05 13:27:37.000000000 +0000
+++ b/acgeneral.m4 2016-06-11 00:18:24.429043947 +0100
@@ -1817,10 +1817,6 @@
[cat > conftest.$ac_ext <<EOF
[#]line __oline__ "configure"
#include "confdefs.h"
-ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
-extern "C" void exit(int);
-#endif
-])dnl
[$1]
EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1988,12 +1984,12 @@
AC_MSG_CHECKING(size of $1)
AC_CACHE_VAL(AC_CV_NAME,
[AC_TRY_RUN([#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof($1));
- exit(0);
+ return(0);
}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnl
AC_MSG_RESULT($AC_CV_NAME)
AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME)
@@ -2160,20 +2156,38 @@
dnl AC_OUTPUT_MAKE_DEFS()
define(AC_OUTPUT_MAKE_DEFS,
[# Transform confdefs.h into DEFS.
-dnl Using a here document instead of a string reduces the quoting nightmare.
# Protect against shell expansion while executing Makefile rules.
# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
+#
+# If the first sed substitution is executed (which looks for macros that
+# take arguments), then we branch to the quote section. Otherwise,
+# look for a macro that doesn't take arguments.
+cat >confdef2opt.sed <<\_ACEOF
changequote(<<, >>)dnl
-s%<<#define>> \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~<<#>>$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
+t clear
+: clear
+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
+t quote
+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
+t quote
+d
+: quote
+s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
+s,\[,\\&,g
+s,\],\\&,g
+s,\$,$$,g
+p
changequote([, ])dnl
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
+_ACEOF
+# We use echo to avoid assuming a particular line-breaking character.
+# The extra dot is to prevent the shell from consuming trailing
+# line-breaks from the sub-command output. A line-break within
+# single-quotes doesn't work because, if this script is created in a
+# platform that uses two characters for line-breaks (e.g., DOS), tr
+# would break.
+ac_LF_and_DOT=`echo; echo .`
+DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
+rm -f confdef2opt.sed
])
dnl Do the variable substitutions to create the Makefiles or whatever.
diff -Naur a/acspecific.m4 b/acspecific.m4
--- a/acspecific.m4 1999-01-05 13:27:52.000000000 +0000
+++ b/acspecific.m4 2016-06-11 00:18:17.533078644 +0100
@@ -152,8 +152,41 @@
CXXFLAGS=
fi
fi
+
+AC_PROG_CXX_EXIT_DECLARATION
])
+
+# AC_PROG_CXX_EXIT_DECLARATION
+# -----------------------------
+# Find a valid prototype for exit and declare it in confdefs.h.
+AC_DEFUN(AC_PROG_CXX_EXIT_DECLARATION,
+[for ac_declaration in \
+ ''\
+ '#include <stdlib.h>' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ AC_TRY_COMPILE([#include <stdlib.h>
+$ac_declaration],
+ [exit (42);],
+ [],
+ [continue])
+ AC_TRY_COMPILE([$ac_declaration],
+ [exit (42);],
+ [break])
+done
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+])# AC_PROG_CXX_EXIT_DECLARATION
+
+
dnl Determine a Fortran 77 compiler to use. If `F77' is not already set
dnl in the environment, check for `g77', `f77' and `f2c', in that order.
dnl Set the output variable `F77' to the name of the compiler found.
@@ -1010,7 +1043,7 @@
])
AC_DEFUN(AC_FUNC_MMAP,
-[AC_CHECK_HEADERS(unistd.h)
+[AC_CHECK_HEADERS(stdlib.h unistd.h sys/stat.h sys/types.h)
AC_CHECK_FUNCS(getpagesize)
AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap_fixed_mapped,
[AC_TRY_RUN([
@@ -1039,11 +1072,24 @@
#include <fcntl.h>
#include <sys/mman.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+
+#if HAVE_STDLIB_H
+# include <stdlib.h>
+#endif
+
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
/* This mess was copied from the GNU getpagesize.h. */
#ifndef HAVE_GETPAGESIZE
-# ifdef HAVE_UNISTD_H
-# include <unistd.h>
-# endif
/* Assume that all systems that can run configure have sys/param.h. */
# ifndef HAVE_SYS_PARAM_H
@@ -1373,6 +1419,8 @@
r.ru_majflt = r.ru_minflt = 0;
switch (fork()) {
case 0: /* Child. */
+ /* Unless we actually _do_ something, the kernel sometimes doesn't chalk up any system time to this process. */
+ if(fork()) { i = 123; wait(NULL); } else { i = 234; exit(0); }
sleep(1); /* Give up the CPU. */
_exit(0);
case -1: _exit(0); /* What can we do? */
diff -Naur a/autoconf.sh b/autoconf.sh
--- a/autoconf.sh 1999-01-05 13:27:53.000000000 +0000
+++ b/autoconf.sh 2016-06-11 00:22:17.351872133 +0100
@@ -45,20 +45,20 @@
esac
: ${TMPDIR=/tmp}
-tmpout=${TMPDIR}/acout.$$
+tmpout=`/usr/bin/mktemp ${TMPDIR}/acout.XXXXXX`
localdir=
show_version=no
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* )
- echo "${usage}" 1>&2; exit 0 ;;
+ echo "${usage}" 1>&2; rm -f $tmpout ; exit 0 ;;
--localdir=* | --l*=* )
localdir="`echo \"${1}\" | sed -e 's/^[^=]*=//'`"
shift ;;
-l | --localdir | --l*)
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; }
localdir="${1}"
shift ;;
--macrodir=* | --m*=* )
@@ -66,7 +66,7 @@
shift ;;
-m | --macrodir | --m* )
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; }
AC_MACRODIR="${1}"
shift ;;
--version | --v* )
@@ -76,7 +76,7 @@
- ) # Use stdin as input.
break ;;
-* )
- echo "${usage}" 1>&2; exit 1 ;;
+ echo "${usage}" 1>&2; rm -f $tmpout; exit 1 ;;
* )
break ;;
esac
@@ -86,23 +86,25 @@
version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \
$AC_MACRODIR/acgeneral.m4`
echo "Autoconf version $version"
+ rm -f $tmpout
exit 0
fi
case $# in
0) infile=configure.in ;;
1) infile="$1" ;;
- *) echo "$usage" >&2; exit 1 ;;
+ *) echo "$usage" >&2; rm -f $tmpout; exit 1 ;;
esac
trap 'rm -f $tmpin $tmpout; exit 1' 1 2 15
-tmpin=${TMPDIR}/acin.$$ # Always set this, to avoid bogus errors from some rm's.
+tmpin=`/usr/bin/mktemp ${TMPDIR}/acin.XXXXXX`
+# Always set this, to avoid bogus errors from some rm's.
if test z$infile = z-; then
infile=$tmpin
- cat > $infile
elif test ! -r "$infile"; then
echo "autoconf: ${infile}: No such file or directory" >&2
+ rm -f $tmpin $tmpout
exit 1
fi
@@ -111,6 +113,8 @@
else
use_localdir=
fi
+# Make sure we don't leave those around - they are annoying
+trap 'rm -f $tmpin $tmpout' 0
# Use the frozen version of Autoconf if available.
r= f=
@@ -118,7 +122,7 @@
case `$M4 --help < /dev/null 2>&1` in
*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
*traditional*) ;;
-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
+*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin $tmpout; exit 1 ;;
esac
$M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
@@ -154,6 +158,6 @@
/__oline__/s/^\([0-9][0-9]*\):\(.*\)__oline__/\2\1/
' >&4
-rm -f $tmpout
+rm -f $tmpout $tmpin
exit $status
diff -Naur a/autoconf.texi b/autoconf.texi
--- a/autoconf.texi 1999-01-05 13:28:37.000000000 +0000
+++ b/autoconf.texi 2016-06-11 00:18:46.360933604 +0100
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
-@setfilename autoconf.info
-@settitle Autoconf
+@setfilename autoconf.info
+@settitle Autoconf
@c For double-sided printing, uncomment:
@c @setchapternewpage odd
@c %**end of header
@@ -17,7 +17,8 @@
@ifinfo
@format
START-INFO-DIR-ENTRY
-* Autoconf: (autoconf). Create source code configuration scripts.
+* Autoconf: (autoconf). Create source code configuration scripts.
+ This is a legacy version of autoconf.
END-INFO-DIR-ENTRY
@end format
diff -Naur a/autoheader.sh b/autoheader.sh
--- a/autoheader.sh 1999-01-05 13:28:39.000000000 +0000
+++ b/autoheader.sh 2016-06-11 00:22:17.351872133 +0100
@@ -194,9 +194,9 @@
# Some fgrep's have limits on the number of lines that can be in the
# pattern on the command line, so use a temporary file containing the
# pattern.
- (fgrep_tmp=${TMPDIR-/tmp}/autoh$$
+ (fgrep_tmp=`/usr/bin/mktemp ${TMPDIR-/tmp}/autoh$$.XXXXXX`
trap "rm -f $fgrep_tmp; exit 1" 1 2 15
- cat > $fgrep_tmp <<EOF
+ cat >> $fgrep_tmp <<EOF
$syms
EOF
fgrep -f $fgrep_tmp
diff -Naur a/autoupdate.sh b/autoupdate.sh
--- a/autoupdate.sh 1999-01-05 13:28:42.000000000 +0000
+++ b/autoupdate.sh 2016-06-11 00:23:19.151561252 +0100
@@ -26,7 +26,7 @@
Usage: autoupdate [-h] [--help] [-m dir] [--macrodir=dir]
[--version] [template-file]"
-sedtmp=/tmp/acups.$$
+sedtmp=`/usr/bin/mktemp /tmp/acups.XXXXXX`
# For debugging.
#sedtmp=/tmp/acups
show_version=no
@@ -35,13 +35,13 @@
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* )
- echo "${usage}" 1>&2; exit 0 ;;
+ echo "${usage}" 1>&2; rm -f $sedtmp; exit 0 ;;
--macrodir=* | --m*=* )
AC_MACRODIR="`echo \"${1}\" | sed -e 's/^[^=]*=//'`"
shift ;;
-m | --macrodir | --m* )
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $sedtmp; exit 1; }
AC_MACRODIR="${1}"
shift ;;
--version | --versio | --versi | --vers)
@@ -51,7 +51,7 @@
- ) # Use stdin as input.
break ;;
-* )
- echo "${usage}" 1>&2; exit 1 ;;
+ echo "${usage}" 1>&2; rm -f $sedtmp; exit 1 ;;
* )
break ;;
esac
@@ -61,6 +61,7 @@
version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \
$AC_MACRODIR/acgeneral.m4`
echo "Autoconf version $version"
+ rm -f $sedtmp
exit 0
fi
@@ -68,6 +69,7 @@
tmpout=acupo.$$
trap 'rm -f $sedtmp $tmpout; exit 1' 1 2 15
+trap 'rm -f $sedtmp' 0
case $# in
0) infile=configure.in; out="> $tmpout"
# Make sure $infile can be read, and $tmpout has the same permissions.
diff -Naur a/configure b/configure
--- a/configure 1999-01-05 13:28:57.000000000 +0000
+++ b/configure 2016-06-11 00:50:57.771231914 +0100
@@ -43,8 +43,8 @@
libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
+infodir='${datadir}/info'
+mandir='${datadir}/man'
# Initialize some other variables.
subdirs=
diff -Naur a/Makefile.in b/Makefile.in
--- a/Makefile.in 1999-01-05 13:27:16.000000000 +0000
+++ b/Makefile.in 2016-06-11 00:29:34.005678107 +0100
@@ -49,7 +49,7 @@
# Directory in which to install library files.
datadir = @datadir@
-acdatadir = $(datadir)/autoconf
+acdatadir = $(datadir)/autoconf-2.13
# Directory in which to install documentation info files.
infodir = @infodir@
@@ -68,8 +68,8 @@
DISTFILES = AUTHORS COPYING ChangeLog ChangeLog.1 INSTALL \
Makefile.in NEWS README TODO $(M4FILES) \
acconfig.h acfunctions acheaders acidentifiers \
- acmakevars acprograms autoconf.info* \
- autoconf.sh autoconf.texi install.texi \
+ acmakevars acprograms autoconf.info* \
+ autoconf.sh autoconf.texi install.texi \
autoheader.sh autoscan.pl autoreconf.sh autoupdate.sh ifnames.sh \
config.guess config.sub configure configure.in \
install-sh mkinstalldirs texinfo.tex \
@@ -106,11 +106,11 @@
autoconf.m4f: autoconf.m4 acgeneral.m4 acspecific.m4 acoldnames.m4
autoheader.m4f: autoheader.m4 acgeneral.m4 acspecific.m4 acoldnames.m4
-info: autoconf.info @standards_info@ INSTALL
+info: autoconf.info @standards_info@ INSTALL
# Use --no-split to avoid creating filenames > 14 chars.
-autoconf.info: autoconf.texi install.texi
- $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
+autoconf.info: autoconf.texi install.texi
+ $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
INSTALL: install.texi
$(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \
@@ -121,8 +121,8 @@
dvi: autoconf.dvi @standards_dvi@
-autoconf.dvi: autoconf.texi
- $(TEXI2DVI) $(srcdir)/autoconf.texi
+autoconf.dvi: autoconf.texi
+ $(TEXI2DVI) $(srcdir)/autoconf.texi
standards.dvi: standards.texi make-stds.texi
$(TEXI2DVI) $(srcdir)/standards.texi
@@ -137,35 +137,35 @@
cd testsuite && ${MAKE} AUTOCONF=${bindir}/autoconf $@
installdirs:
- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir)
+ $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(infodir) $(DESTDIR)/$(acdatadir)
-install: all $(M4FILES) acconfig.h installdirs install-info
+install: all $(M4FILES) acconfig.h installdirs
for p in $(ASCRIPTS); do \
- $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \
done
for i in $(M4FROZEN); do \
- $(INSTALL_DATA) $$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(acdatadir)/$$i; \
done
for i in $(M4FILES) acconfig.h; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done
-if test -f autoscan; then \
- $(INSTALL_PROGRAM) autoscan $(bindir)/`echo autoscan|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) autoscan $(DESTDIR)/$(bindir)/`echo autoscan|sed '$(transform)'`; \
for i in acfunctions acheaders acidentifiers acprograms \
acmakevars; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done; \
else :; fi
# Don't cd, to avoid breaking install-sh references.
install-info: info installdirs
- if test -f autoconf.info; then \
+ if test -f autoconf.info; then \
for i in *.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/$$i; \
done; \
else \
for i in $(srcdir)/*.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
done; \
fi
@@ -174,7 +174,7 @@
rm -f $(bindir)/`echo $$p|sed '$(transform)'`; \
done
rm -fr $(acdatadir)
- cd $(infodir) && rm -f autoconf.info*
+ cd $(infodir) && rm -f autoconf.info*
if test -f standards.info || test -f $(srcdir)/standards.info; \
then cd $(infodir) && rm -f standards.info*; fi
diff -Naur a/testsuite/autoconf.s/syntax.exp b/testsuite/autoconf.s/syntax.exp
--- a/testsuite/autoconf.s/syntax.exp 1999-01-05 13:29:54.000000000 +0000
+++ b/testsuite/autoconf.s/syntax.exp 2016-06-11 00:18:51.996905247 +0100
@@ -2,7 +2,7 @@
send_user "Checking for syntax errors in the specific tests...\n"
set script {s/^AC_DEFUN(\([^,]*\).*/\1/p}
-set macros [exec sed -n $script $srcdir/../acspecific.m4]
+set macros [exec sed -n $script $srcdir/../acspecific.m4 | grep -v -e AC_FUNC_GETLOADAVG -e F77]
foreach mac $macros {
send_user "$mac\n"

View file

@ -1,75 +0,0 @@
#!/bin/sh
# Copyright 2005-2016 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.
PKGNAM=autoconf
VERSION=2.13
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-autoconf
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf autoconf-$VERSION
tar xvf $CWD/autoconf-$VERSION.tar.xz || exit 1
cd autoconf-$VERSION
zcat $CWD/autoconf-2.13-consolidated_fixes-1.patch.gz | patch -p1 --verbose || 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 {} \;
# Build a temporary copy of autoconf-2.13 only to be used to compile
# Firefox, since it somewhat inexplicably requires this ancient version:
mkdir -p $TMP/mozilla-firefox-build-deps/usr
./configure \
--prefix=$TMP/mozilla-firefox-build-deps/usr \
--program-suffix=-2.13 \
--infodir=$TMP/mozilla-firefox-build-deps/usr/info \
--mandir=$TMP/mozilla-firefox-build-deps/usr/man \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install || exit 1

View file

@ -1,27 +0,0 @@
# This script uses the SOURCE file downloaded from:
# archive.mozilla.org:/pub/firefox/releases/{VERSION}
CWD=$(pwd)
if [ ! -r SOURCE ]; then
echo "Error: no SOURCE file present."
echo " download one from archive.mozilla.org:/pub/firefox/releases/{VERSION} and run this script again."
exit 1
fi
REPO_URL=$(grep tar.bz2 SOURCE | rev | cut -f 1 -d ' ' | rev)
REPO_TARBALL=$(basename ${REPO_URL})
rm -f ${REPO_TARBALL}
rm -f firefox-*.source.tar.lz
lftpget ${REPO_URL} || exit 1
TMPDIR=$(mktemp -d)
cd ${TMPDIR}
tar xf ${CWD}/${REPO_TARBALL}
FF_VER=$(cat mozilla-release-*/browser/config/version.txt)
mv mozilla-release-* firefox-${FF_VER}
tar cf firefox-${FF_VER}.source.tar firefox-${FF_VER}
plzip -9 -n 6 firefox-${FF_VER}.source.tar
cd ${CWD}
mv ${TMPDIR}/firefox-${FF_VER}.source.tar.lz .
rm -f ${REPO_TARBALL}
rm -rf ${TMPDIR}

View file

@ -1,12 +0,0 @@
--- ./modules/libpref/init/all.js.orig 2019-07-08 13:28:45.106153934 -0500
+++ ./modules/libpref/init/all.js 2019-07-08 13:41:02.035201116 -0500
@@ -258,6 +258,9 @@
// If true, all popups won't hide automatically on blur
pref("ui.popup.disable_autohide", false);
+// Default to GTK+ v2 type scrolling:
+pref("ui.scrollToClick", 0);
+
#ifdef XP_MACOSX
pref("ui.touchbar.layout", "Back,Forward,Reload,OpenLocation,NewTab,Share");
#endif

View file

@ -1,17 +0,0 @@
--- ./firefox.orig 2008-05-29 15:21:18.000000000 -0500
+++ ./firefox 2008-06-17 12:19:26.000000000 -0500
@@ -54,6 +54,14 @@
moz_libdir=/usr/local/lib/firefox-3.0
+# Include /usr/lib/mozilla/plugins in the plugin path:
+if [ "$MOZ_PLUGIN_PATH" ] ; then
+ MOZ_PLUGIN_PATH=$MOZ_PLUGIN_PATH:${moz_libdir}/plugins:/usr/lib/mozilla/plugins
+else
+ MOZ_PLUGIN_PATH=${moz_libdir}/plugins:/usr/lib/mozilla/plugins
+fi
+export MOZ_PLUGIN_PATH
+
# Use run-mozilla.sh in the current dir if it exists
# If not, then start resolving symlinks until we find run-mozilla.sh
found=0

View file

@ -1,31 +0,0 @@
--- ./config/makefiles/rust.mk.orig 2021-03-15 12:42:08.219987929 -0500
+++ ./config/makefiles/rust.mk 2021-03-15 12:43:15.996984180 -0500
@@ -332,17 +332,17 @@
# the chance of proxy bypasses originating from rust code.
# The check only works when rust code is built with -Clto but without MOZ_LTO_RUST_CROSS.
# Sanitizers and sancov also fail because compiler-rt hooks network functions.
-ifndef MOZ_PROFILE_GENERATE
-ifeq ($(OS_ARCH), Linux)
-ifeq (,$(rustflags_sancov)$(MOZ_ASAN)$(MOZ_TSAN)$(MOZ_UBSAN))
-ifndef MOZ_LTO_RUST_CROSS
-ifneq (,$(filter -Clto,$(cargo_rustc_flags)))
- $(call py_action,check_binary,--target --networking $@)
-endif
-endif
-endif
-endif
-endif
+#ifndef MOZ_PROFILE_GENERATE
+#ifeq ($(OS_ARCH), Linux)
+#ifeq (,$(rustflags_sancov)$(MOZ_ASAN)$(MOZ_TSAN)$(MOZ_UBSAN))
+#ifndef MOZ_LTO_RUST_CROSS
+#ifneq (,$(filter -Clto,$(cargo_rustc_flags)))
+# $(call py_action,check_binary,--target --networking $@)
+#endif
+#endif
+#endif
+#endif
+#endif
force-cargo-library-check:
$(call CARGO_CHECK) --lib $(cargo_target_flag) $(rust_features_flag)

View file

@ -1,28 +0,0 @@
<?xml version="1.0"?>
<RDF:RDF xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<RDF:Seq RDF:about="urn:mimetypes:root">
</RDF:Seq>
<RDF:Description RDF:about="urn:mimetypes">
<NC:MIME-types RDF:resource="urn:mimetypes:root"/>
</RDF:Description>
<RDF:Description RDF:about="urn:scheme:mailto"
NC:value="mailto">
<NC:handlerProp RDF:resource="urn:scheme:handler:mailto"/>
</RDF:Description>
<RDF:Description RDF:about="urn:handler:web:http://compose.mail.yahoo.com/?To=%s"
NC:prettyName="Yahoo! Mail"
NC:uriTemplate="http://compose.mail.yahoo.com/?To=%s" />
<RDF:Description RDF:about="urn:handler:web:https://mail.google.com/mail/?extsrc=mailto&amp;url=%s"
NC:prettyName="GMail"
NC:uriTemplate="https://mail.google.com/mail/?extsrc=mailto&amp;url=%s" />
<RDF:Description RDF:about="urn:scheme:handler:mailto"
NC:alwaysAsk="true">
<NC:possibleApplication RDF:resource="urn:handler:web:http://compose.mail.yahoo.com/?To=%s"/>
<NC:possibleApplication RDF:resource="urn:handler:web:https://mail.google.com/mail/?extsrc=mailto&amp;url=%s"/>
<NC:possibleApplication RDF:resource="urn:handler:local:/usr/bin/thunderbird"/>
</RDF:Description>
<RDF:Description RDF:about="urn:handler:local:/usr/bin/thunderbird"
NC:prettyName="thunderbird"
NC:path="/usr/bin/thunderbird" />
</RDF:RDF>

View file

@ -1,45 +0,0 @@
diff -Nur mozilla-1.9.1.orig/browser/locales/generic/profile/mimeTypes.rdf mozilla-1.9.1/browser/locales/generic/profile/mimeTypes.rdf
--- mozilla-1.9.1.orig/browser/locales/generic/profile/mimeTypes.rdf 2009-06-29 11:14:41.000000000 -0500
+++ mozilla-1.9.1/browser/locales/generic/profile/mimeTypes.rdf 2009-07-01 08:28:05.407353867 -0500
@@ -1,13 +1,28 @@
-<?xml version="1.0"?>
-
-<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:NC="http://home.netscape.com/NC-rdf#"
- xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
-
- <Description about="urn:mimetypes">
- <NC:MIME-types>
- <Seq about="urn:mimetypes:root">
- </Seq>
- </NC:MIME-types>
- </Description>
-</RDF>
+<?xml version="1.0"?>
+<RDF:RDF xmlns:NC="http://home.netscape.com/NC-rdf#"
+ xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+ <RDF:Seq RDF:about="urn:mimetypes:root">
+ </RDF:Seq>
+ <RDF:Description RDF:about="urn:mimetypes">
+ <NC:MIME-types RDF:resource="urn:mimetypes:root"/>
+ </RDF:Description>
+ <RDF:Description RDF:about="urn:scheme:mailto"
+ NC:value="mailto">
+ <NC:handlerProp RDF:resource="urn:scheme:handler:mailto"/>
+ </RDF:Description>
+ <RDF:Description RDF:about="urn:handler:web:http://compose.mail.yahoo.com/?To=%s"
+ NC:prettyName="Yahoo! Mail"
+ NC:uriTemplate="http://compose.mail.yahoo.com/?To=%s" />
+ <RDF:Description RDF:about="urn:handler:web:https://mail.google.com/mail/?extsrc=mailto&amp;url=%s"
+ NC:prettyName="GMail"
+ NC:uriTemplate="https://mail.google.com/mail/?extsrc=mailto&amp;url=%s" />
+ <RDF:Description RDF:about="urn:scheme:handler:mailto"
+ NC:alwaysAsk="true">
+ <NC:possibleApplication RDF:resource="urn:handler:web:http://compose.mail.yahoo.com/?To=%s"/>
+ <NC:possibleApplication RDF:resource="urn:handler:web:https://mail.google.com/mail/?extsrc=mailto&amp;url=%s"/>
+ <NC:possibleApplication RDF:resource="urn:handler:local:/usr/bin/thunderbird"/>
+ </RDF:Description>
+ <RDF:Description RDF:about="urn:handler:local:/usr/bin/thunderbird"
+ NC:prettyName="thunderbird"
+ NC:path="/usr/bin/thunderbird" />
+</RDF:RDF>

View file

@ -1,435 +0,0 @@
#!/bin/bash
# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2021, 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.
# Thanks to the folks at the Mozilla Foundation for permission to
# distribute this, and for all the great work! :-)
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mozilla-firefox
VERSION=$(basename $(ls firefox-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)
RELEASEVER=$(echo $VERSION | cut -f 1 -d r | cut -f 1 -d b | cut -f 1 -d e)
BUILD=${BUILD:-1}
# Specify this variable for a localized build.
# For example, to build a version of Firefox with Italian support, run
# the build script like this:
#
# MOZLOCALIZE=it ./mozilla-firefox.SlackBuild
#
MOZLOCALIZE=${MOZLOCALIZE:-}
# Without LANG=C, building the Python environment may fail with:
# "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 36: ordinal not in range(128)"
LANG=C
# Add a shell script to start the firefox binary with MOZ_ALLOW_DOWNGRADE=1
# to avoid backing up (and disabling) the user profile if a browser downgrade
# is detected. We made it fine for years without this feature, and all the
# feedback we've seen suggests that it is causing more problems than it
# solves. For example, this feature causes a profile reset trying to switch
# between a 32-bit and 64-bit browser on installations that share a common
# /home directory. If you want to build with the stock default behavior, set
# this to something other than "YES":
MOZ_ALLOW_DOWNGRADE=${MOZ_ALLOW_DOWNGRADE:-YES}
# Automatically determine the architecture we're building on:
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
# 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
if [ -z $MOZLOCALIZE ]; then
echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
else
echo "$PKGNAM-$VERSION-$ARCH-${BUILD}_$MOZLOCALIZE.txz"
fi
exit 0
fi
# Firefox has been requiring more and more memory, especially while linking
# libxul. If it fails to build natively on x86 32-bit, it can be useful to
# attempt the build using an x86_64 kernel and a 32-bit userspace. Detect this
# situation and set the ARCH to i686. Later in the script we'll add some
# options to the .mozconfig so that the compile will do the right thing.
if [ "$(uname -m)" = "x86_64" -a "$(file -L /usr/bin/gcc | grep 80386 | grep 32-bit)" != "" ]; then
COMPILE_X86_UNDER_X86_64=true
ARCH=i686
fi
# Choose a compiler (gcc/g++ or clang/clang++):
export CC=${CC:-clang}
export CXX=${CXX:-clang++}
# Set linker to use:
if [ "$CC" = "clang" -a "$(which lld 2> /dev/null)" = "/usr/bin/lld" ]; then
# Upstream default:
LINKER=lld
else
LINKER=bfd
fi
# Keep memory usage as low as possible when linking:
if [ ! "$LINKER" = "lld" ]; then
SLKLDFLAGS=" -Wl,--as-needed -Wl,--no-keep-memory -Wl,--stats -Wl,--reduce-memory-overheads"
export LDFLAGS="$SLKLDFLAGS"
export MOZ_LINK_FLAGS="$SLKLDFLAGS"
fi
# Put Rust objects on a diet to keep the linker from running into memory
# issues (especially on 32-bit):
export RUSTFLAGS="-Cdebuginfo=0"
# Use PGO? Doubles the time and drive space requirements for the build,
# but should provide a performance increase. How much depends on which
# benchmarks you believe, but I've typically seen around 2.5%. I've also
# seen some which say it can be negligably (a fraction of a percent) slower
# with this enganged. The anecdotal reports usually say there's a noticable
# improvement in overall responsiveness. Seems like a good bet if you have
# the time and your system is able to handle it. Set the variable to
# anything else prior to the build to compile Firefox in less time (but
# without the possible benefits of Profile-Guided Optimization).
#
# NOTE: The 23.0 release fails to compile with a GLib assert error if PGO
# is enabled, so it is being disabled by default. I can't say I ever noticed
# a lot of difference with this anyway (other than a much, much longer compile
# time. But pass PGO=yes to the SlackBuild if you want to try it.
#if [ "$ARCH" = "x86_64" ]; then
# PGO=${PGO:-yes}
#else
# # 32-bit systems have problems compiling with PGO, as the per-process
# # memory requirements are too large. Possibly compiling with a 64-bit
# # kernel could be a workaround for this, but for now we will default to
# # using PGO only for x86_64.
# PGO=${PGO:-no}
#fi
#
# PGO is disabled by default:
PGO=${PGO:-no}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-g0"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-g0"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-g0"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-g0 -fPIC"
LIBDIRSUFFIX="64"
elif [ "$ARCH" = "arm" ]; then
SLKCFLAGS="-g0 -march=armv4 -mtune=xscale"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "armel" ]; then
SLKCFLAGS="-g0 -march=armv4t"
LIBDIRSUFFIX=""
else
SLKCFLAGS="-g0"
LIBDIRSUFFIX=""
fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-mozilla-firefox
# If there is a private Google API key available at compile time, use
# it to enable support for Google Safe Browsing. For Slackware builds,
# we use a private key issued for the Slackware project. If you are
# rebuilding and need this support, or you are producing your own
# distribution, you may obtain your own Google API key at no charge by
# following these instructions:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1377987#c0
if [ -r /root/google-api-key ]; then
GOOGLE_API_KEY="--with-google-safebrowsing-api-keyfile=/root/google-api-key"
fi
# If not specified, figure out if this is a beta or a release
MOZVERS=${MOZVERS:-release}
if echo $VERSION | grep -q b ; then MOZVERS=beta ; fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
rm -rf $PKG
mkdir -p $TMP $PKG/usr/lib${LIBDIRSUFFIX}
# Build or unpack build-time dependencies:
. ./build-deps.sh
cd $TMP
rm -rf firefox-$RELEASEVER
# Unpack this in a subdirectory to prevent changing permissions on /tmp:
rm -rf firefox-unpack
mkdir firefox-unpack
cd firefox-unpack
tar xvf $CWD/firefox-$VERSION.source.tar.?z || exit 1
mv * ..
cd ..
rm -rf firefox-unpack
cd firefox-$RELEASEVER || exit 1
# Delete object directory if it was mistakenly included in the tarball:
rm -rf obj-x86_64-pc-linux-gnu
# Prevent failures building gkrust by suppressing useless warnings:
sed -i.allow-warnings -e '/#!\[deny(warnings)\]/a #![allow(unused_imports)]' \
servo/components/style/lib.rs
# Retain GTK+ v2 scrolling behavior:
zcat $CWD/ff.ui.scrollToClick.diff.gz | patch -p1 --verbose || exit 1
# Don't enable LTO for Rust unless the whole build uses it:
zcat $CWD/0027-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch.gz | patch -p1 --verbose || exit 1
# Don't define a function that's included starting in glibc-2.36:
zcat $CWD/arc4random_buf.glibc-2.36.diff.gz | patch -p1 --verbose || exit 1
# Fetch localization, if requested
# https://bugzilla.mozilla.org/show_bug.cgi?id=1256955
if [ ! -z $MOZLOCALIZE ]; then
LOC_URL="http://ftp.mozilla.org/pub/firefox/candidates/$RELEASEVER-candidates/build1/l10n_changesets.txt"
LOC_COMMIT=$(wget -q -O - $LOC_URL | grep ^$MOZLOCALIZE | cut -d\ -f2)
hg clone https://hg.mozilla.org/l10n-central/$MOZLOCALIZE -r $LOC_COMMIT
fi
# Patch mimeTypes.rdf
# Uncomment this if you want to use the patch; otherwise, we overwrite the
# mimeTypes.rdf inside the package directory later
# zcat $CWD/mozilla-firefox-mimeTypes-fix.diff.gz | patch -p1 || 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 {} \+
# Our building options, in a configure-like display ;)
OPTIONS="\
--enable-official-branding \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--with-system-zlib \
--with-system-nss \
--with-system-nspr \
--with-unsigned-addon-scopes=app,system \
--without-wasm-sandboxed-libraries \
--allow-addon-sideload \
--enable-alsa \
--enable-application=browser \
--enable-default-toolkit=cairo-gtk3-wayland \
--enable-linker=$LINKER \
--enable-optimize \
$GOOGLE_API_KEY \
--disable-strip \
--disable-install-strip \
--disable-tests \
--enable-cpp-rtti \
--enable-accessibility \
--disable-crashreporter \
--disable-debug-symbols \
--disable-debug \
--disable-elf-hack \
--disable-updater"
# Complains about missing APNG support in Slackware's libpng:
# --with-system-png \
# This option breaks mozilla-12.0:
# --enable-system-cairo \
# NOTE: It probably reduces bugs to use the bundled library versions,
# so in general we will not --enable-system-libraries.
# But since system zlib has been used for a long time and isn't a moving
# target, we'll leave that one as-is.
if [ ! -z $MOZLOCALIZE ]; then
OPTIONS=$OPTIONS" \
--enable-ui-locale=$MOZLOCALIZE
--with-l10n-base=.."
# There are no dictionaries in localized builds
sed -i \
-e "/@BINPATH@\/dictionaries\/\*/d" \
-e "/@RESPATH@\/dictionaries\/\*/d" \
browser/installer/package-manifest.in || exit 1
fi
export MACH_USE_SYSTEM_PYTHON="1"
export MOZILLA_OFFICIAL="1"
export BUILD_OFFICIAL="1"
export MOZ_PHOENIX="1"
export MOZ_PACKAGE_JSSHELL="1"
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS -fno-delete-null-pointer-checks"
export MOZ_MAKE_FLAGS="$NUMJOBS"
export MOZBUILD_STATE_PATH="$TMP/firefox-$RELEASEVER/.mozbuild"
# Clear some variables that could break the build
unset DBUS_SESSION_BUS_ADDRESS ORBIT_SOCKETDIR SESSION_MANAGER \
XDG_SESSION_COOKIE XAUTHORITY MAKEFLAGS
# Assemble our .mozconfig, we use this method for building, seems
# needed for PGO.
echo ". \$topsrcdir/browser/config/mozconfig" > .mozconfig
# Mozilla devs enforce using an objdir for building
# https://developer.mozilla.org/en/Configuring_Build_Options#Building_with_an_objdir
mkdir obj
echo "mk_add_options MOZ_OBJDIR=$(pwd)/obj" >> .mozconfig
if [ "$MOZLOCALIZE" ]; then
echo "mk_add_options MOZ_CO_LOCALES=\"$MOZLOCALIZE\"" >> .mozconfig
fi
# Tell .mozconfig about the selected compiler:
echo "export CC=\"${CC}\"" >> .mozconfig
echo "export CXX=\"${CXX}\"" >> .mozconfig
if [ "$COMPILE_X86_UNDER_X86_64" = "true" ]; then
# Compile for i686 under an x86_64 kernel:
echo "ac_add_options --host=i686-pc-linux-gnu" >> .mozconfig
echo "ac_add_options --target=i686-pc-linux-gnu" >> .mozconfig
fi
# Add the $OPTIONS above to .mozconfig:
for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
# https://developer.mozilla.org/en-US/docs/Building_with_Profile-Guided_Optimization
# Thanks to ArchLinux and Gentoo for the additional hints.
if [ "$PGO" = "yes" ]; then
# Do a PGO build, double time and disk space but worth it.
export MOZ_PGO=1
echo "mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 \$(MAKE) -C \$(MOZ_OBJDIR) pgo-profile-run'" >> .mozconfig
export DISPLAY=:99
# Launch Xvfb to let the profile scripts run in a X session.
# Ugly note: if the build breaks you may want to do a "killall Xvfb".
Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY &
dbus-launch --exit-with-session ./mach build || exit 1
kill $! || true
else
# Do a normal build
./mach build || exit 1
fi
./mach buildsymbols || exit 1
DESTDIR=$PKG ./mach install || exit 1
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
## Clean up the build time dependencies:
#rm -rf $TMP/mozilla-firefox-build-deps
# We don't need these (just symlinks anyway):
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/firefox-devel-$RELEASEVER
# Nor these:
rm -rf $PKG/usr/include
( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER
#mv defaults/profile/mimeTypes.rdf defaults/profile/mimeTypes.rdf.orig || exit 1
if [ -d defaults/profile ]; then
zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1
fi
# OK, this patch is useless on 7.x. We'll float without it and see what happens.
# Perhaps it won't make a difference or should be worked around elsewhere.
#zcat $CWD/firefox.moz_plugin_path.diff.gz \
# | sed -e "s#usr/lib#usr/lib${LIBDIRSUFFIX}#g" \
# | patch -p1 --verbose --backup --suffix=.orig || exit 1
# Clean up if the above patch was successful:
#rm -f firefox.orig
) || exit
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
mkdir -p $PKG/usr/share/applications
cat $CWD/mozilla-firefox.desktop > $PKG/usr/share/applications/mozilla-firefox.desktop
# These files/directories are usually created if Firefox is run as root,
# which on many systems might (and possibly should) be never. Therefore, if we
# don't see them we'll put stubs in place to prevent startup errors.
( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER
if [ -d extensions/talkback\@mozilla.org ]; then
if [ ! -r extensions/talkback\@mozilla.org/chrome.manifest ]; then
echo > extensions/talkback\@mozilla.org/chrome.manifest
fi
fi
if [ ! -d updates ]; then
mkdir -p updates/0
fi
)
# Need some default icons in the right place:
for i in 16 22 24 32 48 256; do
install -m 0644 -D browser/branding/official/default${i}.png \
$PKG/usr/share/icons/hicolor/${i}x${i}/apps/firefox.png
done
mkdir -p $PKG/usr/share/pixmaps
( cd $PKG/usr/share/pixmaps ; ln -sf /usr/share/icons/hicolor/256x256/apps/firefox.png . )
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/chrome/icons/default
install -m 644 browser/branding/official/default16.png \
$PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/icons/
install -m 644 browser/branding/official/default16.png \
$PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/chrome/icons/default/
# Copy over the LICENSE
install -p -c -m 644 LICENSE $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/
# If MOZ_ALLOW_DOWNGRADE=YES, replace the /usr/bin/firefox symlink with a
# shell script that sets the MOZ_ALLOW_DOWNGRADE=1 environment variable so
# that a detected browser downgrade does not reset the user profile:
if [ "$MOZ_ALLOW_DOWNGRADE" = "YES" ]; then
rm -f $PKG/usr/bin/firefox
cat << EOF > $PKG/usr/bin/firefox
#!/bin/sh
#
# Shell script to start Mozilla Firefox.
#
# Don't reset the user profile on a detected browser downgrade:
export MOZ_ALLOW_DOWNGRADE=1
# Start Firefox:
exec /usr/lib${LIBDIRSUFFIX}/firefox/firefox "\$@"
EOF
chown root:root $PKG/usr/bin/firefox
chmod 755 $PKG/usr/bin/firefox
fi
# Fix duplicate binary, https://bugzilla.mozilla.org/show_bug.cgi?id=658850
( cd $PKG/usr/lib$LIBDIRSUFFIX/firefox
if cmp firefox firefox-bin ; then
ln -sf firefox-bin firefox
fi
)
mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
if [ -z $MOZLOCALIZE ]; then
/sbin/makepkg -l y -c n $TMP/mozilla-firefox-$VERSION-$ARCH-$BUILD.txz
else
/sbin/makepkg -l y -c n $TMP/mozilla-firefox-$VERSION-$ARCH-${BUILD}_$MOZLOCALIZE.txz
fi

View file

@ -1,80 +0,0 @@
[Desktop Entry]
Exec=firefox %u
Icon=firefox
Type=Application
Categories=Network;WebBrowser;
Name=Firefox
Name[bn]=
Name[eo]=Mozilo Fajrovulpo
Name[fi]=Mozilla Firefox
Name[pa]=
Name[tg]=Рӯбоҳи оташин
GenericName=Web Browser
GenericName[af]=Web Blaaier
GenericName[ar]=متصفح ويب
GenericName[az]=Veb Səyyahı
GenericName[bg]=Браузър
GenericName[bn]=
GenericName[br]=Furcher ar Gwiad
GenericName[bs]=WWW Preglednik
GenericName[ca]=Fullejador web
GenericName[cs]=WWW prohlížeč
GenericName[cy]=Porydd Gwe
GenericName[da]=Browser
GenericName[de]=Web-Browser
GenericName[el]=Περιηγητής Ιστού
GenericName[eo]=TTT-legilo
GenericName[es]=Navegador web
GenericName[et]=Veebilehitseja
GenericName[eu]=Web arakatzailea
GenericName[fa]=مرورگر وب
GenericName[fi]=WWW-selain
GenericName[fo]=Alnótsfar
GenericName[fr]=Navigateur web
GenericName[gl]=Navegador Web
GenericName[he]=דפדפן אינטרנט
GenericName[hi]=
GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
GenericName[is]=Vafri
GenericName[it]=Browser Web
GenericName[ja]=
GenericName[ko]=
GenericName[lo]=
GenericName[lt]=Žiniatinklio naršyklė
GenericName[lv]=Web Pārlūks
GenericName[mk]=Прелистувач на Интернет
GenericName[mn]=Веб-Хөтөч
GenericName[nb]=Nettleser
GenericName[nds]=Nettkieker
GenericName[nl]=Webbrowser
GenericName[nn]=Nettlesar
GenericName[nso]=Seinyakisi sa Web
GenericName[pa]=
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
GenericName[pt_BR]=Navegador Web
GenericName[ro]=Navigator de web
GenericName[ru]=Веб-браузер
GenericName[se]=Fierpmádatlogan
GenericName[sk]=Webový prehliadač
GenericName[sl]=Spletni brskalnik
GenericName[sr]=Веб претраживач
GenericName[sr@Latn]=Veb pretraživač
GenericName[ss]=Ibrawuza yeWeb
GenericName[sv]=Webbläsare
GenericName[ta]= ி
GenericName[tg]=Тафсиргари вэб
GenericName[th]=
GenericName[tr]=Web Tarayıcı
GenericName[uk]=Навігатор Тенет
GenericName[uz]=Веб-браузер
GenericName[ven]=Buronza ya Webu
GenericName[vi]=Trình duyt Web
GenericName[wa]=Betchteu waibe
GenericName[xh]=Umkhangeli zincwadi we Web
GenericName[zh_CN]=
GenericName[zh_TW]=
GenericName[zu]=Umcingi we-Web
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
X-KDE-StartupNotify=true

View file

@ -1,19 +0,0 @@
# 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------------------------------------------------------|
mozilla-firefox: mozilla-firefox (Mozilla Firefox Web browser)
mozilla-firefox:
mozilla-firefox: Firefox is a free and open-source web browser developed by the Mozilla
mozilla-firefox: Foundation and its subsidiary, the Mozilla Corporation. It has lots of
mozilla-firefox: great features including popup blocking, tabbed browsing, integrated
mozilla-firefox: search, improved privacy features (such as enhanced tracking
mozilla-firefox: protection), and more.
mozilla-firefox:
mozilla-firefox: Homepage: https://www.mozilla.org/firefox
mozilla-firefox:
mozilla-firefox: