diff --git a/experimental/thunderbird/APKBUILD b/experimental/thunderbird/APKBUILD
deleted file mode 100644
index 92dffeb6b5364cf04a4389fe37903dc1bd036fa1..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/APKBUILD
+++ /dev/null
@@ -1,120 +0,0 @@
-# Contributor: A. Wilcox <awilfox@adelielinux.org>
-# Maintainer: A. Wilcox <awilfox@adelielinux.org>
-pkgname=thunderbird
-pkgver=60.2.1
-pkgrel=0
-pkgdesc="Email client from Mozilla"
-url="https://www.mozilla.org/thunderbird/"
-arch="all"
-options="!check"  # X11 required
-license="MPL"
-depends=""
-# moz build system stuff
-# python deps
-# system-libs
-# actual deps
-makedepends="
-	autoconf2.13 ncurses-dev perl cmd:which
-
-	ncurses-dev openssl-dev
-
-	alsa-lib-dev bzip2-dev icu-dev libevent-dev libffi-dev libpng-dev
-	libjpeg-turbo-dev nspr-dev nss-dev pulseaudio-dev zlib-dev
-
-	cargo clang fts-dev llvm6-dev rust
-	dbus-glib-dev gconf-dev gtk+2.0-dev gtk+3.0-dev hunspell-dev libsm-dev
-	libnotify-dev libxcomposite-dev libxdamage-dev libxrender-dev libxt-dev
-	nss-static sqlite-dev startup-notification-dev unzip yasm zip
-	"
-subpackages=""
-source="https://archive.mozilla.org/pub/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz
-	mozconfig
-	bad-google-code.patch
-	cmsghdr.patch
-	endianness-js.patch
-	fix-bug-1261392.patch
-	fix-seccomp-bpf.patch
-	proper-system-hunspell.patch
-	rust-config.patch
-	skia.patch
-	stab.h
-	stackwalk-x86-ppc.patch
-	thunderbird.desktop
-	webrtc-broken.patch
-	"
-somask="liblgpllibs.so
-	libmozgtk.so
-	libmozsandbox.so
-	libxul.so"
-_tbirddir=/usr/lib/${pkgname}
-
-unpack() {
-	default_unpack
-	# just ripped from Firefox's APKBUILD...
-	[ -z $SKIP_PYTHON ] || return 0
-	msg "Killing all remaining hope for humanity and building Python 2..."
-	cd "$srcdir"
-	[ -d python ] && rm -r python
-	mkdir python
-	cd python
-	# 19:39 <+solar> just make the firefox build process build its own py2 copy
-	curl -O https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
-	tar xJf Python-2.7.15.tar.xz
-	cd Python-2.7.15
-	# 20:03 <calvin> TheWilfox: there's always violence
-	./configure --prefix="$srcdir/python"
-	make -j $JOBS
-	# 6 tests failed:
-	#    test__locale test_os test_posix test_re test_strptime test_time
-	# make test
-	make -j $JOBS install
-}
-
-prepare() {
-	default_prepare
-	cp "$srcdir"/stab.h "$builddir"/toolkit/crashreporter/google-breakpad/src/
-	cp "$srcdir"/mozconfig "$builddir"/mozconfig
-	echo "ac_add_options --enable-optimize=\"$CFLAGS\"" >> "$builddir"/mozconfig
-	echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig
-	echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig
-	# too much memory
-	if [ -z "$JOBS" ] || [ $JOBS -gt 32 ]; then
-		echo "mk_add_options MOZ_MAKE_FLAGS=\"-j32\"" >> "$builddir"/mozconfig
-	fi
-}
-
-build() {
-	cd "$builddir"
-
-	# reportedly needed for gcc6; confirm this?
-	export CXXFLAGS="$CXXFLAGS -fno-delete-null-pointer-checks -fno-schedule-insns2"
-
-	export LDFLAGS="$LDFLAGS -Wl,-rpath,${_tbirddir}"
-	export USE_SHORT_LIBNAME=1
-
-	export PATH="$srcdir/python/bin:$PATH"
-	./mach build
-}
-
-package() {
-	cd "$builddir"
-	export PATH="$srcdir/python/bin:$PATH"
-	DESTDIR="$pkgdir" ./mach install
-	install -D -m644 "$srcdir"/thunderbird.desktop \
-		"$pkgdir"/usr/share/applications/thunderbird.desktop
-}
-
-sha512sums="d74da3c90658c5baf09c22760cad31594524c09f2cd5aba81c5b15bb6db64d78f613562cb015d8a725b4902caa4a57a2d1dafce28284533747faed00f8268a02  thunderbird-60.2.1.source.tar.xz
-beda68f67171d18291c0671a5c7944382c217f47a1abceeb9e776fe7cf2d5baf861616bc1450032964ce78f910765c8c6b497eb1b050c85ac65a560bae5c9c87  mozconfig
-dce2523e9dc10719eae77cc1607de094e34526b3ff8694fb51a5116c118c89bb1c1b8b192c03b976663b3afab8e9fdbff79007b3ba0344186a7783b3dc597ebc  bad-google-code.patch
-61c7117345b4bcb045ce0287aa368d90dffd7331347021ff345d5a7c46097ffd2575f38711309ce7bdbbbec15561e03fdabcb16235ed8a325ccc8c9d5bba35a6  cmsghdr.patch
-31f0cf9663443410a996002ed0357c2ea21692ce965a30d8bfb65d0f1827173da8d8b5c831ccbc199ecbe7a577613be0dd54a09db08e620fe37e1ce977a7afb0  endianness-js.patch
-a50b412edf9573a0bd04a43578b1c927967a616b73a5995eefb15bfa78fd2bd14e36ec05315a0703f6370ecd524e6bcb012e7285beb1245e9add9b8553acb79e  fix-bug-1261392.patch
-70863b985427b9653ce5e28d6064f078fb6d4ccf43dd1b68e72f97f44868fc0ce063161c39a4e77a0a1a207b7365d5dc7a7ca5e68c726825eba814f2b93e2f5d  fix-seccomp-bpf.patch
-1a88c21c39d5878e2018463fe08dd3a960cdf10e650e06ef3e4f089a431800b50267d8749a7acde196bb47c45aa66058a6ed4fb4d60de2ab69e8a48cd5a109bc  proper-system-hunspell.patch
-fd3b165e26ab931dd7eaf220d578c30b8772eab0a870710d59403c9823c2233ef941cd7eb25d1625d705de9e8a7138d0e8c4e227a185e9b687553132da96d81a  rust-config.patch
-8ef2bc4404601f66c7505f3e0a2f6d1d11e8f11e5a888dce4942cf27c86fbdbcdd66cb3d98738b7d9e25538793986140e75d51a893d22c70714ed98ef50a9894  skia.patch
-0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127  stab.h
-d12ce112b97cbdba0748c5734a024b13032c5e0696efbd499764246e031d477b0f0a966aedc7b3bedd166bcdc2cc24d45bb9da5f678de9cff547bc6aa231cd16  stackwalk-x86-ppc.patch
-95a2b1deb4f6c90750fdd2bfe8ca0a7879a5b267965091705a6beb0a0a4b1ccad75d11df7b9885543ca4232ff704e975c6946f4c11804cb71c471e06f9576001  thunderbird.desktop
-76409619464259e3ba52e38d640c5b6210a7fecdc75cf124c185ef356507d4d266a845e9fcdeb7766dcd547f70748123c4fa1670f6e52aadd001a3c866dc2d51  webrtc-broken.patch"
diff --git a/experimental/thunderbird/bad-google-code.patch b/experimental/thunderbird/bad-google-code.patch
deleted file mode 100644
index 7c77a5edce4fc3cc5cc7c81cc46e547e23252fea..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/bad-google-code.patch
+++ /dev/null
@@ -1,49 +0,0 @@
---- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
-+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
-@@ -45,6 +45,7 @@
- #include <sys/mman.h>
- #include <sys/stat.h>
- #include <unistd.h>
-+#include <libgen.h>
- 
- #include <iostream>
- #include <set>
---- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
-+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
-@@ -41,6 +41,10 @@
- 
- #include "common/using_std_string.h"
- 
-+#ifndef N_UNDF
-+#define N_UNDF 0
-+#endif
-+
- using std::vector;
- 
- namespace google_breakpad {
---- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
-+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
-@@ -55,7 +55,7 @@
- 
- #ifdef HAVE_MACH_O_NLIST_H
- #include <mach-o/nlist.h>
--#elif defined(HAVE_A_OUT_H)
-+#elif 0
- #include <a.out.h>
- #endif
- 
---- thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
-+++ thunderbird-60.2.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
-@@ -1134,6 +1134,12 @@ struct kernel_statfs {
- #ifndef __NR_fallocate
- #define __NR_fallocate          285
- #endif
-+
-+#undef __NR_pread
-+#define __NR_pread __NR_pread64
-+#undef __NR_pwrite
-+#define __NR_pwrite __NR_pwrite64
-+
- /* End of x86-64 definitions                                                 */
- #elif defined(__mips__)
- #if _MIPS_SIM == _MIPS_SIM_ABI32
diff --git a/experimental/thunderbird/cmsghdr.patch b/experimental/thunderbird/cmsghdr.patch
deleted file mode 100644
index 5fdc38353eb187eaeaff5f66a108c846bca78cd5..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/cmsghdr.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs firefox-60.0/media/audioipc/audioipc/src/cmsg.rs
---- firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs	2018-05-13 18:05:51.713781232 -0700
-+++ firefox-60.0/media/audioipc/audioipc/src/cmsg.rs	2018-05-13 17:33:39.536856530 -0700
-@@ -108,6 +108,7 @@
- 
-             let cmsghdr = cmsghdr {
-                 cmsg_len: cmsg_len as _,
-+                __pad1: 0,
-                 cmsg_level: level,
-                 cmsg_type: kind,
-             };
diff --git a/experimental/thunderbird/endianness-js.patch b/experimental/thunderbird/endianness-js.patch
deleted file mode 100644
index 98e1bd092c4af67536c25b8fc0f4d08be91174fd..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/endianness-js.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-# HG changeset patch
-# User Steve Fink <sfink@mozilla.com>
-# Date 1536603384 25200
-#      Mon Sep 10 11:16:24 2018 -0700
-# Node ID f598dceb588d1adf503d30acf4e0915d07d34006
-# Parent  b7dd3969261896020d7a9449d22f350a97e3517a
-# EXP-Topic b1488552.enD
-Bug 1488552 - JSString flags bit must alias the low 32 bits of JSObject.group_, not the high 32. r=tcampbell
-
-diff --git a/js/src/gc/RelocationOverlay.h b/js/src/gc/RelocationOverlay.h
---- a/js/src/gc/RelocationOverlay.h
-+++ b/js/src/gc/RelocationOverlay.h
-@@ -29,24 +29,35 @@ struct Cell;
-  * This structure overlays a Cell that has been moved and provides a way to find
-  * its new location. It's used during generational and compacting GC.
-  */
- class RelocationOverlay
- {
-     /* See comment in js/public/HeapAPI.h. */
-     static const uint32_t Relocated = js::gc::Relocated;
- 
-+#if MOZ_LITTLE_ENDIAN
-     /*
--     * Keep the low 32 bits untouched. Use them to distinguish strings from
-+     * Keep the first 32 bits untouched. Use them to distinguish strings from
-      * objects in the nursery.
-      */
-     uint32_t preserve_;
- 
-     /* Set to Relocated when moved. */
-     uint32_t magic_;
-+#elif JS_BITS_PER_WORD == 64
-+    /*
-+     * On big-endian, we need to reorder to keep preserve_ lined up with the
-+     * low 32 bits of the aligned group_ pointer in JSObject.
-+     */
-+    uint32_t magic_;
-+    uint32_t preserve_;
-+#else
-+#  error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
-+#endif
- 
-     /* The location |this| was moved to. */
-     Cell* newLocation_;
- 
-     /* A list entry to track all relocated things. */
-     RelocationOverlay* next_;
- 
-   public:
-diff --git a/js/src/vm/StringType.h b/js/src/vm/StringType.h
---- a/js/src/vm/StringType.h
-+++ b/js/src/vm/StringType.h
-@@ -2,16 +2,17 @@
-  * vim: set ts=8 sts=4 et sw=4 tw=99:
-  * 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/. */
- 
- #ifndef vm_StringType_h
- #define vm_StringType_h
- 
-+#include "mozilla/EndianUtils.h"
- #include "mozilla/MemoryReporting.h"
- #include "mozilla/PodOperations.h"
- #include "mozilla/Range.h"
- 
- #include "jsapi.h"
- #include "jsfriendapi.h"
- 
- #include "builtin/String.h"
-@@ -161,18 +162,30 @@ class JSString : public js::gc::Cell
-     static const size_t NUM_INLINE_CHARS_LATIN1   = 2 * sizeof(void*) / sizeof(JS::Latin1Char);
-     static const size_t NUM_INLINE_CHARS_TWO_BYTE = 2 * sizeof(void*) / sizeof(char16_t);
- 
-     /* Fields only apply to string types commented on the right. */
-     struct Data
-     {
-         union {
-             struct {
-+#if MOZ_LITTLE_ENDIAN
-                 uint32_t           flags;               /* JSString */
-                 uint32_t           length;              /* JSString */
-+#elif JS_BITS_PER_WORD == 64
-+                /*
-+                 * On big-endian, we need to reorder to keep flags lined up
-+                 * with the low 32 bits of the aligned group_ pointer in
-+                 * JSObject.
-+                 */
-+                uint32_t           length;              /* JSString */
-+                uint32_t           flags;               /* JSString */
-+#else
-+#  error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
-+#endif
-             };
-             uintptr_t              flattenData;         /* JSRope (temporary while flattening) */
-         } u1;
-         union {
-             union {
-                 /* JS(Fat)InlineString */
-                 JS::Latin1Char     inlineStorageLatin1[NUM_INLINE_CHARS_LATIN1];
-                 char16_t           inlineStorageTwoByte[NUM_INLINE_CHARS_TWO_BYTE];
---- thunderbird-60.2.1/js/src/gc/Marking-inl.h.old	2018-10-01 14:51:12.000000000 +0000
-+++ thunderbird-60.2.1/js/src/gc/Marking-inl.h	2018-10-12 19:08:28.260000000 +0000
-@@ -92,10 +92,10 @@
-     MOZ_ASSERT(!isForwarded());
-     // The location of magic_ is important because it must never be valid to see
-     // the value Relocated there in a GC thing that has not been moved.
--    static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSObject, group_) + sizeof(uint32_t),
--                  "RelocationOverlay::magic_ is in the wrong location");
--    static_assert(offsetof(RelocationOverlay, magic_) == offsetof(js::Shape, base_) + sizeof(uint32_t),
--                  "RelocationOverlay::magic_ is in the wrong location");
-+    //static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSObject, group_) + sizeof(uint32_t),
-+    //              "RelocationOverlay::magic_ is in the wrong location");
-+    //static_assert(offsetof(RelocationOverlay, magic_) == offsetof(js::Shape, base_) + sizeof(uint32_t),
-+    //              "RelocationOverlay::magic_ is in the wrong location");
-     static_assert(offsetof(RelocationOverlay, magic_) == offsetof(JSString, d.u1.length),
-                   "RelocationOverlay::magic_ is in the wrong location");
-     magic_ = Relocated;
---- thunderbird-60.2.1/js/src/jsfriendapi.h.old	2018-10-01 14:51:13.000000000 +0000
-+++ thunderbird-60.2.1/js/src/jsfriendapi.h	2018-10-12 19:12:06.190000000 +0000
-@@ -9,6 +9,7 @@
- 
- #include "mozilla/Atomics.h"
- #include "mozilla/Casting.h"
-+#include "mozilla/EndianUtils.h"
- #include "mozilla/Maybe.h"
- #include "mozilla/MemoryReporting.h"
- #include "mozilla/UniquePtr.h"
-@@ -640,8 +641,15 @@
-     static const uint32_t LATIN1_CHARS_BIT = JS_BIT(6);
-     static const uint32_t EXTERNAL_FLAGS   = LINEAR_BIT | NON_ATOM_BIT | JS_BIT(5);
-     static const uint32_t TYPE_FLAGS_MASK  = JS_BIT(6) - 1;
-+#if MOZ_LITTLE_ENDIAN
-     uint32_t flags;
-     uint32_t length;
-+#elif JS_BITS_PER_WORD == 64
-+    uint32_t length;
-+    uint32_t flags;
-+#else
-+#  error "Support for 32-bit big-endian architectures is untested. See bug 1488552."
-+#endif
-     union {
-         const JS::Latin1Char* nonInlineCharsLatin1;
-         const char16_t* nonInlineCharsTwoByte;
diff --git a/experimental/thunderbird/fix-bug-1261392.patch b/experimental/thunderbird/fix-bug-1261392.patch
deleted file mode 100644
index 1f7a36af3bfa8c308ba3ce23c5031dd477f76846..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/fix-bug-1261392.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/tools/profiler/core/platform.h	2017-05-27 11:44:06.733119794 +0000
-+++ b/tools/profiler/core/platform.h	2017-05-27 11:46:16.004253520 +0000
-@@ -54,10 +54,11 @@
- #include <vector>
- #include "StackTop.h"
- 
--// We need a definition of gettid(), but glibc doesn't provide a
--// wrapper for it.
--#if defined(__GLIBC__)
-+// We need a definition of gettid(), but Linux libc implementations don't
-+// provide a wrapper for it (except for Bionic)
-+#if defined(__linux__)
- #include <unistd.h>
-+#if !defined(__BIONIC__)
- #include <sys/syscall.h>
- static inline pid_t gettid()
- {
-@@ -71,6 +72,7 @@
-   return (pid_t) syscall(SYS_thread_selfid);
- }
- #endif
-+#endif
- 
- #ifdef XP_WIN
- #include <windows.h>
diff --git a/experimental/thunderbird/fix-seccomp-bpf.patch b/experimental/thunderbird/fix-seccomp-bpf.patch
deleted file mode 100644
index 47cde56c7446b2cbf64b9091bbe473a96bfcd832..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/fix-seccomp-bpf.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc.orig	2015-09-23 09:10:08.812740571 +0200
-+++ b/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc	2015-09-23 09:11:38.404746155 +0200
-@@ -23,6 +23,11 @@
- #include "sandbox/linux/services/android_ucontext.h"
- #endif
- 
-+// musl libc defines siginfo_t __si_fields instead of _sifields
-+#if defined(OS_LINUX) && !defined(__GLIBC__)
-+#define _sifields __si_fields
-+#endif
-+
- namespace {
- 
- struct arch_sigsys {
diff --git a/experimental/thunderbird/mozconfig b/experimental/thunderbird/mozconfig
deleted file mode 100644
index 637171bca8c6e48540a2322d76adb6d4da0f6a9a..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/mozconfig
+++ /dev/null
@@ -1,29 +0,0 @@
-ac_add_options --prefix=/usr
-ac_add_options --libdir=/usr/lib
-ac_add_options --disable-crashreporter
-ac_add_options --disable-install-strip
-ac_add_options --disable-jemalloc
-ac_add_options --disable-profiling
-ac_add_options --disable-strip
-ac_add_options --disable-tests
-ac_add_options --disable-updater
-ac_add_options --enable-application=comm/mail
-ac_add_options --enable-alsa
-ac_add_options --enable-calendar
-ac_add_options --enable-dbus
-ac_add_options --enable-default-toolkit=cairo-gtk3
-ac_add_options --enable-official-branding
-ac_add_options --enable-pie
-ac_add_options --enable-pulseaudio
-ac_add_options --enable-startup-notification
-ac_add_options --enable-system-ffi
-ac_add_options --enable-system-hunspell
-ac_add_options --with-pthreads
-ac_add_options --with-system-bz2
-ac_add_options --with-system-icu
-ac_add_options --with-system-jpeg
-ac_add_options --with-system-libevent
-ac_add_options --with-system-nspr
-ac_add_options --with-system-nss
-ac_add_options --with-system-png
-ac_add_options --with-system-zlib
diff --git a/experimental/thunderbird/proper-system-hunspell.patch b/experimental/thunderbird/proper-system-hunspell.patch
deleted file mode 100644
index 056dacce62b397a552dd719ee9b60dfa0e8290f3..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/proper-system-hunspell.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-moz seem to have no idea what their own damn build system is doing...
-
---- thunderbird-52.6.0/extensions/spellcheck/hunspell/glue/moz.build	2018-01-24 03:06:15.000000000 +0000
-+++ thunderbird-52.6.0/extensions/spellcheck/hunspell/glue/moz.build	2018-03-12 09:17:05.386773708 +0000
-@@ -16,6 +16,9 @@
- if CONFIG['MOZ_SYSTEM_HUNSPELL']:
-     CXXFLAGS += CONFIG['MOZ_HUNSPELL_CFLAGS']
- else:
-+    # This variable is referenced in configure.in.  Make sure to change that file
-+    # too if you need to change this variable.
-+    DEFINES['HUNSPELL_STATIC'] = True
-     LOCAL_INCLUDES += ['../src']
- 
- LOCAL_INCLUDES += [
-@@ -33,7 +36,3 @@
-      'RemoteSpellCheckEngineChild.h',
-      'RemoteSpellCheckEngineParent.h',
- ]
--
--# This variable is referenced in configure.in.  Make sure to change that file
--# too if you need to change this variable.
--DEFINES['HUNSPELL_STATIC'] = True
diff --git a/experimental/thunderbird/rust-config.patch b/experimental/thunderbird/rust-config.patch
deleted file mode 100644
index 4dbddc2a980955297b8f87f9b98059bcac0ca85e..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/rust-config.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-look, another reason to hate google: fuchsia's triplets confuse the hell out of poor mozconfig
-
-meanwhile, make -foxkit- more important than -unknown-
-
---- thunderbird-60.2.1/build/moz.configure/rust.configure.old	2018-10-01 14:51:04.000000000 +0000
-+++ thunderbird-60.2.1/build/moz.configure/rust.configure	2018-10-11 23:13:15.370000000 +0000
-@@ -119,9 +119,13 @@
-     ambiguous = set()
-     per_raw_os = {}
-     for t in out:
-+        if 'fuchsia' in t: continue
-         t = split_triplet(t, allow_unknown=True)
-         key = (t.cpu, t.endianness, t.os)
-         if key in per_os:
-+            # hax to allow Adélie toolchains to work
-+            if 'foxkit' in per_os[key].alias:
-+                continue
-             previous = per_os[key]
-             per_raw_os[(previous.cpu, previous.endianness,
-                         previous.raw_os)] = previous
diff --git a/experimental/thunderbird/skia.patch b/experimental/thunderbird/skia.patch
deleted file mode 100644
index a44ef76edb3d233b2399946043abb5b2e56a189f..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/skia.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-# HG changeset patch
-# User Lee Salzman <lsalzman@mozilla.com>
-# Date 1527131721 14400
-#      Wed May 23 23:15:21 2018 -0400
-# Node ID a8d83bebeab4c07a850711aa2c241a56f784613e
-# Parent  50fbb3e601fef35e2a673895cb0b3bc05374458a
-fix big-endian Skia builds
-
-MozReview-Commit-ID: JQivGBE45qy
-
-diff --git a/gfx/skia/skia/include/core/SkColorPriv.h b/gfx/skia/skia/include/core/SkColorPriv.h
---- a/gfx/skia/skia/include/core/SkColorPriv.h
-+++ b/gfx/skia/skia/include/core/SkColorPriv.h
-@@ -50,27 +50,20 @@ static inline U8CPU SkUnitScalarClampToB
-  *  For easier compatibility with Skia's GPU backend, we further restrict these
-  *  to either (in memory-byte-order) RGBA or BGRA. Note that this "order" does
-  *  not directly correspond to the same shift-order, since we have to take endianess
-  *  into account.
-  *
-  *  Here we enforce this constraint.
-  */
- 
--#ifdef SK_CPU_BENDIAN
--    #define SK_RGBA_R32_SHIFT   24
--    #define SK_RGBA_G32_SHIFT   16
--    #define SK_RGBA_B32_SHIFT   8
--    #define SK_RGBA_A32_SHIFT   0
--#else
--    #define SK_RGBA_R32_SHIFT   0
--    #define SK_RGBA_G32_SHIFT   8
--    #define SK_RGBA_B32_SHIFT   16
--    #define SK_RGBA_A32_SHIFT   24
--#endif
-+#define SK_RGBA_R32_SHIFT   0
-+#define SK_RGBA_G32_SHIFT   8
-+#define SK_RGBA_B32_SHIFT   16
-+#define SK_RGBA_A32_SHIFT   24
- 
- #define SkGetPackedA32(packed)      ((uint32_t)((packed) << (24 - SK_A32_SHIFT)) >> 24)
- #define SkGetPackedR32(packed)      ((uint32_t)((packed) << (24 - SK_R32_SHIFT)) >> 24)
- #define SkGetPackedG32(packed)      ((uint32_t)((packed) << (24 - SK_G32_SHIFT)) >> 24)
- #define SkGetPackedB32(packed)      ((uint32_t)((packed) << (24 - SK_B32_SHIFT)) >> 24)
- 
- #define SkA32Assert(a)  SkASSERT((unsigned)(a) <= SK_A32_MASK)
- #define SkR32Assert(r)  SkASSERT((unsigned)(r) <= SK_R32_MASK)
-diff --git a/gfx/skia/skia/include/core/SkImageInfo.h b/gfx/skia/skia/include/core/SkImageInfo.h
---- a/gfx/skia/skia/include/core/SkImageInfo.h
-+++ b/gfx/skia/skia/include/core/SkImageInfo.h
-@@ -79,17 +79,17 @@ enum SkColorType {
- 
-     kLastEnum_SkColorType = kRGBA_F16_SkColorType,
- 
- #if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
-     kN32_SkColorType = kBGRA_8888_SkColorType,
- #elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
-     kN32_SkColorType = kRGBA_8888_SkColorType,
- #else
--    #error "SK_*32_SHIFT values must correspond to BGRA or RGBA byte order"
-+    kN32_SkColorType = kBGRA_8888_SkColorType,
- #endif
- };
- 
- /**
-  *  Returns the number of bytes-per-pixel for the specified colortype, or 0 if invalid.
-  */
- SK_API int SkColorTypeBytesPerPixel(SkColorType ct);
- 
-diff --git a/gfx/skia/skia/include/gpu/GrTypes.h b/gfx/skia/skia/include/gpu/GrTypes.h
---- a/gfx/skia/skia/include/gpu/GrTypes.h
-+++ b/gfx/skia/skia/include/gpu/GrTypes.h
-@@ -339,25 +339,22 @@ enum GrPixelConfig {
-     kPrivateConfig4_GrPixelConfig,
-     kPrivateConfig5_GrPixelConfig,
- 
-     kLast_GrPixelConfig = kPrivateConfig5_GrPixelConfig
- };
- static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
- 
- // Aliases for pixel configs that match skia's byte order.
--#ifndef SK_CPU_LENDIAN
--    #error "Skia gpu currently assumes little endian"
--#endif
- #if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
-     static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
- #elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
-     static const GrPixelConfig kSkia8888_GrPixelConfig = kRGBA_8888_GrPixelConfig;
- #else
--    #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
-+    static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
- #endif
- 
- /**
-  * Optional bitfield flags that can be set on GrSurfaceDesc (below).
-  */
- enum GrSurfaceFlags {
-     kNone_GrSurfaceFlags = 0x0,
-     /**
-diff --git a/gfx/skia/skia/src/core/SkColorData.h b/gfx/skia/skia/src/core/SkColorData.h
---- a/gfx/skia/skia/src/core/SkColorData.h
-+++ b/gfx/skia/skia/src/core/SkColorData.h
-@@ -27,27 +27,20 @@
-  *  For easier compatibility with Skia's GPU backend, we further restrict these
-  *  to either (in memory-byte-order) RGBA or BGRA. Note that this "order" does
-  *  not directly correspond to the same shift-order, since we have to take endianess
-  *  into account.
-  *
-  *  Here we enforce this constraint.
-  */
- 
--#ifdef SK_CPU_BENDIAN
--    #define SK_BGRA_B32_SHIFT   24
--    #define SK_BGRA_G32_SHIFT   16
--    #define SK_BGRA_R32_SHIFT   8
--    #define SK_BGRA_A32_SHIFT   0
--#else
--    #define SK_BGRA_B32_SHIFT   0
--    #define SK_BGRA_G32_SHIFT   8
--    #define SK_BGRA_R32_SHIFT   16
--    #define SK_BGRA_A32_SHIFT   24
--#endif
-+#define SK_BGRA_B32_SHIFT   0
-+#define SK_BGRA_G32_SHIFT   8
-+#define SK_BGRA_R32_SHIFT   16
-+#define SK_BGRA_A32_SHIFT   24
- 
- #if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
-     #error "can't define PMCOLOR to be RGBA and BGRA"
- #endif
- 
- #define LOCAL_PMCOLOR_SHIFTS_EQUIVALENT_TO_RGBA  \
-     (SK_A32_SHIFT == SK_RGBA_A32_SHIFT &&    \
-      SK_R32_SHIFT == SK_RGBA_R32_SHIFT &&    \
diff --git a/experimental/thunderbird/stab.h b/experimental/thunderbird/stab.h
deleted file mode 100644
index 6f70af39897aab1a344974a28d24a2b9ff75655a..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/stab.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*	$OpenBSD: stab.h,v 1.3 2003/06/02 19:34:12 millert Exp $	*/
-/*	$NetBSD: stab.h,v 1.4 1994/10/26 00:56:25 cgd Exp $	*/
-
-/*-
- * Copyright (c) 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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.
- *
- *	@(#)stab.h	5.2 (Berkeley) 4/4/91
- */
-
-#ifndef _STAB_H_
-#define _STAB_H_
-
-/*
- * The following are symbols used by various debuggers and by the Pascal
- * compiler.  Each of them must have one (or more) of the bits defined by
- * the N_STAB mask set.
- */
-
-#define	N_GSYM		0x20	/* global symbol */
-#define	N_FNAME		0x22	/* F77 function name */
-#define	N_FUN		0x24	/* procedure name */
-#define	N_STSYM		0x26	/* data segment variable */
-#define	N_LCSYM		0x28	/* bss segment variable */
-#define	N_MAIN		0x2a	/* main function name */
-#define	N_PC		0x30	/* global Pascal symbol */
-#define	N_RSYM		0x40	/* register variable */
-#define	N_SLINE		0x44	/* text segment line number */
-#define	N_DSLINE	0x46	/* data segment line number */
-#define	N_BSLINE	0x48	/* bss segment line number */
-#define	N_SSYM		0x60	/* structure/union element */
-#define	N_SO		0x64	/* main source file name */
-#define	N_LSYM		0x80	/* stack variable */
-#define	N_BINCL		0x82	/* include file beginning */
-#define	N_SOL		0x84	/* included source file name */
-#define	N_PSYM		0xa0	/* parameter variable */
-#define	N_EINCL		0xa2	/* include file end */
-#define	N_ENTRY		0xa4	/* alternate entry point */
-#define	N_LBRAC		0xc0	/* left bracket */
-#define	N_EXCL		0xc2	/* deleted include file */
-#define	N_RBRAC		0xe0	/* right bracket */
-#define	N_BCOMM		0xe2	/* begin common */
-#define	N_ECOMM		0xe4	/* end common */
-#define	N_ECOML		0xe8	/* end common (local name) */
-#define	N_LENG		0xfe	/* length of preceding entry */
-
-#endif /* !_STAB_H_ */
diff --git a/experimental/thunderbird/stackwalk-x86-ppc.patch b/experimental/thunderbird/stackwalk-x86-ppc.patch
deleted file mode 100644
index 5a4189847ef9006dc89bb6266b15a66985b3bd3f..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/stackwalk-x86-ppc.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- thunderbird-52.6.0/mozglue/misc/StackWalk.cpp
-+++ thunderbird-52.6.0/mozglue/misc/StackWalk.cpp
-@@ -41,13 +41,7 @@ static CriticalAddress gCriticalAddress;
- #define MOZ_STACKWALK_SUPPORTS_MACOSX 0
- #endif
- 
--#if (defined(linux) && \
--     ((defined(__GNUC__) && (defined(__i386) || defined(PPC))) || \
--      defined(HAVE__UNWIND_BACKTRACE)))
--#define MOZ_STACKWALK_SUPPORTS_LINUX 1
--#else
- #define MOZ_STACKWALK_SUPPORTS_LINUX 0
--#endif
- 
- #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1)
- #define HAVE___LIBC_STACK_END 1
diff --git a/experimental/thunderbird/thunderbird.desktop b/experimental/thunderbird/thunderbird.desktop
deleted file mode 100644
index 210859df01511f2191478c8b8844696ae12dd485..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/thunderbird.desktop
+++ /dev/null
@@ -1,64 +0,0 @@
-[Desktop Entry]
-Name=Thunderbird
-GenericName=Mail Client
-GenericName[ast]=Client de correu
-GenericName[ca]=Client de correu
-GenericName[cs]=Poštovní klient
-GenericName[da]=E-postklient
-GenericName[de]=E-Mail-Anwendung
-GenericName[el]=Λογισμικό αλληλογραφίας
-GenericName[es]=Cliente de correo
-GenericName[fi]=Sähköpostiohjelma
-GenericName[fr]=Client de messagerie
-GenericName[gl]=Cliente de correo electrónico
-GenericName[he]=לקוח דוא״ל
-GenericName[hr]=Klijent e-pošte
-GenericName[hu]=Levelezőkliens
-GenericName[it]=Client email
-GenericName[ja]=電子メールクライアント
-GenericName[ko]=메일 클라이언트
-GenericName[nl]=E-mailprogramma
-GenericName[pl]=Klient poczty
-GenericName[pt_BR]=Cliente de E-mail
-GenericName[ru]=Почтовый клиент
-GenericName[sk]=Poštový klient
-GenericName[ug]=ئېلخەت دېتالى
-GenericName[uk]=Поштова програма
-GenericName[vi]=Phần mềm khách quản lý thư điện tử
-GenericName[zh_CN]=邮件新闻客户端
-GenericName[zh_TW]=郵件用戶端
-Comment=Send and receive mail with Thunderbird
-Comment[ast]=Lleer y escribir corréu electrónicu
-Comment[ca]=Llegiu i escriviu correu
-Comment[cs]=Čtení a psaní pošty
-Comment[da]=Skriv/læs e-post/nyhedsgruppe med Mozilla Thunderbird
-Comment[de]=E-Mails und Nachrichten mit Thunderbird lesen und schreiben
-Comment[el]=Διαβάστε και γράψτε γράμματα με το Mozilla Thunderbird
-Comment[es]=Lea y escriba correos y noticias con Thunderbird
-Comment[fi]=Lue ja kirjoita sähköposteja
-Comment[fr]=Lire et écrire des courriels
-Comment[gl]=Lea e escriba correo electrónico
-Comment[he]=קריאה/כתיבה של דוא״ל/חדשות באמצעות Mozilla Thunderbird
-Comment[hr]=Čitajte/šaljite e-poštu s Thunderbird
-Comment[hu]=Levelek írása és olvasása a Thunderbirddel
-Comment[it]=Per leggere e scrivere email
-Comment[ja]=メールの読み書き
-Comment[ko]=Mozilla Thunderbird 메일/뉴스 읽기 및 쓰기 클라이언트
-Comment[nl]=E-mail/nieuws lezen en schrijven met Mozilla Thunderbird
-Comment[pl]=Czytanie i wysyłanie e-maili
-Comment[pt_BR]=Leia e escreva suas mensagens
-Comment[ru]=Читайте и пишите письма
-Comment[sk]=Čítajte a píšte poštu pomocou programu Thunderbird
-Comment[sv]=Läs och skriv e-post
-Comment[ug]=ئېلخەت ۋە خەۋەرلەرنى Mozilla Thunderbird دا كۆرۈش ۋە يېزىش
-Comment[uk]=Читання та написання листів
-Comment[vi]=Đọc và soạn thư điện tử
-Comment[zh_CN]=阅读邮件或新闻
-Comment[zh_TW]=以 Mozilla Thunderbird 讀寫郵件或新聞
-Exec=thunderbird %u
-Icon=thunderbird
-Terminal=false
-Type=Application
-MimeType=message/rfc822;x-scheme-handler/mailto;
-StartupNotify=true
-Categories=Network;Email;
diff --git a/experimental/thunderbird/webrtc-broken.patch b/experimental/thunderbird/webrtc-broken.patch
deleted file mode 100644
index 593942fef10d88354f4f229f4b7ca87df35fc988..0000000000000000000000000000000000000000
--- a/experimental/thunderbird/webrtc-broken.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur firefox-60.0.orig/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c firefox-60.0/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c
---- firefox-60.0.orig/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c	2018-05-13 17:33:55.266855917 -0700
-+++ firefox-60.0/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c	2018-05-13 20:21:08.158464933 -0700
-@@ -11,7 +11,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <features.h>
--#if __GLIBC_PREREQ(2, 16)
-+#if __linux__
- #include <sys/auxv.h>
- #else
- #include <fcntl.h>
-@@ -29,7 +29,7 @@
-   int architecture = 0;
-   unsigned long hwcap = 0;
-   const char* platform = NULL;
--#if __GLIBC_PREREQ(2, 16)
-+#if __linux__
-   hwcap = getauxval(AT_HWCAP);
-   platform = (const char*)getauxval(AT_PLATFORM);
- #else
-@@ -53,7 +53,7 @@
-     }
-     close(fd);
-   }
--#endif  // __GLIBC_PREREQ(2,16)
-+#endif  // __linux__
- #if defined(__aarch64__)
-   architecture = 8;
-   if ((hwcap & HWCAP_FP) != 0)
diff --git a/legacy/dbus-python/APKBUILD b/legacy/dbus-python/APKBUILD
deleted file mode 100644
index 58ff391ea82cfa07af9c105ad761e166c36404fb..0000000000000000000000000000000000000000
--- a/legacy/dbus-python/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=py-dbus
-pkgver=1.2.0
-pkgrel=3
-pkgdesc="Python bindings for DBUS"
-url="http://www.freedesktop.org/wiki/Software/DBusBindings"
-arch="all"
-license="GPL LGPL"
-depends="python3"
-depends_dev="py-dbus"
-makedepends="dbus-glib-dev python3-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://dbus.freedesktop.org/releases/dbus-python/dbus-python-$pkgver.tar.gz"
-
-builddir="$srcdir"/dbus-python-$pkgver
-
-prepare() {
-	cd "$builddir"
-	update_config_sub
-	default_prepare
-}
-
-build() {
-	cd "$builddir"
-	./configure \
-		--build=$CBUILD \
-		--host=$CHOST \
-		--prefix=/usr
-	make
-}
-
-check() {
-	cd "$builddir"
-	make test
-}
-
-package() {
-	cd "$builddir"
-	make DESTDIR="$pkgdir" install
-}
-
-md5sums="b09cd2d1a057cc432ce944de3fc06bf7  dbus-python-1.2.0.tar.gz"
-sha256sums="e12c6c8b2bf3a9302f75166952cbe41d6b38c3441bbc6767dbd498942316c6df  dbus-python-1.2.0.tar.gz"
-sha512sums="013b23e08fa1ed43f53a756587fefbc9770f7c51e93510e555acbd77230b7200693419bba9a69680d790bbaf123f4a195afa38b3eee1143da950fee0b5130bce  dbus-python-1.2.0.tar.gz"
diff --git a/legacy/dmenu/APKBUILD b/legacy/dmenu/APKBUILD
deleted file mode 100644
index 36c8441328056569cf96f452c6dcb6b7fb1ede98..0000000000000000000000000000000000000000
--- a/legacy/dmenu/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Eivind Uggedal <eivind@uggedal.com>
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Dan Theisen <djt@hxx.in>
-pkgname=dmenu
-pkgver=4.9
-pkgrel=0
-pkgdesc="Dynamic menu for X"
-url="https://tools.suckless.org/dmenu/"
-arch="all"
-options="!check"  # This package has no testsuite
-license="MIT OR X11"
-depends=""
-makedepends="libx11-dev libxinerama-dev libxft-dev"
-subpackages="$pkgname-doc"
-source="https://dl.suckless.org/tools/$pkgname-$pkgver.tar.gz"
-
-prepare() {
-	default_prepare
-	sed -i -e '/CFLAGS/{s/-Os//;s/=/+=/}' \
-		-e '/LDFLAGS/{s/-s//;s/=/+=/}' \
-		"$builddir"/config.mk
-}
-
-build() {
-	make X11INC=/usr/include/X11 \
-		X11LIB=/usr/lib/X11 \
-		FREETYPEINC=/usr/include/freetype2 \
-		-C "$builddir"
-}
-
-package() {
-	make DESTDIR=$pkgdir PREFIX=/usr \
-		-C "$builddir" install
-}
-
-sha512sums="c2779209fe012de8ca1cdd72923da6d594f4a8368c85c3c0e0afd4ae489a95fe0e6f05a947d115b6b389aa7170ab14c2c645a2031353b0a08f38327ab461fe65  dmenu-4.9.tar.gz"
diff --git a/legacy/fortify-headers/APKBUILD b/legacy/fortify-headers/APKBUILD
deleted file mode 100644
index 33ee4e3171adac116273d4867802d2c500fd5f72..0000000000000000000000000000000000000000
--- a/legacy/fortify-headers/APKBUILD
+++ /dev/null
@@ -1,18 +0,0 @@
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org>
-pkgname=fortify-headers
-pkgver=1.0
-pkgrel=0
-pkgdesc="libc-agnostic implementation of FORTIFY_SOURCE"
-url="https://git.2f30.org/fortify-headers/"
-arch="noarch"
-options="!check"  # No test suite.
-license="0BSD"
-source="https://dl.2f30.org/releases/$pkgname-$pkgver.tar.gz"
-
-package() {
-	cd "$builddir"
-	make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="085a725da9a6da0eea732ee77e3a3dc7d3c96bc3344172523db5f1e35391492910a050c15c560912115b2db916c2d6fa37e409e997c53399ee4fee912c5513e8  fortify-headers-1.0.tar.gz"
diff --git a/legacy/fortify-headers/extension-cpp-fix.patch b/legacy/fortify-headers/extension-cpp-fix.patch
deleted file mode 100644
index fc7bbb5f89f1729881ed4ea2fadd4c486447f094..0000000000000000000000000000000000000000
--- a/legacy/fortify-headers/extension-cpp-fix.patch
+++ /dev/null
@@ -1,175 +0,0 @@
-From a29bd89353a05454e2545d52124f9a1a61b4e3e3 Mon Sep 17 00:00:00 2001
-From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
-Date: Sat, 23 Jun 2018 17:57:48 -0500
-Subject: [PATCH] Don't use __extension__ in C++ code
-
-A few important notes:
-
-*  __extension__ is a GNU C "alternate" keyword, not a C++ keyword.[1]
-
-*  __extension__ is designed to work on "expressions"; it does work on
-   #include_next in C mode, but it has no effect in C++ mode; the
-   warning will still appear, if enabled, even with __extension__
-   preceding #include_next.  This is because #include_next is not
-   considered an expression in C++, so the compiler attaches
-   __extension__ to the first expression of the header.
-
-All of this leads us to a build failure while building at least all
-Mozilla software.  Moz has an alternate -isystem dir searched before
-/usr/include that overrides some headers, including <features.h>.  The
-first statement in each of these headers is a #pragma, and since
-__extension__ is looking for an expression, and #pragma is a "null"
-expression, we end up with the following error:
-
-dist/system_wrappers/features.h:1:9: error: '#pragma' is not allowed here
-
-Since __extension__ has no effect on #include_next in C++ mode anyway,
-and since it can cause breakage, this commit omits __extension__ in C++
-mode.
-
-[1]: https://gcc.gnu.org/onlinedocs/gcc-6.4.0/gcc/Alternate-Keywords.html
----
- include/poll.h       | 2 ++
- include/stdio.h      | 2 ++
- include/stdlib.h     | 4 ++++
- include/string.h     | 2 ++
- include/sys/select.h | 2 ++
- include/sys/socket.h | 2 ++
- include/unistd.h     | 2 ++
- include/wchar.h      | 8 ++++++++
- 8 files changed, 24 insertions(+)
-
-diff --git a/include/poll.h b/include/poll.h
-index 7b42866..24691f1 100644
---- a/include/poll.h
-+++ b/include/poll.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_POLL_H
- #define _FORTIFY_POLL_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <poll.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/stdio.h b/include/stdio.h
-index b67f9ce..a965184 100644
---- a/include/stdio.h
-+++ b/include/stdio.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_STDIO_H
- #define _FORTIFY_STDIO_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <stdio.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/stdlib.h b/include/stdlib.h
-index 7ff5746..ef70995 100644
---- a/include/stdlib.h
-+++ b/include/stdlib.h
-@@ -16,12 +16,16 @@
- #ifndef _FORTIFY_STDLIB_H
- #define _FORTIFY_STDLIB_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <stdlib.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
- #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <limits.h>
- #endif
- 
-diff --git a/include/string.h b/include/string.h
-index ff237b0..43c7485 100644
---- a/include/string.h
-+++ b/include/string.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_STRING_H
- #define _FORTIFY_STRING_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <string.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/sys/select.h b/include/sys/select.h
-index e4e398f..bcee8be 100644
---- a/include/sys/select.h
-+++ b/include/sys/select.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_SYS_SELECT_H
- #define _FORTIFY_SYS_SELECT_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <sys/select.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/sys/socket.h b/include/sys/socket.h
-index 7d3f023..ad6ab2d 100644
---- a/include/sys/socket.h
-+++ b/include/sys/socket.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_SYS_SOCKET_H
- #define _FORTIFY_SYS_SOCKET_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <sys/socket.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/unistd.h b/include/unistd.h
-index d3ab246..71dda84 100644
---- a/include/unistd.h
-+++ b/include/unistd.h
-@@ -16,7 +16,9 @@
- #ifndef _FORTIFY_UNISTD_H
- #define _FORTIFY_UNISTD_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <unistd.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-diff --git a/include/wchar.h b/include/wchar.h
-index 7394598..3cb6f92 100644
---- a/include/wchar.h
-+++ b/include/wchar.h
-@@ -16,13 +16,21 @@
- #ifndef _FORTIFY_WCHAR_H
- #define _FORTIFY_WCHAR_H
- 
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <limits.h>
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <stdlib.h>
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <string.h>
-+#ifndef __cplusplus
- __extension__
-+#endif
- #include_next <wchar.h>
- 
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
--- 
-2.15.0
-