[polymake/f21] Rebuild for eigen3 3.2.3.

Jerry James jjames at fedoraproject.org
Mon Jan 19 20:58:46 UTC 2015


commit 9a89e9a954f8b439eceb66812cb1d633ad3911ed
Author: Jerry James <jamesjer at betterlinux.com>
Date:   Mon Jan 19 13:58:39 2015 -0700

    Rebuild for eigen3 3.2.3.
    
    Also:
    - Add -exit patch to fix crash on exit.

 polymake-exit.patch |   34 ++++++++++++++++++++++++++++++++++
 polymake.spec       |   13 ++++++++++---
 2 files changed, 44 insertions(+), 3 deletions(-)
---
diff --git a/polymake-exit.patch b/polymake-exit.patch
new file mode 100644
index 0000000..03b5b73
--- /dev/null
+++ b/polymake-exit.patch
@@ -0,0 +1,34 @@
+--- ./lib/callable/src/perl/Main.cc.orig	2014-04-04 12:57:29.000000000 -0600
++++ ./lib/callable/src/perl/Main.cc	2015-01-19 12:30:00.000000000 -0700
+@@ -37,6 +37,7 @@ namespace {
+ 
+ const char globalScope[]="Polymake::Scope";
+ 
++static bool need_cleanup;
+ GV *globalScope_gv=NULL;
+ 
+ void destroy_perl(pTHXx)
+@@ -54,13 +55,14 @@ PerlInterpreter *static_perl = NULL;
+ void emergency_cleanup() __attribute__((destructor));
+ void emergency_cleanup()
+ {
+-   if (PL_curinterp) {
++   if (PL_curinterp && need_cleanup) {
+ #ifdef PERL_IMPLICIT_CONTEXT
+       dTHX;
+       destroy_perl(aTHX);
+ #else
+       destroy_perl(static_perl);
+ #endif
++      need_cleanup = false;
+    }
+ }
+ 
+@@ -158,6 +160,7 @@ Main::Main(const std::string& user_opts,
+    pTHXx = perl_alloc();
+    PL_perl_destruct_level = 1;
+    perl_construct(aTHXx);
++   need_cleanup = true;
+    PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
+    if (perl_parse(aTHXx, xs_init, argc, (char**)argv, *env)) {
+       destroy_perl(aTHXx);
diff --git a/polymake.spec b/polymake.spec
index 31a2e17..8523451 100644
--- a/polymake.spec
+++ b/polymake.spec
@@ -15,7 +15,7 @@
 
 Name:           polymake
 Version:        2.13
-Release:        11%{?svndate:.svn%{svndate}}%{?dist}
+Release:        12%{?svndate:.svn%{svndate}}%{?dist}
 Summary:        Algorithms on convex polytopes and polyhedra
 
 License:        GPLv2+
@@ -35,11 +35,13 @@ Patch0:         %{name}-fedora.patch
 Patch1:         %{name}-lrslib.patch
 # Avoid -Werror=format-security failures.
 Patch2:         %{name}-format.patch
-# Fedora-specific patch.  Upstream code is written for Singular-3-1-6 + git,
-# but we have vanilla Singular-3-1-6.  This patch adapts to the older Singular.
+# Fedora-specific patch.  Upstream code is written for Singular-3-1-7, but we
+# have Singular-3-1-6.  This patch adapts to the older Singular.
 Patch3:         %{name}-singular.patch
 # Adapt to libnormaliz 2.11
 Patch4:         %{name}-libnormaliz.patch
+# Fix a crash on exit
+Patch5:         %{name}-exit.patch
 
 BuildRequires:  bliss-devel
 BuildRequires:  boost-devel
@@ -137,6 +139,7 @@ This package contains documentation for %{name}.
 %patch2
 %patch3
 %patch4
+%patch5
 
 fixtimestamp() {
   touch -r $1.orig $1
@@ -260,6 +263,10 @@ sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/singular/conf.make
 %doc doc/*
 
 %changelog
+* Mon Jan 19 2015 Jerry James <loganjerry at gmail.com> - 2.13-12
+- Rebuild for eigen3 3.2.3
+- Add -exit patch to fix crash on exit
+
 * Mon Nov 10 2014 Jerry James <loganjerry at gmail.com> - 2.13-11
 - Rebuild with Singular support
 


More information about the scm-commits mailing list