diff options
-rw-r--r-- | user/erlang/APKBUILD | 8 | ||||
-rw-r--r-- | user/erlang/safe-signal-handling.patch | 22 |
2 files changed, 27 insertions, 3 deletions
diff --git a/user/erlang/APKBUILD b/user/erlang/APKBUILD index 278c66a5d..e24353ac0 100644 --- a/user/erlang/APKBUILD +++ b/user/erlang/APKBUILD @@ -1,7 +1,7 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=erlang -pkgver=21.2 +pkgver=22.0 pkgrel=0 pkgdesc="Soft real-time system programming language" url="https://www.erlang.org/" @@ -13,6 +13,7 @@ makedepends="flex libxml2-utils libxslt-dev m4 ncurses-dev openssl-dev perl subpackages="$pkgname-dev" source="http://erlang.org/download/otp_src_$pkgver.tar.gz fix-wx-linking.patch + safe-signal-handling.patch " builddir="$srcdir/otp_src_$pkgver" @@ -53,5 +54,6 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="5707ef0d49a9af12cd9d93c3e4fd200092773645838bbe0163782d0fa40562d2b48bdb07f0e650311bfec896ed9e3c9621b4d0ba114c578d7ca3209c2a96ac24 otp_src_21.2.tar.gz -5f1b05d8be71d5e3d7e8c5ad019329af8f68174251b5b6e0a9ee9cb3da51a10983b8696e23b3954c19de5d54783ec16f38c80c74724341dbafb22fcac83c77d4 fix-wx-linking.patch" +sha512sums="3f98697b59b33910fa461141fc4fe9635c4b6a53900dd90920add709dc10468aad7b9fde12419f05b27e038aee5a254319b1c5dc0e26ceabf29a7eb8020b5d23 otp_src_22.0.tar.gz +5f1b05d8be71d5e3d7e8c5ad019329af8f68174251b5b6e0a9ee9cb3da51a10983b8696e23b3954c19de5d54783ec16f38c80c74724341dbafb22fcac83c77d4 fix-wx-linking.patch +dc2fe08e40c73b48b356382c43c982f9f0091e601bbdf6e032358bd5c74c3573b423ef4df454b87c8534105fdbc19ce2245609cc7d5679109c15abaf56d3ef69 safe-signal-handling.patch" diff --git a/user/erlang/safe-signal-handling.patch b/user/erlang/safe-signal-handling.patch new file mode 100644 index 000000000..0996069ba --- /dev/null +++ b/user/erlang/safe-signal-handling.patch @@ -0,0 +1,22 @@ +--- otp-OTP-21.2.6.orig/erts/emulator/hipe/hipe_x86_signal.c ++++ otp-OTP-21.2.6/erts/emulator/hipe/hipe_x86_signal.c +@@ -159,16 +159,10 @@ + + #if !(defined(__GLIBC__) || defined(__DARWIN__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__sun__)) + /* +- * Unknown libc -- assume musl. Note: musl deliberately does not provide a musl-specific +- * feature test macro, so we cannot check for it. +- * +- * sigaction is a weak alias for __sigaction, which is a wrapper for __libc_sigaction. +- * There are libc-internal calls to __libc_sigaction which install handlers, so we must +- * override __libc_sigaction rather than __sigaction. ++ * Unknown libc -- assume musl. Also assume signal delivery on musl is safe. + */ +-#define NEXT_SIGACTION "__libc_sigaction" +-#define LIBC_SIGACTION __libc_sigaction +-#define OVERRIDE_SIGACTION ++#undef NEXT_SIGACTION ++#undef OVERRIDE_SIGACTION + #ifndef _NSIG + #define _NSIG NSIG + #endif |