summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2021-09-10 19:47:11 +0200
committerAndreas K. Hüttel <dilfridge@gentoo.org>2021-09-10 19:47:29 +0200
commita059ab8b138f7b4cc513b9fe30defe16ab71bf2d (patch)
treee41600b39ea5ff7a1872bc263f3069fe0238eb6f /dev-lang/polyml/files
parentnet-misc/iputils: make tests conditional (diff)
downloadgentoo-a059ab8b138f7b4cc513b9fe30defe16ab71bf2d.tar.gz
gentoo-a059ab8b138f7b4cc513b9fe30defe16ab71bf2d.tar.bz2
gentoo-a059ab8b138f7b4cc513b9fe30defe16ab71bf2d.zip
dev-lang/polyml: Version bump; fix glibc-2.34 build
Closes: https://bugs.gentoo.org/806350 Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Andreas K. Huettel <dilfridge@gentoo.org>
Diffstat (limited to 'dev-lang/polyml/files')
-rw-r--r--dev-lang/polyml/files/polyml-5.8.2-configure.patch12
-rw-r--r--dev-lang/polyml/files/polyml-5.8.2-glibc234.patch30
2 files changed, 42 insertions, 0 deletions
diff --git a/dev-lang/polyml/files/polyml-5.8.2-configure.patch b/dev-lang/polyml/files/polyml-5.8.2-configure.patch
new file mode 100644
index 000000000000..5fd1c30dac75
--- /dev/null
+++ b/dev-lang/polyml/files/polyml-5.8.2-configure.patch
@@ -0,0 +1,12 @@
+diff -ruN polyml-5.8.2.orig/configure.ac polyml-5.8.2/configure.ac
+--- polyml-5.8.2.orig/configure.ac 2021-05-02 13:53:42.000000000 +0200
++++ polyml-5.8.2/configure.ac 2021-09-10 19:29:27.370699622 +0200
+@@ -198,7 +198,7 @@
+ # Solaris needs -lsocket, -lnsl and -lrt
+ AC_SEARCH_LIBS([gethostbyname], [nsl])
+ AC_SEARCH_LIBS([getsockopt], [socket])
+- AC_SEARCH_LIBS([sem_wait], [rt])
++ AC_SEARCH_LIBS([sem_wait], [rt] [pthread])
+
+ # Check for X and Motif headers and libraries
+ AC_PATH_X
diff --git a/dev-lang/polyml/files/polyml-5.8.2-glibc234.patch b/dev-lang/polyml/files/polyml-5.8.2-glibc234.patch
new file mode 100644
index 000000000000..9636cc61f245
--- /dev/null
+++ b/dev-lang/polyml/files/polyml-5.8.2-glibc234.patch
@@ -0,0 +1,30 @@
+From 3e27444bea771e25102430bfa632edf8d106c91c Mon Sep 17 00:00:00 2001
+From: Jerry James <loganjerry@gmail.com>
+Date: Mon, 9 Aug 2021 15:37:39 -0600
+Subject: [PATCH] Adapt to nonconstant PTHREAD_STACK_MIN in glibc 2.34+
+
+---
+ libpolyml/sighandler.cpp | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/libpolyml/sighandler.cpp b/libpolyml/sighandler.cpp
+index fd6f6e3e..5d22b000 100644
+--- a/libpolyml/sighandler.cpp
++++ b/libpolyml/sighandler.cpp
+@@ -547,11 +547,11 @@ void SigHandler::Init(void)
+ pthread_attr_t attrs;
+ pthread_attr_init(&attrs);
+ #ifdef PTHREAD_STACK_MIN
+-#if (PTHREAD_STACK_MIN < 4096)
+- pthread_attr_setstacksize(&attrs, 4096); // But not too small: FreeBSD makes it 2k
+-#else
+- pthread_attr_setstacksize(&attrs, PTHREAD_STACK_MIN); // Only small stack.
+-#endif
++ // In glibc 2.34 and later, PTHREAD_STACK_MIN may expand to a function call
++ size_t stacksize = PTHREAD_STACK_MIN; // Only small stack.
++ if (stacksize < 4096U) // But not too small: FreeBSD makes it 2k
++ stacksize = 4096U;
++ pthread_attr_setstacksize(&attrs, stacksize);
+ #endif
+ threadRunning = pthread_create(&detectionThreadId, &attrs, SignalDetectionThread, 0) == 0;
+ pthread_attr_destroy(&attrs);