From 8897c67adb79bd2cbb1ee414cf2c7875b47a5299 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Aug 26 2015 18:53:53 +0000 Subject: 2.15-beta2 --- diff --git a/.gitignore b/.gitignore index ec5b3d4..1f2ef7e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /polymake-polymake-10d8dab.tar.gz +/polymake-2.15-beta2.tar.bz2 diff --git a/polymake-2.14-format.patch b/polymake-2.14-format.patch new file mode 100644 index 0000000..b29c918 --- /dev/null +++ b/polymake-2.14-format.patch @@ -0,0 +1,12 @@ +diff -up ./lib/core/src/perl/RefHash.xs.orig ./lib/core/src/perl/RefHash.xs +--- ./lib/core/src/perl/RefHash.xs.orig 2015-08-10 13:59:14.436118422 -0400 ++++ ./lib/core/src/perl/RefHash.xs 2015-08-10 13:59:59.358788890 -0400 +@@ -88,7 +88,7 @@ SV* ref2key(SV *keysv, tmp_keysv *tmp_ke + } \ + } STMT_END + +-static char err_ref[]="Reference as a key in a normal hash"; ++static const char err_ref[]="Reference as a key in a normal hash"; + + static inline + int ref_key_allowed(HV* class) diff --git a/polymake-2.14-gcc5.patch b/polymake-2.14-gcc5.patch new file mode 100644 index 0000000..6de8d9a --- /dev/null +++ b/polymake-2.14-gcc5.patch @@ -0,0 +1,61 @@ +diff -up ./apps/graph/src/Makefile.inc.gcc5 ./apps/graph/src/Makefile.inc +--- ./apps/graph/src/Makefile.inc.gcc5 2015-03-04 07:51:50.000000000 -0500 ++++ ./apps/graph/src/Makefile.inc 2015-08-10 14:08:20.317114094 -0400 +@@ -1,4 +1,4 @@ +-ifneq ($(filter 4.8% 4.9%,${GCCversion}),) ++ifneq ($(filter 4.8% 4.9% 5%,${GCCversion}),) + bipartite_signature$O : ExtraCXXFLAGS += -O1 + endif + +diff -up ./lib/core/include/perl/Value.h.gcc5 ./lib/core/include/perl/Value.h +--- ./lib/core/include/perl/Value.h.gcc5 2015-03-04 07:51:50.000000000 -0500 ++++ ./lib/core/include/perl/Value.h 2015-08-10 14:08:20.317114094 -0400 +@@ -655,7 +655,7 @@ protected: + , options(value_not_trusted) + {} + +- static const char* frame_lower_bound(); ++ static bool not_on_stack(const char *val, const char *fup); + + bool is_defined() const; + bool is_TRUE() const; +@@ -1044,9 +1044,8 @@ public: + typedef typename object_traits::persistent_type Persistent; + if (type_cache::magic_allowed(prescribed_pkg)) { + if (fup && !object_traits::is_lazy) { +- const char* const flo=frame_lower_bound(); + const char* const val=reinterpret_cast(&x); +- if ((val(), bool2type::is_lazy>(), identical()); + } +@@ -1114,9 +1113,8 @@ public: + typename enable_if::value>::type + put_lval(const Source& x, const char* fup, int, const Value* owner, OwnerType*) + { +- const char* const flo=frame_lower_bound(); + const char* const val=reinterpret_cast(&x); +- Anchor* anchor=store_primitive_ref(x, type_cache::get_descr(), (val::get_descr(), not_on_stack(val,fup)); + if (owner) get_temp(); + return anchor; + } +diff -up ./lib/core/src/perl/RefHash.xs.gcc5 ./lib/core/src/perl/RefHash.xs +diff -up ./lib/core/src/perl/Value.cc.gcc5 ./lib/core/src/perl/Value.cc +--- ./lib/core/src/perl/Value.cc.gcc5 2015-03-04 07:51:50.000000000 -0500 ++++ ./lib/core/src/perl/Value.cc 2015-08-10 14:08:20.318114087 -0400 +@@ -283,11 +283,10 @@ void ListReturn::upgrade(int size) + EXTEND(SP, size); + } + +-const char* Value::frame_lower_bound() ++bool Value::not_on_stack(const char *val, const char *fup) + { + char c=0; +- const char* flo=&c; +- return flo; ++ return (val<&c) == (val{lrs}) and $lrs_path ne "bundled") { + my $lrs_inc="$lrs_path/include"; +- my $lrs_lib=Polymake::Configure::get_libdir($lrs_path, "lrs"); +- if (-f "$lrs_inc/lrslib.h" && -f "$lrs_lib/liblrsgmp.$Config::Config{so}" ) { ++ if (-f "$lrs_inc/lrslib.h") { + $CXXflags="-I$lrs_inc"; +- $LDflags="-L$lrs_lib -Wl,-rpath,$lrs_lib"; +- } elsif (-f "$lrs_inc/lrslib.h" && -f "$lrs_lib/liblrsgmp.a" ) { +- $CXXflags="-I$lrs_inc"; +- $LDflags="-L$lrs_lib"; +- } else { +- die "Invalid installation location of lrslib: header file lrslib.h and/or library liblrsgmp.$Config::Config{so} / liblrsgmp.a not found\n"; ++ } elsif (-f "$lrs_inc/lrslib/lrslib.h") { ++ # This is for fedora where the includes are moved to a subdirectory ++ $CXXflags = "-I$lrs_inc/lrslib"; ++ } ++ my $lrs_lib=Polymake::Configure::get_libdir($lrs_path, "lrsgmp"); ++ if (-f "$lrs_lib/liblrsgmp.$Config::Config{so}" ) { ++ $LDflags = "-L$lrs_lib"; ++ $LDflags .= " -Wl,-rpath,$lrs_lib" unless ($lrs_path eq "/usr"); ++ } ++ ++ if (!$CXXflags or !$LDflags) { ++ die "Invalid installation location of lrslib: header file lrslib.h and/or library liblrsgmp.$Config::Config{so} not found.\n", ++ "You might try to use --with-lrs-include and --with-lrs-lib.\n"; + } + $LrsCflags = $CXXflags; + } + ++ if (defined (my $lrs_inc=$options->{'lrs-include'})) { ++ $CXXflags="-I$lrs_inc"; ++ $cdd_path .= "include: $lrs_inc "; ++ } ++ if (defined ($cdd_lib=$options->{'lrs-lib'})) { ++ $LDflags = "-L$lrs_lib -Wl,-rpath,$lrs_lib"; ++ $cdd_path .= "lib: $lrs_lib"; ++ } ++ + if ($lrs_path ne "bundled") { + my $error=Polymake::Configure::build_test_program(<<'---', Libs => "-llrsgmp -lgmp", CXXflags => "$CXXflags", LDflags => "$LDflags"); + #include diff --git a/polymake-2.15-fedora.patch b/polymake-2.15-fedora.patch new file mode 100644 index 0000000..021546f --- /dev/null +++ b/polymake-2.15-fedora.patch @@ -0,0 +1,126 @@ +diff -up polymake-2.15-beta2/bundled/group/apps/polytope/src/Makefile.inc.fedora polymake-2.15-beta2/bundled/group/apps/polytope/src/Makefile.inc +--- polymake-2.15-beta2/bundled/group/apps/polytope/src/Makefile.inc.fedora 2015-08-26 09:21:17.527018401 -0400 ++++ polymake-2.15-beta2/bundled/group/apps/polytope/src/Makefile.inc 2015-08-26 09:23:11.372298151 -0400 +@@ -1,15 +1,11 @@ + ifeq (${ImportedIntoExtension},) +- StaticLibs := sympol ++ # StaticLibs := sympol + +- sympol_interface$O : ExtraCXXFLAGS += -I${ExtensionTop}/external/sympol +- sympol_raycomputation_beneathbeyond$O : ExtraCXXFLAGS += -I${ExtensionTop}/external/sympol +- sympol_raycomputation_ppl$O : ExtraCXXFLAGS += -I${ExtensionTop}/external/sympol ++ sympol_interface$O : ExtraCXXFLAGS += -I/usr/include/sympol ++ sympol_raycomputation_beneathbeyond$O : ExtraCXXFLAGS += -I/usr/include/sympol ++ sympol_raycomputation_ppl$O : ExtraCXXFLAGS += -I/usr/include/sympol + +- LIBS += ${BuildDir}/staticlib/sympol/libsympol$A $(subst %A,${A},${CddLib} ${LrsLib}) +-endif +- +-ifneq ($(filter 4.4%,${GCCversion}),) +- universal_polytope_ilps$O : ExtraCXXFLAGS += -O1 ++ LIBS += -lsympol -lcddgmp + endif + + # Local Variables: +diff -up polymake-2.15-beta2/bundled/group/configure.pl.fedora polymake-2.15-beta2/bundled/group/configure.pl +--- polymake-2.15-beta2/bundled/group/configure.pl.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/group/configure.pl 2015-08-26 09:21:17.527018401 -0400 +@@ -28,7 +28,7 @@ sub proceed { + my ($options)=@_; + my $boost_path; + # everything can include permlib headers +- $CXXflags='-I${ExtensionTop}/external/permlib/include'; ++ $CXXflags='-I/usr/include/permlib'; + + if (defined ($boost_path=$options->{boost})) { + $boost_path .= '/include' if (-d "$boost_path/include/boost"); +diff -up polymake-2.15-beta2/bundled/group/staticlib/sympol/Makefile.inc.fedora polymake-2.15-beta2/bundled/group/staticlib/sympol/Makefile.inc +--- polymake-2.15-beta2/bundled/group/staticlib/sympol/Makefile.inc.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/group/staticlib/sympol/Makefile.inc 2015-08-26 09:21:17.527018401 -0400 +@@ -5,7 +5,7 @@ src := $(ExtensionTop)/external/sympol/s + vpath %.cpp $(src) + + +-libsympol : ExtraCXXFLAGS := -I$(ExtensionTop)/external/permlib/include -I$(ExtensionTop)/external/sympol/sympol $(LrsCflags) -DGMP -DLRS_QUIET $(CddCflags) -DGMPRATIONAL ++libsympol : ExtraCXXFLAGS := -I/usr/include/permlib -I/usr/include/sympol $(LrsCflags) -DGMP -DLRS_QUIET $(CddCflags) -DGMPRATIONAL + + # Local Variables: + # mode: Makefile +diff -up polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/Makefile.inc.fedora polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/Makefile.inc +--- polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/Makefile.inc.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/Makefile.inc 2015-08-26 09:21:17.528018396 -0400 +@@ -1,4 +1,5 @@ +- ExtraCXXFLAGS = -I$(ExtensionTop)/external/libnormaliz ++ ExtraCXXFLAGS = -I/usr/include/libnormaliz ++ LIBS += -lnormaliz + + # Local Variables: + # mode: Makefile +diff -up polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/normaliz.cc.fedora polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/normaliz.cc +--- polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/normaliz.cc.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/libnormaliz/apps/polytope/src/normaliz.cc 2015-08-26 09:21:17.528018396 -0400 +@@ -36,7 +36,7 @@ namespace libnormaliz { + } + } + +-#include "libnormaliz-all.cpp" ++#include + + namespace libnormaliz { + template<> inline long explicit_cast_to_long(const pm::Integer& a) { +diff -up polymake-2.15-beta2/perl/polymake-config.fedora polymake-2.15-beta2/perl/polymake-config +--- polymake-2.15-beta2/perl/polymake-config.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/perl/polymake-config 2015-08-26 09:21:17.528018396 -0400 +@@ -125,9 +125,6 @@ while (defined ($_=shift)) { + + } elsif ($_ eq "--ldflags") { + my $ldflags=$conf{LDflags}; +- if ($ldflags !~ /(?:^|\s)-L$conf{InstallLib}(?:\s|$)/) { +- $ldflags="-L$conf{InstallLib} $ldflags"; +- } + my $add_rpath=1; + open CF, ">$tmpfile.cc" or die "can't create temporary file $tmpfile.cc: $!\n"; + print CF "int main() { return 0; }\n"; +@@ -145,8 +142,6 @@ while (defined ($_=shift)) { + close CC; + if ($^O eq "darwin") { + $ldflags="$conf{ARCHFLAGS} $ldflags -flat_namespace"; +- } elsif ($add_rpath) { +- $ldflags.=" -Wl,-rpath,$conf{InstallLib}"; + } + $ldflags=~s/^\s+//; $ldflags=~s/\s+$//; $ldflags=~s/\s{2,}/ /g; + if ($debug_asked=defined($debug)) { +diff -up polymake-2.15-beta2/support/configure.pl.fedora polymake-2.15-beta2/support/configure.pl +--- polymake-2.15-beta2/support/configure.pl.fedora 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/support/configure.pl 2015-08-26 09:21:17.528018396 -0400 +@@ -388,7 +388,7 @@ if (defined $CC) { + print "ok ($CXX is ", defined($GCCversion) ? "GCC $GCCversion" : defined($CLANGversion) ? "CLANG $CLANGversion" : "ICC $ICCversion", ")\n"; + + $PERL =$vars{PERL} || $^X; +-$CXXOPT =$vars{CXXOPT} || "-O3"; ++$CXXOPT =$vars{CXXOPT} || "-O2"; + $CXXDEBUG =$vars{CXXDEBUG} || ""; + $Cflags =$vars{CFLAGS} || ""; + $CXXflags =$vars{CXXFLAGS} || $Cflags; +@@ -578,10 +578,6 @@ if (defined $GMP) { + $CXXflags .= " -I$GMP/include"; + my $libdir=get_libdir($GMP, "gmp"); + $LDflags .= " -L$libdir"; +- if (($^O ne "darwin" || $options{fink} eq ".none.") && exists $options{gmp}) { +- # non-standard location +- $LDflags .= " -Wl,-rpath,$libdir"; +- } + } + + my $MPFR=$options{mpfr}; +@@ -590,10 +586,6 @@ if (defined($MPFR) && $MPFR ne $GMP) { + $CXXflags .= " -I$MPFR/include"; + my $libdir=get_libdir($MPFR, "mpfr"); + $LDflags .= " -L$libdir"; +- if ($^O ne "darwin" || $options{fink} eq ".none.") { +- # non-standard location +- $LDflags .= " -Wl,-rpath,$libdir"; +- } + } + + if ($check_prereq) { diff --git a/polymake-2.15-singular.patch b/polymake-2.15-singular.patch new file mode 100644 index 0000000..57921e8 --- /dev/null +++ b/polymake-2.15-singular.patch @@ -0,0 +1,135 @@ +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularRingManager.h.singular polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularRingManager.h +--- polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularRingManager.h.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularRingManager.h 2015-08-26 09:24:26.264678078 -0400 +@@ -22,7 +22,7 @@ + #include "polymake/client.h" + #include "polymake/Map.h" + +-#include ++#include + #include "polymake/ideal/internal/singularTermOrderData.h" + #include "polymake/ideal/internal/singularTermOrderMap.h" + #include "polymake/ideal/internal/singularConvertTypes.h" +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderData.h.singular polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderData.h +--- polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderData.h.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderData.h 2015-08-26 09:24:26.264678078 -0400 +@@ -21,7 +21,7 @@ + #include "polymake/Ring.h" + #include "polymake/Polynomial.h" + +-#include "Singular/libsingular.h" ++#include + + namespace polymake { + namespace ideal { +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderMap.h.singular polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderMap.h +--- polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderMap.h.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularTermOrderMap.h 2015-08-26 09:24:26.264678078 -0400 +@@ -20,7 +20,7 @@ + #include "polymake/Map.h" + #include "polymake/ideal/internal/singularTermOrderData.h" + +-#include ++#include + + namespace polymake { + namespace ideal { +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularUtils.h.singular polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularUtils.h +--- polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularUtils.h.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/include/internal/singularUtils.h 2015-08-26 09:24:26.264678078 -0400 +@@ -18,7 +18,7 @@ + #define POLYMAKE_IDEAL_INTERNAL_SINGULAR_UTILS_H + + // Singular includes +-#include ++#include + + // polymake includes + #include "polymake/client.h" +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularConvertTypes.cc.singular polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularConvertTypes.cc +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularIdeal.cc.singular polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularIdeal.cc +--- polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularIdeal.cc.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularIdeal.cc 2015-08-26 09:29:43.969529944 -0400 +@@ -14,9 +14,9 @@ + -------------------------------------------------------------------------------- + */ + +-#include +-#include +-#include ++#include ++#include ++#include + + #include "polymake/ideal/singularIdeal.h" + #include "polymake/ideal/internal/singularTermOrderData.h" +@@ -155,7 +155,7 @@ public: + + SingularIdeal_wrap* initial_ideal() const { + check_ring(singRing); +- ::ideal res = id_Head(singIdeal,IDRING(singRing)); ++ ::ideal res = idHead(singIdeal); + SingularIdeal_wrap* initial = new SingularIdeal_impl(res,singRing); + id_Delete(&res,IDRING(singRing)); + return initial; +@@ -238,12 +238,12 @@ public: + ring solring = (ring)iiRETURNEXPR.Data(); + // avoid redefinition message + BITSET oldverb; +- SI_SAVE_OPT2(oldverb); +- si_opt_2 &= ~Sy_bit(V_REDEFINE); ++ oldverb = verbose; ++ verbose &= ~Sy_bit(V_REDEFINE); + // switch to the new returned ring + idhdl solRingHdl=enterid("solveRing", 0, RING_CMD, &IDROOT, FALSE); + IDRING(solRingHdl)=solring; +- SI_RESTORE_OPT2(oldverb); ++ verbose = oldverb; + rSetHdl(solRingHdl); + // retrieve solution list SOL from the interpreter + idhdl sol = ggetid("SOL"); +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularInit.cc.singular polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularInit.cc +--- polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularInit.cc.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularInit.cc 2015-08-26 09:24:26.265678072 -0400 +@@ -80,8 +80,8 @@ void init_singular() + cerr << "*** singular siInit done. ***" << endl; + #else + // make singular library loading quiet +- si_opt_2 &= ~Sy_bit(V_LOAD_LIB); +- si_opt_2 &= ~Sy_bit(V_REDEFINE); ++ verbose &= ~Sy_bit(V_LOAD_LIB); ++ verbose &= ~Sy_bit(V_REDEFINE); + #endif + singular_initialized = 1; + } +diff -up polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularUtils.cc.singular polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularUtils.cc +--- polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularUtils.cc.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/apps/ideal/src/singularUtils.cc 2015-08-26 09:24:26.265678072 -0400 +@@ -14,7 +14,7 @@ + -------------------------------------------------------------------------------- + */ + +-#include ++#include + + #include "polymake/client.h" + #include "polymake/Matrix.h" +diff -up polymake-2.15-beta2/bundled/singular/configure.pl.singular polymake-2.15-beta2/bundled/singular/configure.pl +--- polymake-2.15-beta2/bundled/singular/configure.pl.singular 2015-08-26 09:16:29.000000000 -0400 ++++ polymake-2.15-beta2/bundled/singular/configure.pl 2015-08-26 09:24:26.265678072 -0400 +@@ -46,13 +46,13 @@ sub proceed { + chomp $singular_prefix; + # yes we need it twice ... + +- $Libs = join(" ",$LDflags =~ m/(-l\w+)/g) . " -lfactory -lresources -lpolys -lomalloc"; ++ $Libs = join(" ",$LDflags =~ m/(-l\w+)/g) . " -lsingular"; + $LDflags =~ s/ -l\w+//g; + $LDflags =~ s/-L(\S+)/-L$1 -Wl,-rpath,$1/g; + my $libdir = $1; + + my $error=Polymake::Configure::build_test_program(<<"---", CXXflags => $CXXflags, LDflags => $LDflags, Libs => $Libs); +-#include "Singular/libsingular.h" ++#include "libsingular.h" + #include + #include + int main() { diff --git a/polymake.spec b/polymake.spec index 8cf760d..1e3293d 100644 --- a/polymake.spec +++ b/polymake.spec @@ -3,26 +3,27 @@ # building the documentation. %undefine _hardened_build +%global prerel beta2 + # If a library used by both polymake and Singular is updated, neither can be # rebuilt, because each BRs the other and both are linked against the old # version of the library. Use this to rebuild polymake without Singular # support, rebuild Singular, then build polymake again with Singular support. %bcond_with singular -# Date of the "perpetual beta" git snapshot -%global gitdate 20141013 -%global gittag 10d8dab96e07470a9748440c595e17cdbdb13bff -%global shorttag %(cut -b -7 <<< %{gittag}) - Name: polymake -Version: 2.13 -Release: 26%{?gitdate:.git%{gitdate}}%{?dist} +Version: 2.15 +Release: 0.1.%{prerel}%{?dist} Summary: Algorithms on convex polytopes and polyhedra - License: GPLv2+ URL: http://polymake.org/ -#Source0: http://polymake.org/lib/exe/fetch.php/download/%{name}-%{version}.tar.bz2 -Source0: https://github.com/%{name}/%{name}/tarball/%{gittag}/%{name}-%{name}-%{shorttag}.tar.gz +#Source0: http://polymake.org/lib/exe/fetch.php/download/%%{name}-%%{version}.tar.bz2 +#Source0: https://github.com/%%{name}/%%{name}/tarball/%%{gittag}/%%{name}-%%{name}-%%{shorttag}.tar.gz +#Source0: https://github.com/%{name}/%{name}/archive/V%{version}.tar.gz +# For prereleases, we have to do: +# git clone --branch Snapshots https://github.com/polymake/polymake.git polymake-2.15-beta2 +# tar --exclude-vcs -cjf polymake-2.15-beta2.tar.bz2 polymake-2.15-beta2 +Source0: %{name}-%{version}-%{prerel}.tar.bz2 # Man page written by Jerry James from text found in the sources. Therefore, # the copyright and license are the same as for the sources. Source1: %{name}.1 @@ -31,23 +32,20 @@ Source2: libsingular-config # This patch will not be sent upstream, since it is Fedora-specific. Link # against existing system libraries instead of building them from source, # and do not use -rpath. -Patch0: %{name}-fedora.patch -# This patch was sent upstream 20 Mar 2013. Fix a call to an lrslib function -# that segfaults when given a NULL argument. -Patch1: %{name}-lrslib.patch +Patch0: %{name}-2.15-fedora.patch # Avoid -Werror=format-security failures. -Patch2: %{name}-format.patch +Patch2: %{name}-2.14-format.patch # 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 +Patch3: %{name}-2.15-singular.patch # Fix template gaffes in the libnormaliz interface code Patch4: %{name}-libnormaliz.patch # Fix a crash on exit Patch5: %{name}-exit.patch # Adapt to gcc 5.0 -Patch6: %{name}-gcc5.patch -# Adapt to perl 5.22 -Patch7: %{name}-perl522.patch +Patch6: %{name}-2.14-gcc5.patch +# Properly detect lrs system bits +Patch8: %{name}-2.14-lrs-system-fix.patch BuildRequires: bliss-devel BuildRequires: boost-devel @@ -58,6 +56,7 @@ BuildRequires: libnormaliz-devel BuildRequires: libxml2-devel BuildRequires: lrslib-devel BuildRequires: mpfr-devel +BuildRequires: perl(ExtUtils::Embed) BuildRequires: perl(ExtUtils::MakeMaker) BuildRequires: perl(Term::ReadLine::Gnu) BuildRequires: perl(XML::LibXSLT) @@ -139,15 +138,14 @@ Requires: %{name}%{?_isa} = %{version}-%{release} This package contains documentation for %{name}. %prep -%setup -q -n %{name}-%{name}-%{shorttag} -%patch0 -%patch1 +%setup -q -n %{name}-%{version}-%{prerel} +%patch0 -p1 -b .fedora %patch2 -%patch3 +%patch3 -p1 -b .singular %patch4 %patch5 -%patch6 -%patch7 +%patch6 -b .gcc5 +%patch8 fixtimestamp() { touch -r $1.orig $1 @@ -188,6 +186,10 @@ export Arch=%{_arch} %if %{with singular} --with-singular=$PWD \ %endif + --with-lrs-include=%{_includedir}/lrslib/ \ + --with-lrs-lib=%{_libdir} \ + --with-cdd-include=%{_includedir}/cddlib/ \ + --with-cdd-lib=%{_libdir} \ --libexecdir=%{polydir} --without-java --without-javaview make %{?_smp_mflags} all @@ -228,6 +230,8 @@ sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/bliss/conf.make sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/group/conf.make sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/libnormaliz/conf.make sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/ppl/conf.make +sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/lrs/conf.make +sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/cdd/conf.make %if %{with singular} sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/singular/conf.make %endif @@ -262,6 +266,12 @@ sed -i 's,%{buildroot},,' %{buildroot}%{polydir}/bundled/singular/conf.make %doc doc/* %changelog +* Wed Aug 26 2015 Tom Callaway - 2.15-0.1.beta2 +- update to 2.15-beta2 for newer perl support + +* Mon Aug 10 2015 Tom Callaway - 2.14-1 +- update to 2.14 + * Wed Jul 29 2015 Fedora Release Engineering - 2.13-26.git20141013 - Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 diff --git a/sources b/sources index f0a1d60..f241998 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -563334ad664ae2b66d3a7836b6bc1b3e polymake-polymake-10d8dab.tar.gz +2a3acc7307adf863d8a7c3e74a65fb57 polymake-2.15-beta2.tar.bz2