[Macaulay2] Macaulay2-1.6 (#1074594)
Rex Dieter
rdieter at fedoraproject.org
Tue May 20 11:08:08 UTC 2014
commit 9485262e4eaa72112aeffbc26a0bf7c38c6f5ba9
Author: Rex Dieter <rdieter at math.unl.edu>
Date: Tue May 20 06:08:07 2014 -0500
Macaulay2-1.6 (#1074594)
.gitignore | 2 +
Macaulay2-1.5-ADDR_NO_RANDOMIZE.patch | 24 ---
Macaulay2-1.5-default_make_targets.patch | 12 --
Macaulay2-1.5-factory_315.patch | 12 --
Macaulay2-1.5-no_Werror.patch | 23 ---
Macaulay2-1.5-no_gftables.patch | 12 --
Macaulay2-1.5-system_normaliz.patch | 12 --
Macaulay2-1.5-use_gmp_instead_of_mpir.patch | 39 -----
Macaulay2-1.6-default_make_targets.patch | 12 ++
Macaulay2-1.6-disable_broken_debug_functions.patch | 12 ++
Macaulay2-1.6-gc.patch | 26 ++++
Macaulay2-1.6-mpir.patch | 30 ++++
Macaulay2-1.6-no_Werror.patch | 35 +++++
Macaulay2-1.6-no_gftables.patch | 12 ++
Macaulay2-1.6-optflags.patch | 22 +++
Macaulay2-1.6-rpath.patch | 14 ++
Macaulay2-1.6-verbose_build.patch | 72 +++++++++
Macaulay2.spec | 153 +++++++++++---------
sources | 4 +-
19 files changed, 324 insertions(+), 204 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 105936e..ba8f35d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,5 @@
/Macaulay2-1.5-r15838.tar.xz
/Macaulay2-1.5-r15955-src.tar.bz2
/Normaliz.m2
+/Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496-src.tar.bz2
+/gtest-1.6.0.tar.gz
diff --git a/Macaulay2-1.6-default_make_targets.patch b/Macaulay2-1.6-default_make_targets.patch
new file mode 100644
index 0000000..e63eb98
--- /dev/null
+++ b/Macaulay2-1.6-default_make_targets.patch
@@ -0,0 +1,12 @@
+diff -up M2/Macaulay2/Makefile.in.default_make_targets M2/Macaulay2/Makefile.in
+--- M2/Macaulay2/Makefile.in.default_make_targets 2013-05-20 13:46:59.832938746 -0500
++++ M2/Macaulay2/Makefile.in 2013-05-20 13:47:49.404427202 -0500
+@@ -11,7 +11,7 @@ SUBDIRS = compat util probe regex c
+ ifeq "@DUMPDATA@" "yes"
+ SUBDIRS += dumpdata
+ endif
+-SUBDIRS += e-includes d e system kernel bin m2 emacs man packages html-check-links tests
++SUBDIRS += e-includes d e system kernel bin m2 emacs man packages
+ SUBDIRS += book
+ SUBDIRS += packages/Macaulay2Doc/test
+
diff --git a/Macaulay2-1.6-disable_broken_debug_functions.patch b/Macaulay2-1.6-disable_broken_debug_functions.patch
new file mode 100644
index 0000000..56428e8
--- /dev/null
+++ b/Macaulay2-1.6-disable_broken_debug_functions.patch
@@ -0,0 +1,12 @@
+diff -up Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/x-factor.cpp.disable_broken_debug_functions Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/x-factor.cpp
+--- Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/x-factor.cpp.disable_broken_debug_functions 2013-11-25 12:51:28.668602955 -0600
++++ Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/x-factor.cpp 2013-11-25 12:56:49.447994105 -0600
+@@ -225,7 +225,7 @@ static struct enter_factory foo1;
+
+ // debugging display routines to be called from gdb
+ // needs factory to be configured without option --disable-streamio
+-#if 1
++#if 0
+ void showvar(Variable &t) { cout << t << endl; }
+ void showcf(CanonicalForm &t) { cout << t << endl; }
+ void showcfl(CFList &t) { cout << t << endl; }
diff --git a/Macaulay2-1.6-gc.patch b/Macaulay2-1.6-gc.patch
new file mode 100644
index 0000000..ea99327
--- /dev/null
+++ b/Macaulay2-1.6-gc.patch
@@ -0,0 +1,26 @@
+Index: M2-release-1.6-stable-20130514/M2/configure.ac
+===================================================================
+--- M2-release-1.6-stable-20130514.orig/M2/configure.ac
++++ M2-release-1.6-stable-20130514/M2/configure.ac
+@@ -1125,15 +1125,14 @@ then AC_LANG(C)
+ AC_MSG_CHECKING(whether libgc is recent enough)
+ AC_RUN_IFELSE([AC_LANG_SOURCE([
+ #include <stdio.h>
++ #include <gc.h>
+ main () {
+- extern unsigned GC_version;
+ FILE *msg = fdopen(AS_MESSAGE_FD,"w");
+- unsigned major, minor, alpha;
+- major = GC_version >> 16;
+- minor = (GC_version >> 8) & 0xff;
+- alpha = GC_version & 0xff;
+- if (alpha == 0xff) fprintf(msg,"(version %d.%d found) ", major, minor);
+- else fprintf(msg,"(version %d.%d alpha %d found) ", major, minor, alpha);
++ unsigned major, minor, micro;
++ major = GC_VERSION_MAJOR;
++ minor = GC_VERSION_MINOR;
++ micro = GC_VERSION_MICRO;
++ fprintf(msg,"(version %d.%d.%d found) ", major, minor, micro);
+ return !( major > 7 || major == 7 && minor >= 2); }])],
+ [ AC_MSG_RESULT(yes) ],
+ [ AC_MSG_RESULT([no, version at least 7.2 is required (gc will be built from downloaded sources)]); BUILD_gc=yes ],
diff --git a/Macaulay2-1.6-mpir.patch b/Macaulay2-1.6-mpir.patch
new file mode 100644
index 0000000..89a030d
--- /dev/null
+++ b/Macaulay2-1.6-mpir.patch
@@ -0,0 +1,30 @@
+diff -up M2/configure.ac.mpir M2/configure.ac
+--- M2/configure.ac.mpir 2013-05-20 13:49:54.384139899 -0500
++++ M2/configure.ac 2013-05-20 13:51:10.492356267 -0500
+@@ -840,7 +840,7 @@ AC_SUBST(BUILTLIBS,)
+ # we always build it, and every program should link with it
+ # "gdbm" calls sync(), so its test programs need to link with it
+ AC_SUBST(PROGLIST, "4ti2 gfan normaliz nauty cddplus lrslib")
+-AC_SUBST(LIBLIST, " missing gc gdbm mpir mpfr pari readline ntl factory libfac lapack frobby glpk cddlib fplll givaro fflas_ffpack linbox boost mpc qd mpack flint gtest memtailor mathic mathicgb ")
++AC_SUBST(LIBLIST, " missing gc gdbm gmp mpfr pari readline ntl factory libfac lapack frobby glpk cddlib fplll givaro fflas_ffpack linbox boost mpc qd mpack flint gtest memtailor mathic mathicgb ")
+
+ # a library is listed in BUILD_ALWAYS if and only if we *always* build it,
+ # even if the option "--disable-building" is specified:
+@@ -999,16 +999,7 @@ dnl then BUILTLIBS="-lgmpxx -lgmp $BUILT
+ dnl else LIBS="-lgmpxx $LIBS"
+ dnl fi
+
+-if test $BUILD_mpir = no
+-then AC_LANG(C)
+- AC_SEARCH_LIBS(__mpir_version,mpir,,BUILD_mpir=yes)
+- AC_CHECK_HEADER(mpir.h,,BUILD_mpir=yes)
+-fi
+-dnl frobby uses mpirxx
+-if test $BUILD_mpir = yes
+-then BUILTLIBS="-lmpirxx -lmpir $BUILTLIBS"
+-else LIBS="-lmpirxx $LIBS"
+-fi
++LIBS="-lgmp -lgmpxx $LIBS"
+
+ if test "$PARI" = yes
+ then if test $BUILD_pari = no
diff --git a/Macaulay2-1.6-no_Werror.patch b/Macaulay2-1.6-no_Werror.patch
new file mode 100644
index 0000000..7e30bdf
--- /dev/null
+++ b/Macaulay2-1.6-no_Werror.patch
@@ -0,0 +1,35 @@
+diff -up Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/c/Makefile.in.Werror Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/c/Makefile.in
+--- Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/c/Makefile.in.Werror 2014-05-19 21:23:20.398800171 -0500
++++ Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/c/Makefile.in 2014-05-19 21:23:28.544714641 -0500
+@@ -30,7 +30,7 @@ CPPFLAGS := -I../../include -I/include -
+ CFLAGS += -std=c99
+ # CFLAGS += -pedantic-errors
+
+-CFLAGS += -Wall -Werror
++CFLAGS += -Wall
+ ifeq "@__INTEL_COMPILER@" "no"
+ CFLAGS += -Wimplicit-function-declaration
+ endif
+diff -up Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/d/Makefile.in.Werror Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/d/Makefile.in
+--- Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/d/Makefile.in.Werror 2013-05-15 08:54:27.000000000 -0500
++++ Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/d/Makefile.in 2014-05-19 21:23:57.914406259 -0500
+@@ -142,7 +142,7 @@ M2INCLUDES += -I at srcdir@/../regex
+
+ # it's important that *our* directories get searched first:
+ CPPFLAGS := $(M2INCLUDES) $(CPPFLAGS) $(M2_CPPFLAGS)
+-CFLAGS += $(M2_CFLAGS) -Werror
++CFLAGS += $(M2_CFLAGS)
+ ifeq "@__INTEL_COMPILER@" "no"
+ CFLAGS += -Wno-unused-label
+ endif
+@@ -156,8 +156,8 @@ endif
+ # CXXFLAGS += -std=c++98
+ # CXXFLAGS += -pedantic-errors
+
+-CFLAGS += -Wreturn-type -Werror
+-CXXFLAGS += -Wreturn-type -Werror
++CFLAGS += -Wreturn-type
++CXXFLAGS += -Wreturn-type
+
+ python-c.o : | python-exports.h.tmp
+ M2lib.o scclib.o : | interp-exports.h.tmp
diff --git a/Macaulay2-1.6-no_gftables.patch b/Macaulay2-1.6-no_gftables.patch
new file mode 100644
index 0000000..46b7d8e
--- /dev/null
+++ b/Macaulay2-1.6-no_gftables.patch
@@ -0,0 +1,12 @@
+diff -up M2/configure.ac.no_gftables M2/configure.ac
+--- M2/configure.ac.no_gftables 2013-05-20 13:48:33.721970369 -0500
++++ M2/configure.ac 2013-05-20 13:49:15.213543210 -0500
+@@ -839,7 +839,7 @@ AC_SUBST(BUILTLIBS,)
+ # "missing" is our own library -- it provides unix functions (e.g., sync) missing on certain architectures (mingw);
+ # we always build it, and every program should link with it
+ # "gdbm" calls sync(), so its test programs need to link with it
+-AC_SUBST(PROGLIST, "4ti2 gfan normaliz nauty cddplus lrslib gftables")
++AC_SUBST(PROGLIST, "4ti2 gfan normaliz nauty cddplus lrslib")
+ AC_SUBST(LIBLIST, " missing gc gdbm mpir mpfr pari readline ntl factory libfac lapack frobby glpk cddlib fplll givaro fflas_ffpack linbox boost mpc qd mpack flint gtest memtailor mathic mathicgb ")
+
+ # a library is listed in BUILD_ALWAYS if and only if we *always* build it,
diff --git a/Macaulay2-1.6-optflags.patch b/Macaulay2-1.6-optflags.patch
new file mode 100644
index 0000000..a95a324
--- /dev/null
+++ b/Macaulay2-1.6-optflags.patch
@@ -0,0 +1,22 @@
+diff -up M2/configure.ac.optflags M2/configure.ac
+--- M2/configure.ac.optflags 2013-05-20 13:44:23.010557901 -0500
++++ M2/configure.ac 2013-05-20 13:45:51.670642322 -0500
+@@ -231,12 +231,12 @@ fi
+ ]
+
+ if test "$OPTIMIZE" = yes
+-then CFLAGS="$CFLAGS -O2"
+- CXXFLAGS="$CXXFLAGS -O2"
+- FFLAGS="$FFLAGS -O2"
+-else CFLAGS="$CFLAGS -O0"
+- CXXFLAGS="$CXXFLAGS -O0"
+- FFLAGS="$FFLAGS -O0"
++then CFLAGS="-O2 $CFLAGS"
++ CXXFLAGS="-O2 $CXXFLAGS"
++ FFLAGS="-O2 $FFLAGS"
++else CFLAGS="-O0 $CFLAGS"
++ CXXFLAGS="-O0 $CXXFLAGS"
++ FFLAGS="-O0 $FFLAGS"
+ fi
+
+ AC_SUBST(GCCVERSION,)
diff --git a/Macaulay2-1.6-rpath.patch b/Macaulay2-1.6-rpath.patch
new file mode 100644
index 0000000..07b4619
--- /dev/null
+++ b/Macaulay2-1.6-rpath.patch
@@ -0,0 +1,14 @@
+diff -up Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/bin/Makefile.in.rpath Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/bin/Makefile.in
+--- Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/bin/Makefile.in.rpath 2014-01-16 09:32:03.417643997 -0600
++++ Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/bin/Makefile.in 2013-05-15 08:54:27.000000000 -0500
+@@ -201,8 +201,8 @@ endif
+ ifeq (@OS@ @SHARED@,Linux yes)
+ ifneq (@BUILDLIST@,)
+ ifneq (@OBJDUMP@,)
+- @OBJDUMP@ -x "$@".tmp | egrep RPATH
+- @OBJDUMP@ -x "$@".tmp | egrep "RPATH + at librariesdir@$$"
++ @OBJDUMP@ -x "$@".tmp | egrep RPATH ||:
++ @OBJDUMP@ -x "$@".tmp | egrep "RPATH + at librariesdir@$$" || chrpath --replace @librariesdir@ "$@".tmp
+ else
+ echo "--warning: 'objdump' not installed, can't check rpath in M2 binary"
+ endif
diff --git a/Macaulay2-1.6-verbose_build.patch b/Macaulay2-1.6-verbose_build.patch
new file mode 100644
index 0000000..18a12f5
--- /dev/null
+++ b/Macaulay2-1.6-verbose_build.patch
@@ -0,0 +1,72 @@
+diff -up Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/Makefile.common.in.verbose Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/Makefile.common.in
+--- Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/Makefile.common.in.verbose 2013-05-15 08:54:27.000000000 -0500
++++ Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496/M2/Macaulay2/e/Makefile.common.in 2013-11-25 12:53:53.705077548 -0600
+@@ -22,57 +22,57 @@ COMPILE.cpp = $(COMPILE.cc)
+ %.o : %.cpp
+ @ echo '$(COMPILE.cpp) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $<"
+- @ $(COMPILE.cpp) $(OUTPUT_OPTION) $<
++ $(COMPILE.cpp) $(OUTPUT_OPTION) $<
+
+ %.s : %.cpp
+ @ echo '$(COMPILE.cpp) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $< to assembly code, making $@"
+- @ $(COMPILE.cpp) -S $(OUTPUT_OPTION) $<
++ $(COMPILE.cpp) -S $(OUTPUT_OPTION) $<
+
+ %.E : %.cpp
+ @ echo '$(COMPILE.cpp) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** preprocessing $<, making $@"
+- @ $(COMPILE.cpp) -E $(OUTPUT_OPTION) $<
++ $(COMPILE.cpp) -E $(OUTPUT_OPTION) $<
+
+ %.o : %.cc
+ @ echo '$(COMPILE.cc) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $<"
+- @ $(COMPILE.cc) $(OUTPUT_OPTION) $<
++ $(COMPILE.cc) $(OUTPUT_OPTION) $<
+
+ %.s : %.cc
+ @ echo '$(COMPILE.cc) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $< to assembly code, making $@"
+- @ $(COMPILE.cc) -S $(OUTPUT_OPTION) $<
++ $(COMPILE.cc) -S $(OUTPUT_OPTION) $<
+
+ %.E : %.cc
+ @ echo '$(COMPILE.cc) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** preprocessing $<, making $@"
+- @ $(COMPILE.cc) -E $(OUTPUT_OPTION) $<
++ $(COMPILE.cc) -E $(OUTPUT_OPTION) $<
+
+ ntl_interface.o: ntl_interface.cpp
+ @ echo '$(COMPILE.cc) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $<"
+- @ $(COMPILE.cc) $(OUTPUT_OPTION) $< -Wno-old-style-cast
++ $(COMPILE.cc) $(OUTPUT_OPTION) $< -Wno-old-style-cast
+
+ %.o : %.c
+ @ echo '$(COMPILE.c) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** compiling $<"
+- @ $(COMPILE.c) $(OUTPUT_OPTION) $<
++ $(COMPILE.c) $(OUTPUT_OPTION) $<
+
+ % : %.o
+ @ echo '$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION) $<' >> LOGFILE
+ @ echo " ** linking $^ to get $@"
+- @ $(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION)
++ $(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION)
+
+ %.dep: %.cpp
+ @ echo "@CXX@ -MM -MP $(CPPFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep" >> LOGFILE
+ @ echo " ** creating $@ from $<"
+- @ @CXX@ -MM -MP $(CPPFLAGS) $(CXXFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep
++ @CXX@ -MM -MP $(CPPFLAGS) $(CXXFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep
+
+ %.dep: %.c
+ @ echo "@CC@ -MM -MP $(CPPFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep" >> LOGFILE
+ @ echo " ** creating $@ from $<"
+- @ @CC@ -MM -MP $(CPPFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep
++ @CC@ -MM -MP $(CPPFLAGS) -DDEPENDS=1 $< >$*-tmp.dep && <$*-tmp.dep sed 's/\($*\)\.o[ :]*/\1.o $@ : /' >$@ && rm $*-tmp.dep
+
+ # Local Variables:
+ # compile-command: "make -C $M2BUILDDIR/Macaulay2/e DEPENDS=no initialize && make -C $M2BUILDDIR/Macaulay2/e Makefile.common "
diff --git a/Macaulay2.spec b/Macaulay2.spec
index d7cda19..7c0cf73 100644
--- a/Macaulay2.spec
+++ b/Macaulay2.spec
@@ -1,31 +1,33 @@
-%define snap 20130401
-%define svn r15955
+
+%define git 77124166d123caab69ac4655d15b6bfab3e74496
%global emacs_sitelisp %{_datadir}/emacs/site-lisp/
%global xemacs_sitelisp %{_datadir}/xemacs/site-packages/lisp/
## define to create -common subpkg
-#global common 1
+%global common 1
+#if 0%{?fedora} > 20
+# use system normaliz
+%global system_normaliz 1
+#endif
+# standardize on gmp instead of mpir (mostly for pari/sagemath)
+%global gmp 1
%global ISSUE %{?fedora:Fedora-%{fedora}}%{?rhel:RedHatEnterprise-%{rhel}}
%global M2_machine %{_target_cpu}-Linux-%{ISSUE}
-%global INFO_FILES AdjointIdeal BGG BIBasis BeginningMacaulay2 Benchmark Binomials BoijSoederberg BooleanGB Browse Bruns ChainComplexExtras CharacteristicClasses Classic ConvexInterface ConwayPolynomials Cyclotomic DGAlgebras Depth Dmodules EdgeIdeals Elimination FirstPackage FormalGroupLaws FourTiTwo FourierMotzkin GenericInitialIdeal GraphicalModels Graphics Graphs HodgeIntegrals HyperplaneArrangements IntegralClosure InvolutiveBases Kronecker KustinMiller LLLBases LexIdeals LocalRings Macaulay2Doc MapleInterface Markov ModuleDeformations MonomialAlgebras MonomialMultiplierIdeals NAGtypes NoetherNormalization NormalToricVarieties Normaliz NumericalAlgebraicGeometry OpenMath PHCpack PackageTemplate Parametrization Parsing PieriMaps Points Polyhedra Polymake Posets PrimaryDecomposition QthPower RandomCanonicalCurves RandomCurves RandomGenus14Curves RandomObjects RandomPlaneCurves RandomSpaceCurves RationalPoints ReesAlgebra Regularity SCSCP SRdeformations Schubert2 SchurFunc
tors SchurRings Serialization SimpleDoc SimplicialComplexes SimplicialDecomposability StatePolytope Style SymmetricPolynomials TangentCone TensorComplexes Text ToricVectorBundles Units VersalDeformations WeylGroups XML gfanInterface
+%global INFO_FILES AdjointIdeal BeginningMacaulay2 Benchmark BGG BIBasis Binomials BoijSoederberg BooleanGB Browse Bruns ChainComplexExtras CharacteristicClasses Classic CompleteIntersectionResolutions ConvexInterface ConwayPolynomials Cyclotomic Depth DGAlgebras Dmodules EdgeIdeals Elimination EliminationMatrices EllipticIntegrals FirstPackage FormalGroupLaws FourierMotzkin FourTiTwo GenericInitialIdeal gfanInterface GraphicalModels Graphics Graphs HodgeIntegrals HyperplaneArrangements IntegralClosure InvolutiveBases Kronecker KustinMiller LexIdeals LLLBases LocalRings Macaulay2Doc MapleInterface Markov ModuleDeformations MonomialAlgebras MonomialMultiplierIdeals NAGtypes NoetherNormalization Normaliz NormalToricVarieties NumericalAlgebraicGeometry OpenMath PackageTemplate Parametrization Parsing PHCpack PieriMaps Points Polyhedra Polymake Posets PrimaryDecomposition PushForward QthPower RandomCanonicalCurves RandomCurves RandomGenus14Curves RandomObjects RandomPlaneCurves
RandomSpaceCurves RationalPoints ReesAlgebra Regularity Schubert2 SchurFunctors SchurRings SCSCP Serialization SimpleDoc SimplicialComplexes SimplicialDecomposability SRdeformations StatePolytope Style SymmetricPolynomials TangentCone TensorComplexes Text ToricVectorBundles Triplets Units VersalDeformations WeylGroups XML
Summary: System for algebraic geometry and commutative algebra
Name: Macaulay2
-Version: 1.5
-Release: 8%{?dist}
+Version: 1.6
+Release: 1%{?dist}
License: GPLv2 or GPLv3
-Group: Applications/Engineering
URL: http://www.math.uiuc.edu/Macaulay2/
-# the SVN revision is being used as a unique ID
-Source0: http://www.math.uiuc.edu/Macaulay2/Downloads/SourceCode/Macaulay2-%{version}-%{svn}-src.tar.bz2
-#Source0: Macaulay2-1.5-%{svn}.tar.xz
-Source1: Macaulay2-svn_checkout.sh
-# TEMPORARY: remove this when Macaulay ships the updated version
-Source2: Normaliz.m2
-
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+%if 0%{?snap:1}
+Source0: Macaulay2-%{version}-%{snap}.tar.xz
+%else
+Source0: http://www.math.uiuc.edu/Macaulay2/Downloads/SourceCode/Macaulay2-%{version}-%{git}-src.tar.bz2
+%endif
Source10: Macaulay2.png
Source11: Macaulay2.desktop
@@ -37,25 +39,32 @@ Source20: etags.sh
Source100: http://www.math.uiuc.edu/Macaulay2/Downloads/OtherSourceCode/1.6/frobby_v0.9.0.tar.gz
Provides: bundled(frobby) = 0.9.0
%endif
+# used in tests only
+Source101: http://www.math.uiuc.edu/Macaulay2/Downloads/OtherSourceCode/1.6/gtest-1.6.0.tar.gz
+%if ! 0%{?system_normaliz}
+Source102: http://www.math.uiuc.edu/Macaulay2/Downloads/OtherSourceCode/1.6/Normaliz2.9.zip
+%endif
+Patch0: Macaulay2-1.6-optflags.patch
Patch1: Macaulay2-1.4-xdg_open.patch
-# work harder to set ADDR_NO_RANDOMIZE, http://bugzilla.redhat.com/201739
-Patch2: Macaulay2-1.5-ADDR_NO_RANDOMIZE.patch
+Patch2: Macaulay2-1.6-verbose_build.patch
# nauty has bad licensing
Patch3: Macaulay2-1.5-no_nauty.patch
# drop 'html-check-links' 'tests' from default make target
# the former is broken since we omit nauty (see above).
-Patch4: Macaulay2-1.5-default_make_targets.patch
+Patch4: Macaulay2-1.6-default_make_targets.patch
# disable check for gftables
-Patch5: Macaulay2-1.5-no_gftables.patch
+Patch5: Macaulay2-1.6-no_gftables.patch
# don't use -Werror
-Patch6: Macaulay2-1.5-no_Werror.patch
-# use fedora/system copy of normaliz
-Patch8: Macaulay2-1.5-system_normaliz.patch
+Patch6: Macaulay2-1.6-no_Werror.patch
# link to gmp, not mpir to avoid possible issues with gmp'ed pari
-Patch9: Macaulay2-1.5-use_gmp_instead_of_mpir.patch
-# fix build against factory-3.1.5
-Patch10: Macaulay2-1.5-factory_315.patch
+Patch9: Macaulay2-1.6-mpir.patch
+Patch11: Macaulay2-1.6-disable_broken_debug_functions.patch
+# fix rpath, no idea how prefix/libdir is sneaking in there
+Patch12: Macaulay2-1.6-rpath.patch
+# fix build against newer gc
+# https://github.com/Macaulay2/M2/issues/130
+Patch13: Macaulay2-1.6-gc.patch
BuildRequires: 4ti2
BuildRequires: autoconf
@@ -63,6 +72,7 @@ BuildRequires: bison
BuildRequires: blas-devel
BuildRequires: boost-devel
BuildRequires: cddlib-devel cddlib-static
+BuildRequires: chrpath
BuildRequires: desktop-file-utils
%if 0%{?fedora} > 18
BuildRequires: doxygen-latex
@@ -78,17 +88,21 @@ BuildRequires: gcc-gfortran
BuildRequires: gdbm-devel
BuildRequires: gfan
BuildRequires: glpk-devel
+%if 0%{?gmp}
+BuildRequires: gmp-devel
+%else
+BuildRequires: mpir-devel
+%endif
BuildRequires: info
-BuildRequires: factory-static factory-devel >= 3.1.4
+BuildRequires: factory-static factory-devel >= 3.1.6
BuildRequires: factory-gftables
BuildRequires: libatomic_ops-devel
-BuildRequires: libfac-static libfac-devel >= 3.1.4
+BuildRequires: libfac-static libfac-devel >= 3.1.6
BuildRequires: lapack-devel
BuildRequires: mpfr-devel gmp-devel
-BuildRequires: normaliz
-BuildRequires: ntl-devel >= 5.4.1
+BuildRequires: ntl-devel >= 5.5
BuildRequires: pari-devel
-BuildRequires: pkgconfig(bdw-gc)
+BuildRequires: pkgconfig(bdw-gc) >= 6.2
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(ncurses)
BuildRequires: readline-devel
@@ -97,10 +111,13 @@ BuildRequires: time
Requires: 4ti2
Requires: gfan
Requires: factory-gftables
-Requires: normaliz
+%if 0%{?system_normaliz}
+BuildRequires: normaliz >= 2.9
+Requires: normaliz >= 2.9
+%endif
%if 0%{?common}
-Requires: Macaulay-common = %{version}-%{release}
+Requires: %{name}-common = %{version}-%{release}
%else
Obsoletes: Macaulay2-common < %{version}-%{release}
Provides: Macaulay2-common = %{version}-%{release}
@@ -124,50 +141,58 @@ and Michael E. Stillman
%package common
Summary: Common files for %{name}
-Requires: Macaulay2 = %{version}-%{release}
+Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description common
%{summary}.
%prep
-%setup -q -n %{name}-%{version}-%{svn}/M2
-
-# TEMPORARY: remove this when Macaulay ships the updated version
-cp -p %{SOURCE2} Macaulay2/packages
+%setup -q -n %{name}-%{version}-%{git}/M2
install -p -m755 %{SOURCE20} ./etags
-mkdir -p BUILD/tarfiles/
-
## bundled code
+mkdir -p BUILD/tarfiles/
%if 0%{?_enable_frobby:1}
-install -D -p %{SOURCE100} BUILD/tarfiles/
+install -p %{SOURCE100} BUILD/tarfiles/
+%endif
+install -p %{SOURCE101} BUILD/tarfiles/
+%if ! 0%{?system_normaliz}
+install -p %{SOURCE102} BUILD/tarfiles/
+%endif
+%if 0%{?factory}
+install -p %{SOURCE103} %{SOURCE104} %{SOURCE105} BUILD/tarfiles/
%endif
+%patch0 -p1 -b .optflags
%patch1 -p1 -b .xdg_open
-%patch2 -p1 -b .ADDR_NO_RANDOMIZE
+%patch2 -p2 -b .verbose_build
%patch3 -p1 -b .no_nauty
%patch4 -p1 -b .default_make_targets
%patch5 -p1 -b .no_gftables
-%patch6 -p1 -b .no_Werror
-%patch8 -p1 -b .system_normaliz
-%patch9 -p1 -b .use_gmp_instead_of_mpir
-%patch10 -p1 -b .factory_315
-
-# (re)generate configure
-[ -f configure -a -f include/config.h ] || make
-
+%patch6 -p2 -b .no_Werror
+%if 0%{?gmp}
+%patch9 -p1 -b .mpir
+%endif
+%if ! 0%{?factory}
+%patch11 -p2 -b .disable_broken_debug_functions
# factory-gftables symlink
mkdir -p BUILD/%{_target_platform}/StagingArea/common/share/Macaulay2/Core
pushd BUILD/%{_target_platform}/StagingArea/common/share/Macaulay2/Core
ln -s /usr/share/factory/gftables factory
popd
+%endif
+%patch12 -p2 -b .rpath
+%patch13 -p2 -b .gc
+
+# (re)generate configure
+[ -f configure -a -f include/config.h ] || make
# helper binaries (4ti2, normaliz)
mkdir -p BUILD/%{_target_platform}/StagingArea/%{M2_machine}/libexec/Macaulay2/%{M2_machine}
pushd BUILD/%{_target_platform}/StagingArea/%{M2_machine}/libexec/Macaulay2/%{M2_machine}
-for bin in %{_libdir}/4ti2/bin/* %{_bindir}/normaliz ; do
+for bin in %{_libdir}/4ti2/bin/* %{?system_normaliz:%{_bindir}/normaliz} ; do
if [ -x "${bin}" ]; then
ln -s "${bin}"
else
@@ -189,14 +214,10 @@ PATH=/sbin:$(pwd):$PATH; export PATH
## configure macro currently broken, due to some odd prefix-checks. probably fixable -- Rex
mkdir -p BUILD/%{_target_platform}
pushd BUILD/%{_target_platform}
-CPPFLAGS="-I%{_includedir}/factory" \
+%{!?factory:CPPFLAGS="-I%{_includedir}/factory"} \
CFLAGS="%{optflags}" \
CXXFLAGS="%{optflags}" \
-LDFLAGS="$RPM_LD_FLAGS -Wl,--as-needed" \
-LIBS="-lflint" \
../../configure \
- --build=%{_build} \
- --host=%{_host} \
--with-issue=%{ISSUE} \
--prefix=%{_prefix} \
--disable-dumpdata \
@@ -204,21 +225,18 @@ LIBS="-lflint" \
--disable-fc-lib-ldflags \
--disable-strip \
%{?_enable_frobby}%{!?_enable_frobby:--disable-frobby} \
- --with-unbuilt-programs="cddplus gfan 4ti2 lrslib nauty normaliz"
+ --with-unbuilt-programs="cddplus gfan 4ti2 lrslib nauty %{?system_normaliz:normaliz}"
popd
-# Not smp-safe
-make Verbose=true -C BUILD/%{_target_platform}
-# IgnoreExampleErrors=true
+make Verbose=true -C BUILD/%{_target_platform} IgnoreExampleErrors=true
+# log errors
+find BUILD/%{_target_platform}/ -name *.errors -execdir echo {} \; -execdir cat {} \;
-%install
-rm -rf %{buildroot}
-mkdir -p %{buildroot}%{_libexecdir}/Macaulay2
+%install
-make install DESTDIR=%{buildroot} -C BUILD/%{_target_platform}
-# IgnoreExampleErrors=true
+make install DESTDIR=%{buildroot} -C BUILD/%{_target_platform} IgnoreExampleErrors=true
# app img
install -p -m644 -D %{SOURCE10} \
@@ -253,10 +271,6 @@ rm -fv %{buildroot}%{_datadir}/%{name}/Macaulay2Doc/basictests/*.okay
time make -k check -C BUILD/%{_target_platform} ||:
-%clean
-rm -rf %{buildroot}
-
-
%post
touch --no-create %{_datadir}/icons/hicolor ||:
for info_file in %{INFO_FILES}
@@ -322,6 +336,9 @@ fi
%changelog
+* Mon May 19 2014 Rex Dieter <rdieter at fedoraproject.org> 1.6-1
+- Macaulay2-1.6 (#1074594)
+
* Wed May 14 2014 Rex Dieter <rdieter at fedoraproject.org> 1.5-8
- rebuild (gc)
diff --git a/sources b/sources
index 119f86c..4b21996 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
cbd99341ddfbed3f87dfd062e4673937 Macaulay2.png
-0700f924b86c494132c090bec8db00ad Normaliz.m2
-9c28448daf5877ce275590c2fedb8f1b Macaulay2-1.5-r15955-src.tar.bz2
+306962059231692b22025430d7a2d9f4 Macaulay2-1.6-77124166d123caab69ac4655d15b6bfab3e74496-src.tar.bz2
+188991054fd785523aa1c2685397f4b4 gtest-1.6.0.tar.gz
More information about the scm-commits
mailing list