summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Rawlins <contact@romster.me>2021-10-16 17:32:17 +1100
committerDanny Rawlins <contact@romster.me>2021-10-16 17:32:17 +1100
commitdacfff851c9c8fe21296206ae8878b5d71108513 (patch)
tree2031c64d194687bf9bd9a90e93ab6f0e7663a7f1
parent061e6694f1912047a8d7398d0f60be425dd7e382 (diff)
downloadcompat-32-dacfff851c9c8fe21296206ae8878b5d71108513.tar.gz
compat-32-dacfff851c9c8fe21296206ae8878b5d71108513.tar.xz
libunwind-32: initial import
-rw-r--r--libunwind-32/.32bit0
-rw-r--r--libunwind-32/.footprint31
-rw-r--r--libunwind-32/.signature6
-rw-r--r--libunwind-32/Pkgfile21
-rw-r--r--libunwind-32/libunwind-1.5.0-x32.patch18
5 files changed, 76 insertions, 0 deletions
diff --git a/libunwind-32/.32bit b/libunwind-32/.32bit
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/libunwind-32/.32bit
diff --git a/libunwind-32/.footprint b/libunwind-32/.footprint
new file mode 100644
index 00000000..8003868a
--- /dev/null
+++ b/libunwind-32/.footprint
@@ -0,0 +1,31 @@
+drwxr-xr-x root/root usr/
+drwxr-xr-x root/root usr/include/
+-rw-r--r-- root/root usr/include/libunwind-x86.h
+drwxr-xr-x root/root usr/lib32/
+-rw-r--r-- root/root usr/lib32/libunwind-coredump.a
+-rwxr-xr-x root/root usr/lib32/libunwind-coredump.la
+lrwxrwxrwx root/root usr/lib32/libunwind-coredump.so -> libunwind-coredump.so.0.0.0
+lrwxrwxrwx root/root usr/lib32/libunwind-coredump.so.0 -> libunwind-coredump.so.0.0.0
+-rwxr-xr-x root/root usr/lib32/libunwind-coredump.so.0.0.0
+lrwxrwxrwx root/root usr/lib32/libunwind-generic.a -> libunwind-x86.a
+lrwxrwxrwx root/root usr/lib32/libunwind-generic.so -> libunwind-x86.so
+-rw-r--r-- root/root usr/lib32/libunwind-ptrace.a
+-rwxr-xr-x root/root usr/lib32/libunwind-ptrace.la
+lrwxrwxrwx root/root usr/lib32/libunwind-ptrace.so -> libunwind-ptrace.so.0.0.0
+lrwxrwxrwx root/root usr/lib32/libunwind-ptrace.so.0 -> libunwind-ptrace.so.0.0.0
+-rwxr-xr-x root/root usr/lib32/libunwind-ptrace.so.0.0.0
+-rw-r--r-- root/root usr/lib32/libunwind-x86.a
+-rwxr-xr-x root/root usr/lib32/libunwind-x86.la
+lrwxrwxrwx root/root usr/lib32/libunwind-x86.so -> libunwind-x86.so.8.0.1
+lrwxrwxrwx root/root usr/lib32/libunwind-x86.so.8 -> libunwind-x86.so.8.0.1
+-rwxr-xr-x root/root usr/lib32/libunwind-x86.so.8.0.1
+-rw-r--r-- root/root usr/lib32/libunwind.a
+-rwxr-xr-x root/root usr/lib32/libunwind.la
+lrwxrwxrwx root/root usr/lib32/libunwind.so -> libunwind.so.8.0.1
+lrwxrwxrwx root/root usr/lib32/libunwind.so.8 -> libunwind.so.8.0.1
+-rwxr-xr-x root/root usr/lib32/libunwind.so.8.0.1
+drwxr-xr-x root/root usr/lib32/pkgconfig/
+-rw-r--r-- root/root usr/lib32/pkgconfig/libunwind-coredump.pc
+-rw-r--r-- root/root usr/lib32/pkgconfig/libunwind-generic.pc
+-rw-r--r-- root/root usr/lib32/pkgconfig/libunwind-ptrace.pc
+-rw-r--r-- root/root usr/lib32/pkgconfig/libunwind.pc
diff --git a/libunwind-32/.signature b/libunwind-32/.signature
new file mode 100644
index 00000000..32028aa8
--- /dev/null
+++ b/libunwind-32/.signature
@@ -0,0 +1,6 @@
+untrusted comment: verify with /etc/ports/compat-32.pub
+RWSwxGo/zH7eXQ/9gk0flL3mo6yR3TETcYU5Z8/f/3j5lfs8LgDJ3v9g9uWTWyNO9fbKTnwHBYoZGrsw9Ec+fICHgLL7mZVL3QY=
+SHA256 (Pkgfile) = d52cee2f57496d0b4cb995033e9f64259dd035bd15b99e6058a519007c4ff738
+SHA256 (.footprint) = bf0220a90672008d1503cf92c2e998b4e2f3df0985a4e4713077bd9dd265d2a4
+SHA256 (libunwind-1.5.0.tar.gz) = 90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017
+SHA256 (libunwind-1.5.0-x32.patch) = 46ff08378d2ed0333c78dccc8c6285ea31be0a8c085b2d452d5740838fc3327b
diff --git a/libunwind-32/Pkgfile b/libunwind-32/Pkgfile
new file mode 100644
index 00000000..6caf0785
--- /dev/null
+++ b/libunwind-32/Pkgfile
@@ -0,0 +1,21 @@
+# Description: Portable and efficient API to determine the call-chain of a program
+# URL: https://savannah.nongnu.org/projects/libunwind
+# Maintainer: Danny Rawlins, crux at romster dot me
+# Depends on: libunwind
+
+name=libunwind-32
+version=1.5.0
+release=1
+source=(https://download.savannah.gnu.org/releases/libunwind/libunwind-$version.tar.gz
+ libunwind-1.5.0-x32.patch)
+
+build() {
+ cd libunwind-$version
+ patch -p1 -i $SRC/libunwind-1.5.0-x32.patch
+ ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+ make
+ make DESTDIR=$PKG install
+
+ find $PKG/usr/include -type f ! -name libunwind-x86.h -delete
+}
diff --git a/libunwind-32/libunwind-1.5.0-x32.patch b/libunwind-32/libunwind-1.5.0-x32.patch
new file mode 100644
index 00000000..cad60a78
--- /dev/null
+++ b/libunwind-32/libunwind-1.5.0-x32.patch
@@ -0,0 +1,18 @@
+https://github.com/libunwind/libunwind/issues/264
+
+From a716a18c0c2a089c55d83b067071a4cfc47e8a35 Mon Sep 17 00:00:00 2001
+From: kasperk81 <83082615+kasperk81@users.noreply.github.com>
+Date: Wed, 30 Jun 2021 23:23:22 +0000
+Subject: [PATCH] Fix -mx32 compilation error
+
+--- a/src/x86_64/Gos-linux.c
++++ b/src/x86_64/Gos-linux.c
+@@ -149,7 +149,7 @@ x86_64_sigreturn (unw_cursor_t *cursor)
+ __asm__ __volatile__ ("mov %0, %%rsp;"
+ "mov %1, %%rax;"
+ "syscall"
+- :: "r"(sc), "i"(SYS_rt_sigreturn)
++ :: "r"((uint64_t)sc), "i"(SYS_rt_sigreturn)
+ : "memory");
+ abort();
+ }

Generated by cgit