Summary:  [NEW PORT] math/libnormaliz: computations in affin monoids, vector configurations etc  

Product:  Ports & Packages  Reporter:  Lorenzo Salvadore <phascolarctos>  
Component:  Individual Port(s)  Assignee:  freebsdportsbugs mailing list <portsbugs>  
Status:  Closed FIXED  
Severity:  Affects Only Me  CC:  ndowens  
Priority:    Keywords:  needsqa  
Version:  Latest  
Hardware:  Any  
OS:  Any  
Bug Depends on:  231807  
Bug Blocks:  
Attachments: 

Comment on attachment 197605 [details] shar file of libnormaliz Same revisions I suggested in bug#231807 needs to be done here Check portlint AC: As : XPORTNAME= libnormaliz XDISTVERSIONPREFIX= v XDISTVERSION= 3.6.3 XCATEGORIES= math Doesn't look like the correct order I believe it is: PORTNAME DISTVERSION DISTVERSIONPREFIX CATEGORIES (In reply to Nathan from comment #1) Nevermind on the order, it is correct, but the other suggestions linked still applies Comment on attachment 197605 [details]
shar file of libnormaliz
${INSTALL_MAN} ${WRKSRC}/doc/Normaliz.pdf ${STAGEDIR}${DOCSDIR}
Should be
${INSTALL_DATA} ${WRKSRC}/doc/Normaliz.pdf ${STAGEDIR}${DOCSDIR}
pdf file isn't a manpage
Created attachment 197621 [details]
shar file of libnormaliz  correction 1
I have put all the options on the same line and corrected INSTALL_MAN with INSTALL_DOC. I think that was all it needed to be done.
I forgot to put the link to CoCoALib. Here it is: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=231807 Created attachment 197674 [details] shar file of libnormaliz  correction 2 Style corrections following suggestions from bug #231161. Created attachment 197690 [details]
shar file of libnormaliz  correction 3
Canceled correction about Normaliz.pdf for the following reasons:
 my correction was wrong (INSTALL_DOC does not exist and indeed INSTALL_DATA is what was suggested)
 according to the handbook, "INSTALL_MAN is a command to install manpages and other documentation", hence INSTALL_MAN was right.
Comment on attachment 197690 [details]
shar file of libnormaliz  correction 3
I do not understand what the flavors are supposed to do. Can you
explain what the intent behind them is here?
XBUILD_WRKSRC= ${WRKSRC}/source/libnormaliz
XINSTALL_WRKSRC= ${WRKSRC}/source/libnormaliz
X
XCXXFLAGS+= I ${LOCALBASE}/include
XMAKEFILE= Makefile.classic
These are all framework variables and in the wrong place.
XHEADERSDIR= ${PREFIX}/include/libnormaliz
This custom variable is only used twice. Maybe inline it instead.
X for x in 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; do ${INSTALL_DATA} ${INSTALL_WRKSRC}/$$x ${STAGEDIR}${HEADERSDIR}; done
It would be better to use a .for loop here, or even without
one at all like
cd ${INSTALL_WRKSRC} && ${INSTALL_DATA} cone.h cone_propery.h ... ${STAGEDIR}${PREFIX}/include/libnormaliz
pkgplist is badly ordered. Please use the order as output by `make
makeplist`.
Please reopen when you have time to address comment #8. Created attachment 201750 [details] shar file of libnormaliz  correction 4 Sorry, I have been very busy in the last months (and I still am) and I forgot about this new port. I did all the changes you asked. As for flavors, it was a mistake and I removed it (this was one of the first ports I created). The problem is that libnormaliz has an optional circular dependency with cocoalib (another new port I submitted, bug #231807) and I thought flavors should be used to solve it, but the problem can be solved in an easier way with a simple option (disabled by default). I did the same mistake with the cocoalib port. I will correct it as soon as possible (today or tomorrow), but in the meantime the port probably will not work with the COCOA option enabled. Reopens the bug report as requested. I made the needed corrections in bug #231807. Giving back to pool to free it up for other committers too. This is blocked by bug #231807 and bug #231208 by transitivity at the moment. A commit references this bug: Author: swills Date: Wed Mar 20 16:31:33 UTC 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 Zgradings (for example, for rational polytopes);  generalized (or weighted) Ehrhart series and Lebesgue integrals of polynomials over rational polytopes. WWW: https://www.normaliz.uniosnabrueck.de PR: 231806 Submitted by: Lorenzo Salvadore <phascolarctos@protonmail.ch> Changes: head/math/Makefile head/math/libnormaliz/ head/math/libnormaliz/Makefile head/math/libnormaliz/distinfo head/math/libnormaliz/files/ head/math/libnormaliz/files/patchsource_libnormaliz_Makefile.classic head/math/libnormaliz/files/patchsource_libnormaliz_nmz__integral.cpp head/math/libnormaliz/pkgdescr head/math/libnormaliz/pkgplist Committed, thanks! 
Created attachment 197605 [details] shar file of libnormaliz This port has an optional dependency on CoCoALib. I am providing CoCoALib too and I am going to give the link to the bug report that proposes it as new port.