Files
loongoffice/external/python3/i100492-freebsd.patch.1
Michael Stahl b10be5d484 python3: upgrade to release 3.7.6
* external/python3/python-3.3.3-aix.patch.1:
  most of it doesn't apply and AIX port isn't maintained anyway so
  remove it for now
* external/python3/ubsan.patch.0:
  apparently one of the files was removed
* 0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1:
  fixed upstream
* python3-osx-avoid-new-10.13.patch.1:
  replace with simply passing ac_cv_func_utimensat=no to configure
* external/python3/python-3.5.4-ssl.patch.1:
  project files to build OpenSSL removed upstream
* There have been changes to how python locates OpenSSL; new variables
  OPENSSL_INCLUDES etc; it turns out that you have to pass one directory
  to --with-openssl, as the variables cannot be passed
* libuuid.so.1 is a new dependency of the _uuid module
* libffi.so.6 is a new dependency of the _ctypes module (the bundled
  copy of libffi for non-Darwin platforms was removed)
* python-3.3.0-pythreadstate.patch.1:
  the PyThreadState functions have been changed such that
  CppunitTest_services asserts when there is a PyThreadAttach on top of
  PyThreadDetach on top of PyThreadAttach, i.e., 2 PyThreadState per
  thread (PyGILState_Check() fails).  Instead of patching in additional
  workarounds, change PyThreadAttach so that it re-uses an existing
  PyThreadState if one exists for the thread.

Change-Id: I24c19d79b43a30709261fd9db66312b2e3872fd9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/84765
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-01-08 10:22:17 +01:00

36 lines
1.0 KiB
Groff

FreeBSD porting fixes, patch by maho@openoffice.org
--- Python-3.3.0/Python/thread_pthread.h 2012-11-28 09:00:41.097955124 +0000
+++ Python-3.3.0/Python/thread_pthread.h 2012-11-28 09:01:13.018329351 +0000
@@ -186,6 +189,9 @@
{
pthread_t th;
int status;
+#ifdef __FreeBSD__
+ sigset_t set, oset;
+#endif
#if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
pthread_attr_t attrs;
#endif
@@ -214,6 +220,10 @@
callback->func = func;
callback->arg = arg;
+#ifdef __FreeBSD__
+ sigfillset(&set);
+ SET_THREAD_SIGMASK(SIG_BLOCK, &set, &oset);
+#endif
status = pthread_create(&th,
#if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
&attrs,
@@ -225,6 +234,9 @@
#endif
pythread_wrapper, callback);
+#ifdef __FreeBSD__
+ SET_THREAD_SIGMASK(SIG_SETMASK, &oset, NULL);
+#endif
#if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
pthread_attr_destroy(&attrs);
#endif