libunwind-32: initial import

This commit is contained in:
Danny Rawlins 2021-10-16 17:32:17 +11:00
parent 061e6694f1
commit dacfff851c
5 changed files with 76 additions and 0 deletions

0
libunwind-32/.32bit Normal file
View File

31
libunwind-32/.footprint Normal file
View File

@ -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

6
libunwind-32/.signature Normal file
View File

@ -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

21
libunwind-32/Pkgfile Normal file
View File

@ -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
}

View File

@ -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();
}