From 623ee73d661e5ed8475cb264511f683407d87365 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 12 Apr 2020 03:41:30 +0100 Subject: gentoo Easter resync : 12.04.2020 --- sci-mathematics/gfan/Manifest | 7 +- .../gfan/files/gfan-0.6.2-Makefile.patch | 155 ++++++++++++++ .../gfan/files/gfan-0.6.2-testsuite.patch | 222 +++++++++++++++++++++ .../gfan/files/gfan-0.6.2-xcode9.3_compat.patch | 13 ++ sci-mathematics/gfan/gfan-0.6.2.ebuild | 56 ++++++ sci-mathematics/gfan/metadata.xml | 17 +- 6 files changed, 468 insertions(+), 2 deletions(-) create mode 100644 sci-mathematics/gfan/files/gfan-0.6.2-Makefile.patch create mode 100644 sci-mathematics/gfan/files/gfan-0.6.2-testsuite.patch create mode 100644 sci-mathematics/gfan/files/gfan-0.6.2-xcode9.3_compat.patch create mode 100644 sci-mathematics/gfan/gfan-0.6.2.ebuild (limited to 'sci-mathematics/gfan') diff --git a/sci-mathematics/gfan/Manifest b/sci-mathematics/gfan/Manifest index d94f1b5885bc..a0e9b343e7d3 100644 --- a/sci-mathematics/gfan/Manifest +++ b/sci-mathematics/gfan/Manifest @@ -2,6 +2,11 @@ AUX gfan-0.5-double-declare-fix.patch 470 BLAKE2B e5d12f62b2efe9781f616825dce16c AUX gfan-0.5-fix-build-system.patch 1349 BLAKE2B bce148ee12c3fd720baeccc6a75b0b66ed76f1bb7d1b7ef92c3d67ab26a4743502169b0fbac87b24496f5319adc85dbed1c4efdc1dfb68ecaf795f2d7441d4f1 SHA512 e53e7ec77ef18fa05f14ab0aa011b524439d4c4bdad79d2e197bde1e136df1c2ca043287d17722140ea79351969d87df29eb845ac441f9703c7c786bd6ac582e AUX gfan-0.5-fix-gcc9.patch 3712 BLAKE2B fd8b89d8f3019db71ea9bba05a8652666ddef6d35dd75cc97510cf96267ce1cc651375cfb9e269ab765b5bc3c30c0b33cbf73d1a74eea8a564a3d5482c15af28 SHA512 6c1186c2a549191b4db31433ca006de7d916bb43b2a9176f83b0c6516ac757f693721c355aff8b1669987b6db862858b4f428cc372f6787a0f4503242bb5e035 AUX gfan-0.5-gcc6.1-compat.patch 2000 BLAKE2B 0ba13745140bb56d3398669e453cd245ee31c351ee3899dbded117ad48a238e99306c0c08b050168ddd204f4f30840ab8f04a609b135b782a06522cf65236995 SHA512 daf9527baf68299063ccdd82b53e92a63584fd5cf432b2d889c4aad08ccff0a31c0a75a7b6defd018021df4f46831ed7727a1bd6ea1b0da1fe9a924f9b208fe9 +AUX gfan-0.6.2-Makefile.patch 6603 BLAKE2B 48f9b4280418aef41d502d770c070ec1dcef947a39c6263d991be0f6f41147d06b78a4b07ca76e0fb4bc9780cb9469c98c637473789d857925df8d546ad35e92 SHA512 e1eef6f01c9942b38780f19b774fa3e99df4dbdba738cc2c6c69e2f1858e5e6294db72d7b679c5ff1313a76143bd611077731d360479f9375d6506e33a4a620a +AUX gfan-0.6.2-testsuite.patch 3223 BLAKE2B ddb94775a13bd503df5c9563750a6b4b68c9e72e1a19aaa0415c5484e07765dfd28ba02b3a0fab65a0b9cd5c61afafbc6a3d862a1de68ece57ef9d8bb2835c16 SHA512 d62e765a39ee1a8cb149fcae8afb538b19a91206dd0b8cf0ac2b681b28569e44f492b770b9e61d7573f2d52f265ad4cf25671197c204238a89075709753a83e6 +AUX gfan-0.6.2-xcode9.3_compat.patch 367 BLAKE2B fb7c685a4dd811fed83e2734a16507b1792e3a97c666d0e7de1d2ed53a7b9b43c5319517f9eef829f47147dc725f2c4ead38968fa3868baa1d16630a8b844636 SHA512 129d2c35777f82bf2a1581450ecb12dd6811fb72b583748b30665c0f9b20d39646233d9b40fb64a3c7790360514a51b30e49c53d83c34d259f664bf820ae1ce2 DIST gfan0.5.tar.gz 1134987 BLAKE2B 73ea793f5dbceb76a9f143a258ee3e38e1466e4e15ed96dbabb58f33d3a091a885479dd00f8179d3bf2c85cf275605823f63aa33272f1f9984e0fc5841ab35e9 SHA512 11a9657adcd5b39f73244450c09b132d8cd19474d0f9151c0127682bc16847537e4096d39e8a0a63b5c6aef6720e54a72bfd361a5271808d5a5595fd2df494fa +DIST gfan0.6.2.tar.gz 1321059 BLAKE2B 1ed61e1e084a1ceb65dd21848440bc3a90486c0ce4012b3b64c8029e89636696d2b0e5446ea156d2cf050b5db179c7c2f25c97e683cecf6e9616e8553d8513bf SHA512 5961820750af2522fdc1a86c0254742c3b003607a8707df5d6cd5f0bc6461e4d3db3b1d3cb537979d57eb9dff387974a58aeb91d0b5246d7c701cadc5a2cf4cf EBUILD gfan-0.5-r1.ebuild 803 BLAKE2B efaa6db36e8f2c593ef82779cbbd9806197198d4150d785e7df5d5605e167fe11f172703723a89357fc23697f00c5ffd642be1a3dbac412b8b67f175cb524427 SHA512 c47d99455abbd85d48909d59a23408271015a3a1b9f6a79b2b26aa390769c41e32ae6ab2f89e29f9cddc0b5db217c619f2eee0cddfe5a9bab670196ac3ac10fa -MISC metadata.xml 398 BLAKE2B 3c18380c694b7ac7114c6d83f65b9334a85c6afa5936bb5af9cb5eca2052b416eca08dfd5085d381589976d2ac1e3bbdf09a28757810cf54beb351b89dbcc46b SHA512 ac0668f6b8af01557b5a29a5aab5f6064f77eaed62e3fc080a5c808a62310dedd935271f58035e7c9b340df582922d2a960f67f148d61779a9a64fc1fbf7457e +EBUILD gfan-0.6.2.ebuild 1355 BLAKE2B 1b1429fa29232e3bde6892547fcff912595bef83ab2a5c44e6ef763da65f678fde3bee193ed7efaad74bfd75389512367c69688d4e54918e08542571c6ae1ea0 SHA512 502b4c7a5619a09d3897b975cdf24834e5592ead0c61f9775ca5627e7bd1fd0eb558b18c25a7721aa5294dd3fa826f4c87ea841c55fb424a47bb2dfd25c87c9a +MISC metadata.xml 1343 BLAKE2B 1e3385eaf888fa6a69e1e3f761bd5a1037e5a5308878664e604ba5efd096747f84a0a3343d8de7f6eb5dd3ce726d94bdb933e17b9eaf8e345b02fd071fbf821b SHA512 ca914de593af1279439f35fdcc812924b831c30bfa86366443f16cb720acd3e38267f25057f59e76a6b8ff1aa48a33ecfa72c093419aab95c92ed82c3308cd94 diff --git a/sci-mathematics/gfan/files/gfan-0.6.2-Makefile.patch b/sci-mathematics/gfan/files/gfan-0.6.2-Makefile.patch new file mode 100644 index 000000000000..8e8db53bc911 --- /dev/null +++ b/sci-mathematics/gfan/files/gfan-0.6.2-Makefile.patch @@ -0,0 +1,155 @@ +diff --git a/Makefile b/Makefile +index 2c9f949..a49a590 100644 +--- a/Makefile ++++ b/Makefile +@@ -2,8 +2,8 @@ ALL: default + + # When -g is used, it seems that stackdump does not work. + # GPROFFLAG = -pg +-GPROFFLAG = -g +-#GPROFFLAG = ++#GPROFFLAG = -g ++GPROFFLAG = + + PREFIX?=/usr/local + +@@ -22,20 +22,8 @@ STACTDUMP_OPTIONS = -DSTACKDUMP_ENABLED -D__assert_fail=__assert_fail2 + endif + + +-ifeq ($(sagepath),) +-SAGE_LINKOPTIONS = +-SAGE_INCLUDEOPTIONS = +-else +-SAGE_LINKOPTIONS = -L$(sagepath)/ -lpython2.6 -lcsage -lsingular +-SAGE_INCLUDEOPTIONS = -I $(sagepath)/ +-SAGE_OBJECTS = sage.o sage_link.so +- +-sage_link.so: sage_link.pyx setup.py +- python setup.py build_ext --inplace --pyrex-include-dirs=$(SAGE_ROOT)/devel/sage/ +-endif +- + ifeq ($(gmppath),) +-GMP_LINKOPTIONS = -lgmp ++GMP_LINKOPTIONS = -lgmp -lm + GMP_INCLUDEOPTIONS = + else + GMP_LINKOPTIONS = $(gmppath)/lib/libgmp.a +@@ -49,7 +37,7 @@ CDDDEFINE_PREFIX = -DNOCDDPREFIX + endif + + ifeq ($(cddpath),) +-CDD_LINKOPTIONS = -L/usr/local -lcddgmp ++CDD_LINKOPTIONS = -lcddgmp + CDD_INCLUDEOPTIONS = + else + CDD_LINKOPTIONS = $(cddpath)/lib/libcddgmp.a +@@ -71,37 +59,8 @@ SOPLEX_OBJECTS = lp_soplexcdd.o + endif + + +-# rememember to adjust USEFACTORY in field_rationalfunctions2 +-ifeq ($(singular),) +-ifeq ($(factory),) +-SINGULAR_PATH = +-SINGULAR_LINKOPTIONS = +-SINGULAR_INCLUDEOPTIONS = +-SINGULAR_OBJECTS = src/polynomialgcd.o +-else +-SINGULAR_PATH = +-SINGULAR_LINKOPTIONS = -lcf -lcfmem +-SINGULAR_INCLUDEOPTIONS = -I /usr/local/include/factory/ +-SINGULAR_OBJECTS = src/polynomialgcd.o src/ftmpl_inst.o +-endif +-else +-#SINGULAR_PATH = $(HOME)/math/software/Singular-3-1-0 +-#SINGULAR_LINKOPTIONS = -L$(SINGULAR_PATH)/Singular -lsingular -lncurses -lreadline +-#SINGULAR_INCLUDEOPTIONS = -I $(SINGULAR_PATH)/kernel -I $(SINGULAR_PATH)/omalloc +-#SINGULAR_OBJECTS = src/singular.o src/singularconversion.o +-SINGULAR_PATH = $(HOME)/math/software/Singular-svn/trunk/x86_64-Linux +-SINGULAR_LINKOPTIONS = -L$(SINGULAR_PATH)/lib -lsingular -lncurses -lreadline -lcf -lcfmem +-SINGULAR_INCLUDEOPTIONS = -I $(SINGULAR_PATH)/include -I $(SINGULAR_PATH)/include/omalloc +-SINGULAR_OBJECTS = src/ftmpl_inst.o src/singular.o src/singularconversion.o +-#Run the following line before running gfan +-#export LD_LIBRARY_PATH="/home/anders/math/software/Singular-svn/trunk/x86_64-Linux/lib/:${LD_LIBRARY_PATH}" +-endif +- +-# To produce factory templates: +-#g++ -c /home/anders/math/software/factory-3-1-7/ftmpl_inst.cc -fno-implicit-templates -I /usr/local/include/factory/ -I/home/anders/math/software/factory-3-1-7/ -O2 -fomit-frame-pointer -o ftmpl_inst.o +- +-ADDITIONALLINKOPTIONS = $(CDD_LINKOPTIONS) $(GMP_LINKOPTIONS) $(SOPLEX_LINKOPTIONS) $(SINGULAR_LINKOPTIONS) $(SAGE_LINKOPTIONS) +-ADDITIONALINCLUDEOPTIONS = $(CDD_INCLUDEOPTIONS) $(GMP_INCLUDEOPTIONS) $(SOPLEX_INCLUDEOPTIONS) $(SINGULAR_INCLUDEOPTIONS) $(SAGE_INCLUDEOPTIONS) ++ADDITIONALLINKOPTIONS = $(CDD_LINKOPTIONS) $(GMP_LINKOPTIONS) $(SOPLEX_LINKOPTIONS) ++ADDITIONALINCLUDEOPTIONS = $(CDD_INCLUDEOPTIONS) $(GMP_INCLUDEOPTIONS) $(SOPLEX_INCLUDEOPTIONS) + + + MKDIR=mkdir -p +@@ -110,13 +69,11 @@ MKDIR=mkdir -p + PREFIX = + SHELL = /bin/sh + #ARCH = LINUX +-CC = $(PREFIX)gcc +-CLINKER = $(CC) +-CXX = $(PREFIX)g++ +-CCLINKER = $(CXX) ++CC ?= $(PREFIX)gcc ++CXX ?= $(PREFIX)g++ + #OPTFLAGS = -O2 -DGMPRATIONAL -DNDEBUG + # Note that gcc produces wrong code with -O3 +-OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O2 #-O3 -fno-guess-branch-probability #-DNDEBUG ++OPTFLAGS = -DGMPRATIONAL -Wuninitialized + #OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O3 -mavx -msse2 -finline-limit=1000 -ffast-math -Wuninitialized # -fno-guess-branch-probability #-DNDEBUG -ftree-vectorizer-verbose=2 + #OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O1 -fno-guess-branch-probability + #-DNDEBUG +@@ -125,10 +82,10 @@ OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O2 #-O3 - + #OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O3 -msse2 -ftree-vectorizer-verbose=2 -ffast-math #-DNDEBUG + #OPTFLAGS = -DGMPRATIONAL -Wuninitialized -fno-omit-frame-pointer -O3 -mavx -msse2 -ftree-vectorizer-verbose=2 -ffast-math #-DNDEBUG + +-CFLAGS = $(OPTFLAGS) $(GPROFFLAG) $(STACTDUMP_OPTIONS) $(ADDITIONALINCLUDEOPTIONS) -std=c++0x -g $(CDDDEFINE_PREFIX) #-pedantic +-#CFLAGS = $(OPTFLAGS) $(GPROFFLAG) $(STACTDUMP_OPTIONS) $(ADDITIONALINCLUDEOPTIONS) -D_GLIBCXX_DEBUG -std=c++0x -g $(CDDDEFINE_PREFIX) #-pedantic +-CCFLAGS = $(CFLAGS) +-FFLAGS = $(OPTFLAGS) ++CFLAGS := $(CFLAGS) $(OPTFLAGS) $(GPROFFLAG) $(ADDITIONALINCLUDEOPTIONS) #-pedantic ++CXXFLAGS := $(CXXFLAGS) $(OPTFLAGS) $(GPROFFLAG) $(ADDITIONALINCLUDEOPTIONS) #-pedantic ++ ++SINGULAR_OBJECTS = src/polynomialgcd.o + + CATSOBJECTS = lp_cdd.o \ + parser.o \ +@@ -394,16 +351,15 @@ EXECS = $(MAIN) + # (compiling with gcc version 4.7.2 and running gfan _tropicaltraverse on a starting cone for Grassmann3_7) + # Either this is a bug in the code or in the compiler. The bug disappears by compiling with -fno-guess-branch-probability + src/symmetrictraversal.o: src/symmetrictraversal.cpp +- $(CXX) $(CFLAGS) -fno-guess-branch-probability -c src/symmetrictraversal.cpp -o src/symmetrictraversal.o ++ $(CXX) $(CXXFLAGS) -c src/symmetrictraversal.cpp -o src/symmetrictraversal.o + # If compiling with clang, use the line below instead: +-# $(CXX) $(CFLAGS) -c src/symmetrictraversal.cpp -o src/symmetrictraversal.o ++# $(CXX) $(CXXFLAGS) -c src/symmetrictraversal.cpp -o src/symmetrictraversal.o + + # Define suffixes to make the program compile on legolas.imf.au.dk : + .SUFFIXES: .o .cpp .c + + OBJECTS = $(addprefix src/,$(SOPLEX_OBJECTS)) \ + $(SINGULAR_OBJECTS) \ +- $(SAGE_OBJECTS) \ + $(addprefix src/,$(CATSOBJECTS)) \ + $(addprefix src/,$(APPOBJECTS)) \ + src/symmetrictraversal.o +@@ -420,7 +376,7 @@ default: $(OBJECTS) $(ADDITIONALOBJECTS) $(EXECS) + + $(MAIN): $(OBJECTS) + # $(CCLINKER) $(OBJECTS) $(ADDITIONALLINKOPTIONS) $(GPROFFLAG) -lpthread -o $(MAIN) +- $(CCLINKER) $(OBJECTS) $(ADDITIONALLINKOPTIONS) $(GPROFFLAG) -lpthread -rdynamic -o $(MAIN) ++ $(CXX) $(CXXFLAGS) -pthread -o $(MAIN) $(LDFLAGS) $(OBJECTS) -lpthread $(ADDITIONALLINKOPTIONS) $(GPROFFLAG) + + release: + rm -f -r $(RELEASEDIR)/* +@@ -546,7 +502,7 @@ check: + .c.o: + $(CC) $(CFLAGS) -c $< -o $(patsubst %.c,%.o,$<) + .cpp.o: +- $(CXX) $(CFLAGS) -c $< -o $(patsubst %.cpp,%.o,$<) ++ $(CXX) $(CXXFLAGS) -c $< -o $(patsubst %.cpp,%.o,$<) + + # wget http://ftp.sunet.se/pub/gnu/gmp/gmp-4.2.2.tar.gz + # tar -xzvf gmp-4.2.2.tar.gz diff --git a/sci-mathematics/gfan/files/gfan-0.6.2-testsuite.patch b/sci-mathematics/gfan/files/gfan-0.6.2-testsuite.patch new file mode 100644 index 000000000000..920646e486e4 --- /dev/null +++ b/sci-mathematics/gfan/files/gfan-0.6.2-testsuite.patch @@ -0,0 +1,222 @@ +diff --git a/src/app_test.cpp b/src/app_test.cpp +index 755bfe6..183c735 100644 +--- a/src/app_test.cpp ++++ b/src/app_test.cpp +@@ -562,6 +562,9 @@ int testIntegers() + failed.push_back(i->folder); + } + cout<<"\n"; ++ cout<<"Number of succesful tests "<close(); +- delete ep;//<--- In next release, make the class virtual ++// delete ep;//<--- In next release, make the class virtual # this is miscompiled clang@xcode-6.3 + + printf("\n"); + diff --git a/sci-mathematics/gfan/gfan-0.6.2.ebuild b/sci-mathematics/gfan/gfan-0.6.2.ebuild new file mode 100644 index 000000000000..a75c9f76f0f7 --- /dev/null +++ b/sci-mathematics/gfan/gfan-0.6.2.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="Compute Groebner fans and tropical varieties" +HOMEPAGE="https://users-math.au.dk/~jensen/software/gfan/gfan.html" +SRC_URI="https://users-math.au.dk/~jensen/software/${PN}/${PN}${PV}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="amd64 ~arm ~x86 ~amd64-linux ~x86-linux" +IUSE="doc" + +BDEPEND="doc? ( virtual/latex-base )" +DEPEND="dev-libs/gmp:0=[cxx] + sci-libs/cddlib:0=" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${PN}${PV}" + +PATCHES=( + "${FILESDIR}/${PN}-0.6.2-xcode9.3_compat.patch" + "${FILESDIR}/${PN}-0.6.2-testsuite.patch" + "${FILESDIR}/${PN}-0.6.2-Makefile.patch" + ) + +pkg_setup() { + tc-export CC CXX + append-cxxflags -DNOCDDPREFIX +} + +src_configure() { + # The upstream Makefile says that GCC produces bad code with -O3. + replace-flags "-O3" "-O2" + default +} + +src_compile() { + default + if use doc; then + pushd doc > /dev/null || die + # The LaTeX build commands need to be repeated until the + # document "stops changing," which is not as easy as it + # sounds to detect. Running it twice seems to work here. + pdflatex manual.tex && bibtex manual && pdflatex manual.tex || die + popd > /dev/null || die + fi +} + +src_install() { + emake PREFIX="${ED}/usr" install + use doc && dodoc doc/manual.pdf +} diff --git a/sci-mathematics/gfan/metadata.xml b/sci-mathematics/gfan/metadata.xml index abc08ece6082..c9e1ddd54b35 100644 --- a/sci-mathematics/gfan/metadata.xml +++ b/sci-mathematics/gfan/metadata.xml @@ -6,6 +6,21 @@ Gentoo Mathematics Project - gfan is a computer algebra tool to compute Groebner fans and tropical varieties. + Gfan is a software package for computing Gröbner fans and tropical + varieties. These are polyhedral fans associated to polynomial + ideals. The maximal cones of a Gröbner fan are in bijection with the + marked reduced Gröbner bases of its defining ideal. The software + computes all marked reduced Gröbner bases of an ideal. Their union + is a universal Gröbner basis. The tropical variety of a polynomial + ideal is a certain subcomplex of the Gröbner fan. Gfan contains + algorithms for computing this complex for general ideals and + specialized algorithms for tropical curves, tropical hypersurfaces + and tropical varieties of prime ideals. In addition to the above + core functions the package contains many tools which are useful in + the study of Gröbner bases, initial ideals and tropical + geometry. The full list of commands can be found in Appendix B of + the manual. For ordinary Gröbner basis computations Gfan is not + competitive in speed compared to programs such as CoCoA, Singular + and Macaulay2. -- cgit v1.2.3