svn commit: r496352 - in head/math: . libnormaliz libnormaliz/files
Steve Wills
swills at FreeBSD.org
Wed Mar 20 16:31:35 UTC 2019
Author: swills
Date: Wed Mar 20 16:31:32 2019
New Revision: 496352
URL: https://svnweb.freebsd.org/changeset/ports/496352
Log:
math/libnormaliz: create port
Normaliz is an open source tool for computations in affine monoids,
vector configurations, lattice polytopes, and rational cones.
Computation goals:
- convex hulls and dual cones;
- conversion from generators to constraints and vice versa;
- projections of cones and polyhedra;
- triangulations, disjoint decompositions and Stanley decompositions;
- Hilbert basis of rational, not necessarily pointed cones;
- normalization of affine monoids;
- lattice points of rational polytopes and (unbounded) polyhedra;
- Euclidean and lattice normalized volumes of polytopes;
- Hilbert (or Ehrhart) series and (quasi) polynomials under Z-gradings
(for example, for rational polytopes);
- generalized (or weighted) Ehrhart series and Lebesgue integrals of
polynomials over rational polytopes.
WWW: https://www.normaliz.uni-osnabrueck.de
PR: 231806
Submitted by: Lorenzo Salvadore <phascolarctos at protonmail.ch>
Added:
head/math/libnormaliz/
head/math/libnormaliz/Makefile (contents, props changed)
head/math/libnormaliz/distinfo (contents, props changed)
head/math/libnormaliz/files/
head/math/libnormaliz/files/patch-source_libnormaliz_Makefile.classic (contents, props changed)
head/math/libnormaliz/files/patch-source_libnormaliz_nmz__integral.cpp (contents, props changed)
head/math/libnormaliz/pkg-descr (contents, props changed)
head/math/libnormaliz/pkg-plist (contents, props changed)
Modified:
head/math/Makefile (contents, props changed)
Modified: head/math/Makefile
==============================================================================
--- head/math/Makefile Wed Mar 20 16:31:19 2019 (r496351)
+++ head/math/Makefile Wed Mar 20 16:31:32 2019 (r496352)
@@ -334,6 +334,7 @@
SUBDIR += liblbfgs
SUBDIR += libmesh
SUBDIR += libmissing
+ SUBDIR += libnormaliz
SUBDIR += libocas
SUBDIR += liborigin
SUBDIR += libpgmath
Added: head/math/libnormaliz/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/Makefile Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+PORTNAME= libnormaliz
+DISTVERSIONPREFIX= v
+DISTVERSION= 3.6.3
+CATEGORIES= math
+
+MAINTAINER= phascolarctos at protonmail.ch
+COMMENT= Computations in affin monoids, vector configurations etc
+
+LICENSE= GPLv3+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= ${LOCALBASE}/include/boost/dynamic_bitset.hpp:devel/boost-libs \
+ ${LOCALBASE}/include/gmpxx.h:math/gmp
+
+USES= gmake
+USE_GITHUB= yes
+
+GH_ACCOUNT= Normaliz
+GH_PROJECT= Normaliz
+
+BUILD_WRKSRC= ${WRKSRC}/source/libnormaliz
+INSTALL_WRKSRC= ${WRKSRC}/source/libnormaliz
+
+CXXFLAGS+= -I ${LOCALBASE}/include
+MAKEFILE= Makefile.classic
+
+OPTIONS_DEFINE= COCOA DOCS FLINT OPENMP
+COCOA_DESC= Link with libcocoa.a (might cause circular dependency)
+FLINT_DESC= Link with libflint.a
+COCOA_BUILD_DEPENDS= ${LOCALBASE}/lib/libcocoa.a:math/cocoalib
+COCOA_CXXFLAGS= -DNMZ_COCOA -DCoCoA_THREADSAFE_HACK
+COCOA_LDFLAGS= ${LOCALBASE}/lib -lcocoa
+FLINT_BUILD_DEPENDS= ${LOCALBASE}/lib/libflint.so:math/flint2
+FLINT_CXXFLAGS= -DNMZ_FLINT
+FLINT_LDFLAGS= -L ${LOCALBASE}/lib -lflint -lmpfr
+OPENMP_BUILD_DEPENDS= ${LOCALBASE}/lib/libomp.so:devel/openmp
+OPENMP_CXXFLAGS= -fopenmp
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/include/libnormaliz
+ ${INSTALL_DATA} ${INSTALL_WRKSRC}/libnormaliz.a ${STAGEDIR}${PREFIX}/lib
+ cd ${INSTALL_WRKSRC} && ${INSTALL_DATA} cone.h cone_property.h convert.h general.h HilbertSeries.h integer.h libnormaliz.h map_operations.h matrix.h my_omp.h normaliz_exception.h sublattice_representation.h vector_operations.h version.h nmz_integrate.h ${STAGEDIR}${PREFIX}/include/libnormaliz
+
+post-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKSRC}/doc/Normaliz.pdf ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
Added: head/math/libnormaliz/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/distinfo Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1536314303
+SHA256 (Normaliz-Normaliz-v3.6.3_GH0.tar.gz) = 1c3dad1f5256c92dde21b0eea1423afe95d98863c90f5e4cb429ffa71ba57f54
+SIZE (Normaliz-Normaliz-v3.6.3_GH0.tar.gz) = 9923720
Added: head/math/libnormaliz/files/patch-source_libnormaliz_Makefile.classic
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/files/patch-source_libnormaliz_Makefile.classic Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,10 @@
+--- source/libnormaliz/Makefile.classic.orig 2018-08-21 13:25:10 UTC
++++ source/libnormaliz/Makefile.classic
+@@ -1,7 +1,6 @@
+ ##
+ ## Makefile for libnormaliz
+ ##
+-include ../Makefile.configuration
+
+ INSTALLHDRS = cone.h cone_property.h convert.h general.h HilbertSeries.h integer.h libnormaliz.h map_operations.h matrix.h my_omp.h normaliz_exception.h sublattice_representation.h vector_operations.h version.h nmz_integrate.h
+
Added: head/math/libnormaliz/files/patch-source_libnormaliz_nmz__integral.cpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/files/patch-source_libnormaliz_nmz__integral.cpp Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,11 @@
+--- source/libnormaliz/nmz_integral.cpp.orig 2018-09-25 05:50:07 UTC
++++ source/libnormaliz/nmz_integral.cpp
+@@ -403,7 +403,7 @@ try{
+ vector<Integer> test_grading=C.getSublattice().to_sublattice_dual_no_div(C.getGrading());
+ Integer corr_factor=v_gcd(test_grading);
+ mpz_class corr_mpz=convertTo<mpz_class>(corr_factor);
+- I*=BigInt(corr_mpz.get_mpz_t());
++ I*=BigIntFromMPZ(corr_mpz.get_mpz_t());
+
+ string result="Integral";
+ if(do_virt_mult)
Added: head/math/libnormaliz/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/pkg-descr Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,18 @@
+Normaliz is an open source tool for computations in affine monoids,
+vector configurations, lattice polytopes, and rational cones.
+
+Computation goals:
+- convex hulls and dual cones;
+- conversion from generators to constraints and vice versa;
+- projections of cones and polyhedra;
+- triangulations, disjoint decompositions and Stanley decompositions;
+- Hilbert basis of rational, not necessarily pointed cones;
+- normalization of affine monoids;
+- lattice points of rational polytopes and (unbounded) polyhedra;
+- Euclidean and lattice normalized volumes of polytopes;
+- Hilbert (or Ehrhart) series and (quasi) polynomials under Z-gradings
+(for example, for rational polytopes);
+- generalized (or weighted) Ehrhart series and Lebesgue integrals of
+polynomials over rational polytopes.
+
+WWW: https://www.normaliz.uni-osnabrueck.de
Added: head/math/libnormaliz/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libnormaliz/pkg-plist Wed Mar 20 16:31:32 2019 (r496352)
@@ -0,0 +1,17 @@
+include/libnormaliz/HilbertSeries.h
+include/libnormaliz/cone.h
+include/libnormaliz/cone_property.h
+include/libnormaliz/convert.h
+include/libnormaliz/general.h
+include/libnormaliz/integer.h
+include/libnormaliz/libnormaliz.h
+include/libnormaliz/map_operations.h
+include/libnormaliz/matrix.h
+include/libnormaliz/my_omp.h
+include/libnormaliz/nmz_integrate.h
+include/libnormaliz/normaliz_exception.h
+include/libnormaliz/sublattice_representation.h
+include/libnormaliz/vector_operations.h
+include/libnormaliz/version.h
+lib/libnormaliz.a
+%%PORTDOCS%%%%DOCSDIR%%/Normaliz.pdf
More information about the svn-ports-head
mailing list