Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2018-09-12 08:15:34 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2018-09-12 08:15:34 +0200
commit6bb6622f443ff1f46512b1cad643f9e135f8b9fe (patch)
treec1f05cc8532c219cc995baf1f9331fdecbb65a39 /extra
parentbfa2db7ade84ab233e71e793a103c2d13dac8ed3 (diff)
parente5acfcc84bbd5675ccea666b453a0e5b5645ea08 (diff)
Merge branch 'master' into i486
Diffstat (limited to 'extra')
-rw-r--r--extra/firefox/PKGBUILD2
-rw-r--r--extra/linux-pae/PKGBUILD6
-rw-r--r--extra/linux-pae/config2
-rw-r--r--extra/sbcl/PKGBUILD7
-rw-r--r--extra/sbcl/x86-linux-os.patch112
-rw-r--r--extra/thunderbird/PKGBUILD2
6 files changed, 125 insertions, 6 deletions
diff --git a/extra/firefox/PKGBUILD b/extra/firefox/PKGBUILD
index 8eba80f3..a0a94a98 100644
--- a/extra/firefox/PKGBUILD
+++ b/extra/firefox/PKGBUILD
@@ -1,6 +1,6 @@
eval "$(
declare -f build | \
sed '
- 2 a export LDFLAGS+=" -Wl,--no-keep-memory"
+ /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk
'
)"
diff --git a/extra/linux-pae/PKGBUILD b/extra/linux-pae/PKGBUILD
index 27d89ae1..62c65f1f 100644
--- a/extra/linux-pae/PKGBUILD
+++ b/extra/linux-pae/PKGBUILD
@@ -4,7 +4,7 @@
# Maintainer: Thomas Baechler <thomas@archlinux.org>
pkgbase=linux-pae # Build stock -ARCH kernel
-pkgver='4.18.6'
+pkgver='4.18.7'
_srcname=linux-${pkgver}
pkgrel='1'
arch=('i686')
@@ -24,9 +24,9 @@ validpgpkeys=(
'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
'647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
)
-sha256sums=('05db97fd6891217af6d4203bdc442ef2af78d7902b6a8e9bd348682704c22894'
+sha256sums=('f03b425e262a71e5079736706233a4e9afaf77c8462b552b4d6db2d33f5af731'
'SKIP'
- 'af0060a53e75f3c6ca348a5ef8317a5908bb9d1d7ab2434ca9142d91309a0290'
+ '2675d556a3ab58a9ab24e220d6b495b14717ebd9070aea250278548cb1427e2b'
'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21'
'75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919'
'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65'
diff --git a/extra/linux-pae/config b/extra/linux-pae/config
index 4fbfec7e..ad3ba813 100644
--- a/extra/linux-pae/config
+++ b/extra/linux-pae/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.18.6-1 Kernel Configuration
+# Linux/x86 4.18.7-1 Kernel Configuration
#
#
diff --git a/extra/sbcl/PKGBUILD b/extra/sbcl/PKGBUILD
new file mode 100644
index 00000000..0034df83
--- /dev/null
+++ b/extra/sbcl/PKGBUILD
@@ -0,0 +1,7 @@
+source+=('x86-linux-os.patch')
+sha256sums+=('3ba738c461a8836171b424b5881ad5aaa63071f54bc5d207e72cae4c1be3738a')
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i ../x86-linux-os.patch
+}
diff --git a/extra/sbcl/x86-linux-os.patch b/extra/sbcl/x86-linux-os.patch
new file mode 100644
index 00000000..c1fd12b7
--- /dev/null
+++ b/extra/sbcl/x86-linux-os.patch
@@ -0,0 +1,112 @@
+--- sbcl-1.4.10/src/runtime/x86-linux-os.c.orig 2018-09-07 03:07:10.927918139 +0000
++++ sbcl-1.4.10/src/runtime/x86-linux-os.c 2018-09-07 03:05:10.471896471 +0000
+@@ -45,73 +45,43 @@
+ #include <linux/version.h>
+ #include "thread.h" /* dynamic_values_bytes */
+
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
+-#define user_desc modify_ldt_ldt_s
+-#endif
+-
+-static inline int modify_ldt(int func, void *ptr, unsigned long bytecount)
++static inline int set_thread_area(struct user_desc *u_info)
+ {
+- return syscall(SYS_modify_ldt, func, ptr, bytecount);
++ return syscall(SYS_set_thread_area, u_info);
+ }
+
+ #include "validate.h"
+ size_t os_vm_page_size;
+
+-u32 local_ldt_copy[LDT_ENTRIES*LDT_ENTRY_SIZE/sizeof(u32)];
+-
+-/* This is never actually called, but it's great for calling from gdb when
+- * users have thread-related problems that maintainers can't duplicate */
+-
+-void debug_get_ldt()
+-{
+- int n=modify_ldt (0, local_ldt_copy, sizeof local_ldt_copy);
+- printf("%d bytes in ldt: print/x local_ldt_copy\n", n);
+-}
+-
+-#ifdef LISP_FEATURE_SB_THREAD
+-pthread_mutex_t modify_ldt_lock = PTHREAD_MUTEX_INITIALIZER;
+-#endif
+-
+ int arch_os_thread_init(struct thread *thread) {
+ stack_t sigstack;
+ #ifdef LISP_FEATURE_SB_THREAD
+- struct user_desc ldt_entry = {
+- 1, 0, 0, /* index, address, length filled in later */
+- 1, MODIFY_LDT_CONTENTS_DATA, 0, 0, 0, 1
++ struct user_desc desc = {
++ 0, (unsigned long) thread, dynamic_values_bytes,
++ 1, 0, 0, 1, 0, 1
+ };
+- int n;
+- thread_mutex_lock(&modify_ldt_lock);
+- n=modify_ldt(0,local_ldt_copy,sizeof local_ldt_copy);
+- /* get next free ldt entry */
+-
+- if(n) {
+- u32 *p;
+- for(n=0,p=local_ldt_copy;*p;p+=LDT_ENTRY_SIZE/sizeof(u32))
+- n++;
+- }
+- ldt_entry.entry_number=n;
+- ldt_entry.base_addr=(unsigned long) thread;
+- ldt_entry.limit=dynamic_values_bytes;
+- ldt_entry.limit_in_pages=0;
+- if (modify_ldt (1, &ldt_entry, sizeof (ldt_entry)) != 0) {
+- thread_mutex_unlock(&modify_ldt_lock);
+- /* modify_ldt call failed: something magical is not happening */
++
++ static int entry_number = -1;
++
++ desc.entry_number = entry_number;
++
++ if (set_thread_area(&desc) != 0) {
+ return 0;
+ }
++
++ entry_number = desc.entry_number;
++
+ __asm__ __volatile__ ("movw %w0, %%fs" : : "q"
+- ((n << 3) /* selector number */
+- + (1 << 2) /* TI set = LDT */
+- + 3)); /* privilege level */
+- thread->tls_cookie=n;
+- pthread_mutex_unlock(&modify_ldt_lock);
++ ((entry_number << 3) + 3));
+
+- if(n<0) return 0;
++ if(entry_number < 0) return 0;
+ #ifdef LISP_FEATURE_GCC_TLS
+ current_thread = thread;
+ #else
+ pthread_setspecific(specials,thread);
+ #endif
+ #endif
++
+ #ifdef LISP_FEATURE_C_STACK_IS_CONTROL_STACK
+ /* Signal handlers are run on the control stack, so if it is exhausted
+ * we had better use an alternate stack for whatever signal tells us
+@@ -136,17 +106,7 @@
+ */
+
+ int arch_os_thread_cleanup(struct thread *thread) {
+- struct user_desc ldt_entry = {
+- 0, 0, 0,
+- 0, MODIFY_LDT_CONTENTS_DATA, 0, 0, 0, 0
+- };
+- int result;
+-
+- ldt_entry.entry_number=thread->tls_cookie;
+- thread_mutex_lock(&modify_ldt_lock);
+- result = modify_ldt(1, &ldt_entry, sizeof (ldt_entry));
+- thread_mutex_unlock(&modify_ldt_lock);
+- return result;
++ return 1;
+ }
+
+
diff --git a/extra/thunderbird/PKGBUILD b/extra/thunderbird/PKGBUILD
index 8eba80f3..a0a94a98 100644
--- a/extra/thunderbird/PKGBUILD
+++ b/extra/thunderbird/PKGBUILD
@@ -1,6 +1,6 @@
eval "$(
declare -f build | \
sed '
- 2 a export LDFLAGS+=" -Wl,--no-keep-memory"
+ /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk
'
)"