aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Salvadore <salvadore@FreeBSD.org>2022-04-26 11:31:50 +0000
committerLorenzo Salvadore <salvadore@FreeBSD.org>2022-05-05 10:12:35 +0000
commitf86da7c9da39f8b91c5d76005231ee873ebe92c4 (patch)
tree71c6d35d038f4dc5fd97f285119cbd4f7ec4b9cb
parente58af116e1038fcb3eb4db089458136a0bd5848d (diff)
downloadports-f86da7c9da39f8b91c5d76005231ee873ebe92c4.tar.gz
ports-f86da7c9da39f8b91c5d76005231ee873ebe92c4.zip
math/frobby: Improve port and adopt again
- Reorder variables. - Simplify port by introducing USES= localbase:ldflags. - Set ALL_TARGET= # Empty to avoid defining do-build. - Remove BINARY_ALIAS: patch Makefile instead. - Always install executable, remove corresponding option, rename EXEDOCS option to DOCS. - Always install shared library, remove corresponding option. - Install static library with INSTALL_DATA and shared library with INSTALL_LIB. - Improve shared library management by using an upstream patch. This also solves a poudriere warning about libfrobby.so.0 not having a SONAME. - Remove outdated warnings about failing tests. - Fix LIBDOCS dependencies. - Remove pkg-help file, which does not contain any useful information any more. - Fix pkg-plist. Reviewed by: diizzy thierry Approved by: gerald (mentor) Differential Revision: https://reviews.freebsd.org/D35028
-rw-r--r--math/frobby/Makefile88
-rw-r--r--math/frobby/distinfo4
-rw-r--r--math/frobby/files/patch-Makefile20
-rw-r--r--math/frobby/files/patch-test_runSplitTests48
-rw-r--r--math/frobby/files/patch-test_runTests60
-rw-r--r--math/frobby/pkg-help18
-rw-r--r--math/frobby/pkg-plist28
7 files changed, 72 insertions, 194 deletions
diff --git a/math/frobby/Makefile b/math/frobby/Makefile
index a59f27781615..89f72718463a 100644
--- a/math/frobby/Makefile
+++ b/math/frobby/Makefile
@@ -1,93 +1,91 @@
-PORTNAME= frobby
-PORTVERSION= 0.9.5
+PORTNAME= frobby
DISTVERSIONPREFIX= v
-CATEGORIES= math
+DISTVERSION= 0.9.5
+PORTREVISION= 1
+CATEGORIES= math
-MAINTAINER= ports@FreeBSD.org
+PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
+PATCHFILES= 5b9e4ac4057f5693f53c321eeb5bfb387f6b69fb.patch:-p1
+
+MAINTAINER= salvadore@FreeBSD.org
COMMENT= Software system and project for computations with monomial ideals
LICENSE= GPLv2+
LIB_DEPENDS= libgmp.so:math/gmp
-USES= gmake shebangfix
+USES= gmake localbase:ldflags shebangfix
USE_GITHUB= yes
GH_ACCOUNT= Macaulay2
-BINARY_ALIAS= make=gmake
USE_LDCONFIG= yes
-SHEBANG_FILES= test/testScripts/* test/runTests test/runSplitTests \
- test/latticeFormats/runtest*
+SHEBANG_FILES= test/latticeFormats/runtest* test/runSplitTests test/runTests \
+ test/testScripts/*
+
+MAKE_ENV= RANLIB=${RANLIB}
+
+ALL_TARGET= # Empty
-OPTIONS_DEFINE= EXEDOCS LIBDOCS TEST
-OPTIONS_DEFAULT= STATIC SHARED
-OPTIONS_MULTI= INSTALL
-OPTIONS_MULTI_INSTALL= EXECUTABLE \
- SHARED \
- STATIC
-EXEDOCS_DESC= Build and install documentation for frobby executable
+OPTIONS_DEFINE= DOCS LIBDOCS STATIC TEST
+OPTIONS_DEFAULT= STATIC
+OPTIONS_SUB= yes
LIBDOCS_DESC= Build and install documentation for frobby library
-EXECUTABLE_DESC= Build and install frobby executable
-SHARED_DESC= Build and install libfrobby.so
-STATIC_DESC= Build and install libfrobby.a
-EXEDOCS_BUILD_DEPENDS= latex:print/tex-formats \
- dvips:print/tex-dvipsk
+DOCS_BUILD_DEPENDS= dvips:print/tex-dvipsk \
+ latex:print/tex-formats
LIBDOCS_BUILD_DEPENDS= doxygen:devel/doxygen \
- epstopdf:print/texlive-base
+ dvips:print/tex-dvipsk \
+ epstopdf:print/texlive-base \
+ latex:print/tex-formats
TEST_BUILD_DEPENDS= bash:shells/bash
-OPTIONS_SUB= yes
-
-MAKE_ARGS+= GMP_INC_DIR=${LOCALBASE}/include
-MAKE_ENV= RANLIB=${RANLIB}
-LDFLAGS+= -L${LOCALBASE}/lib
.include <bsd.port.options.mk>
-.if ${PORT_OPTIONS:MSHARED} || ${PORT_OPTIONS:MSTATIC}
-PLIST_SUB+= LIBRARY="" NO_LIBRARY="@comment "
+.if ${PORT_OPTIONS:MSTATIC}
+PLIST_SUB+= LIBRARY="" \
+ NO_LIBRARY="@comment "
.else
-PLIST_SUB+= LIBRARY="@comment " NO_LIBRARY=""
+PLIST_SUB+= LIBRARY="@comment " \
+ NO_LIBRARY=""
.endif
-do-build:
+# The following variables should be defined to the same values
+# that can be found in ${WRKSRC}/Makefile
+FROBBY_SOVERSION= 1
+FROBBY_AGE= 0
+FROBBY_REVISION= 0
+FROBBY_VERSION= ${FROBBY_SOVERSION}.${FROBBY_AGE}.${FROBBY_REVISION}
-do-build-EXEDOCS-on:
+do-build-DOCS-on:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} doc
-do-build-EXECUTABLE-on:
- cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS}
-
do-build-LIBDOCS-on:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} develDoc
do-build-STATIC-on:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} library
-post-build-SHARED-on:
+post-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} MODE=shared library
-post-build-TEST-on: do-build-EXECUTABLE-on
+post-build-TEST-on:
cd ${WRKSRC} && test/runTests _full
cd ${WRKSRC} && test/runSplitTests _full
do-install:
-
-do-install-EXECUTABLE-on:
${INSTALL_PROGRAM} ${WRKSRC}/bin/release/frobby ${STAGEDIR}${PREFIX}/bin
-
-do-install-SHARED-on:
${INSTALL_DATA} ${WRKSRC}/src/frobby.h ${STAGEDIR}${PREFIX}/include
- ${INSTALL_DATA} ${WRKSRC}/bin/libfrobby.so ${STAGEDIR}${PREFIX}/lib/libfrobby.so.0
- cd ${STAGEDIR}${PREFIX}/lib && \
- ${LN} -sf libfrobby.so.0 ${STAGEDIR}${PREFIX}/lib/libfrobby.so
+ ${INSTALL_LIB} ${WRKSRC}/bin/libfrobby.so.${FROBBY_VERSION} ${STAGEDIR}${PREFIX}/lib/libfrobby.so.${FROBBY_VERSION}
+ cd ${STAGEDIR}${PREFIX}/lib && \
+ ${RLN} libfrobby.so.${FROBBY_VERSION} ${STAGEDIR}${PREFIX}/lib/libfrobby.so && \
+ ${RLN} libfrobby.so.${FROBBY_VERSION} ${STAGEDIR}${PREFIX}/lib/libfrobby.so.${FROBBY_SOVERSION}
do-install-STATIC-on:
${INSTALL_DATA} ${WRKSRC}/src/frobby.h ${STAGEDIR}${PREFIX}/include
- ${INSTALL_LIB} ${WRKSRC}/bin/libfrobby.a ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_DATA} ${WRKSRC}/bin/libfrobby.a ${STAGEDIR}${PREFIX}/lib
-do-install-EXEDOCS-on:
+do-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_MAN} ${WRKSRC}/bin/manual.ps ${STAGEDIR}${DOCSDIR}
${INSTALL_MAN} ${WRKSRC}/bin/manual.pdf ${STAGEDIR}${DOCSDIR}
diff --git a/math/frobby/distinfo b/math/frobby/distinfo
index c4c231da33f8..baea1d47e62c 100644
--- a/math/frobby/distinfo
+++ b/math/frobby/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1641418085
+TIMESTAMP = 1650972050
SHA256 (Macaulay2-frobby-v0.9.5_GH0.tar.gz) = 714c33c4f68e86d82062d7a42ad42c581d4b4c60d6a73ee1836ba1be7f985eb3
SIZE (Macaulay2-frobby-v0.9.5_GH0.tar.gz) = 878560
+SHA256 (5b9e4ac4057f5693f53c321eeb5bfb387f6b69fb.patch) = 34f9e4d21b3733f549bf35ec8562a5a316a50251fac23c577c750db45d6f764a
+SIZE (5b9e4ac4057f5693f53c321eeb5bfb387f6b69fb.patch) = 1747
diff --git a/math/frobby/files/patch-Makefile b/math/frobby/files/patch-Makefile
index cfc3ae736a56..b75c2d92e306 100644
--- a/math/frobby/files/patch-Makefile
+++ b/math/frobby/files/patch-Makefile
@@ -1,6 +1,6 @@
---- Makefile.orig 2021-02-23 21:29:06 UTC
+--- Makefile.orig 2022-05-03 16:32:53 UTC
+++ Makefile
-@@ -99,7 +99,6 @@ endif
+@@ -107,7 +107,6 @@ ifeq ($(MODE), release)
MATCH=false
ifeq ($(MODE), release)
outdir = bin/release/
@@ -8,7 +8,7 @@
MATCH=true
endif
ifeq ($(MODE), debug)
-@@ -111,13 +110,13 @@ ifeq ($(MODE), debug)
+@@ -119,13 +118,13 @@ ifeq ($(MODE), shared)
endif
ifeq ($(MODE), shared)
outdir = bin/shared/
@@ -24,3 +24,17 @@
ldflags += -pg
MATCH=true
benchArgs = _profile $(FROBBYARGS)
+@@ -306,11 +305,11 @@ develDocPdf: bin/develDoc/
+ rm -rf bin/develDoc/latexPdf bin/develDoc/warningLog
+ cat doc/doxygen.conf doc/doxPdf|doxygen -
+ cd bin/develDoc/latexPdf; for f in `ls *.eps`; do epstopdf $$f; done # Cygwin fix
+- cd bin/develDoc/latexPdf/; make refman.pdf; mv refman.pdf ../develDoc.pdf
++ cd bin/develDoc/latexPdf/; ${MAKE} refman.pdf; mv refman.pdf ../develDoc.pdf
+ develDocPs: bin/develDoc/
+ rm -rf bin/develDoc/latexPs bin/develDoc/warningLog
+ cat doc/doxygen.conf doc/doxPs|doxygen -
+- cd bin/develDoc/latexPs/; make refman.ps; mv refman.ps ../develDoc.ps
++ cd bin/develDoc/latexPs/; ${MAKE} refman.ps; mv refman.ps ../develDoc.ps
+
+ clean: tidy
+ rm -rf bin
diff --git a/math/frobby/files/patch-test_runSplitTests b/math/frobby/files/patch-test_runSplitTests
deleted file mode 100644
index 94b517d5e28d..000000000000
--- a/math/frobby/files/patch-test_runSplitTests
+++ /dev/null
@@ -1,48 +0,0 @@
---- test/runSplitTests.orig 2018-09-08 10:55:55 UTC
-+++ test/runSplitTests
-@@ -30,6 +30,8 @@ params="$*"
- testhelper=../testScripts/testhelper
- paths="specialIdeals commonIdeals frob"
-
-+failed=""
-+
- runTests () {
- action="$1"; shift;
- splits="$*";
-@@ -41,8 +43,9 @@ runTests () {
- for path in $paths; do
- cd test/$path;
- ../testScripts/runtests $action $params -split $split;
-- if [ $? != 0 ]; then exit 1; fi
-+ if [ $? != 0 ]; then cd ../..; return 1; fi
- cd ../..;
-+return 0
-
- if [ "$testLevel" = "few" ]; then
- if [ "$action" != "frob" ]; then
-@@ -57,19 +60,25 @@ runTests () {
- for action in $bigattiActions;
- do
- runTests "$action" $bigattiSplits
-+if [ $? -eq 1 ]; then failed="$failed $action"; continue; fi
- done
-
- for action in $labelActions;
- do
- runTests "$action" $labelSplits
-+if [ $? -eq 1 ]; then failed="$failed $action"; continue; fi
- done
-
- for action in $pivotActions;
- do
- runTests "$action" $pivotSplits
-+if [ $? -eq 1 ]; then failed="$failed $action"; continue; fi
- done
-
- for action in $frobActions;
- do
- runTests "$action" $frobSplits
-+if [ $? -eq 1 ]; then failed="$failed $action"; continue; fi
- done
-+echo -e "\nFailed tests:$failed."
-+echo "But test hilbert_bigatti was expected to fail because simplification is broken for it."
diff --git a/math/frobby/files/patch-test_runTests b/math/frobby/files/patch-test_runTests
deleted file mode 100644
index 1951a4197ecb..000000000000
--- a/math/frobby/files/patch-test_runTests
+++ /dev/null
@@ -1,60 +0,0 @@
---- test/runTests.orig 2011-09-23 20:09:12 UTC
-+++ test/runTests
-@@ -15,20 +15,23 @@ normalTests="euler alexdual hilbert_deform hilbert_big
-
- specialTests="internal idealFormats polyFormats latticeFormats messages"
- params="$*"
-+failed=""
-
- runNormalTests () {
- action="$1"; shift;
- path="$1"; shift;
- cd test/$path;
- ../testScripts/runtests $action $params
-- if [ $? != 0 ]; then exit 1; fi
-+ if [ $? != 0 ]; then cd ../..; return 1; fi
- cd ../..;
-+return 0
- }
-
- for t in $normalTests; do
- echo -n "$t "
-
- runNormalTests $t specialIdeals
-+if [ $? -eq 1 ]; then failed="$failed $t"; continue; fi
- if [ "$testLevel" = "few" ]; then
- if [ "$t" != "frob" ]; then
- echo;
-@@ -37,15 +40,19 @@ for t in $normalTests; do
- fi
-
- runNormalTests $t commonIdeals
-+if [ $? -eq 1 ]; then failed="$failed $t"; continue; fi
-
- runNormalTests $t frob
-+if [ $? -eq 1 ]; then failed="$failed $t"; continue; fi
-
- if [ "$t" == "euler" ]; then
- runNormalTests $t bigIdeals
-+if [ $? -eq 1 ]; then failed="$failed $t"; continue; fi
- fi
-
- if [ -e "$t" ]; then
- runNormalTests $t $t
-+if [ $? -eq 1 ]; then failed="$failed $t"; continue; fi
- fi
-
- echo
-@@ -56,9 +63,10 @@ do
- echo -n "$t "
- cd test/$t
- ./runtests $*
-- if [ $? != 0 ]; then exit 1; fi
-+ if [ $? != 0 ]; then failed="$failed $t"; continue; fi
- echo
- cd ../..
- done
-
--echo "All normal tests passed."
-+echo "Failed tests:$failed."
-+echo "But tests hilbert_deform and hilbert_bigatti were expected to fail because simplification is broken for them."
diff --git a/math/frobby/pkg-help b/math/frobby/pkg-help
deleted file mode 100644
index c59b9a00c128..000000000000
--- a/math/frobby/pkg-help
+++ /dev/null
@@ -1,18 +0,0 @@
-If you are installing Frobby as a dependency, most probably you only
-need the static library and maybe the shared library, but certainly
-not the executable.
-
-----------------------------------------------------------------------
-
-Warning: the library documentation is very incomplete.
-Warning: installing documentation might require high build times due
-to heavy build dependencies.
-
-----------------------------------------------------------------------
-
-Warning: hilbert_deform and hilbert_bigatti tests are known to fail
-because simplifications do not work for action "hilbert" with
-algorithm "deform" or "bigatti", i.e. output polynomials present
-expressions such as "a*b*c + a*b*c" or "a - a". Nevertheless results
-seem to be correct.
-Please report if you get wrong results.
diff --git a/math/frobby/pkg-plist b/math/frobby/pkg-plist
index a47d309eb962..dc46a698510c 100644
--- a/math/frobby/pkg-plist
+++ b/math/frobby/pkg-plist
@@ -1,6 +1,9 @@
-%%EXECUTABLE%%bin/frobby
-%%EXEDOCS%%%%DOCSDIR%%/manual.pdf
-%%EXEDOCS%%%%DOCSDIR%%/manual.ps
+bin/frobby
+lib/libfrobby.so
+lib/libfrobby.so.1
+lib/libfrobby.so.1.0.0
+%%DOCS%%%%DOCSDIR%%/manual.pdf
+%%DOCS%%%%DOCSDIR%%/manual.ps
%%LIBDOCS%%%%DOCSDIR%%/develDoc.pdf
%%LIBDOCS%%%%DOCSDIR%%/develDoc.ps
%%LIBDOCS%%%%DOCSDIR%%/html/Action_8cpp_source.html
@@ -757,8 +760,7 @@
%%LIBDOCS%%%%DOCSDIR%%/html/doxygen_8cpp_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/doxygen_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/doxygen.css
-%%LIBDOCS%%%%DOCSDIR%%/html/doxygen.png
-%%LIBDOCS%%%%DOCSDIR%%/html/doxygen.png
+%%LIBDOCS%%%%DOCSDIR%%/html/doxygen.svg
%%LIBDOCS%%%%DOCSDIR%%/html/DynamicFrobeniusAction_8cpp_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/DynamicFrobeniusAction_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/DynamicFrobeniusAction_8h_source.html
@@ -927,8 +929,6 @@
%%LIBDOCS%%%%DOCSDIR%%/html/FrobeniusAction_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/FrobeniusAction_8h_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/FrobeniusAction_8h.html
-%%LIBDOCS%%%%DOCSDIR%%/html/functions_0x7e.html
-%%LIBDOCS%%%%DOCSDIR%%/html/functions_0x7e.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_a.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_b.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_c.html
@@ -937,8 +937,6 @@
%%LIBDOCS%%%%DOCSDIR%%/html/functions_enum.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_eval.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_f.html
-%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_0x7e.html
-%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_0x7e.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_a.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_b.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_c.html
@@ -964,6 +962,8 @@
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_x.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_z.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_func.html
+%%LIBDOCS%%%%DOCSDIR%%/html/functions_func_~.html
+%%LIBDOCS%%%%DOCSDIR%%/html/functions_~.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_g.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_h.html
%%LIBDOCS%%%%DOCSDIR%%/html/functions_i.html
@@ -1270,7 +1270,6 @@
%%LIBDOCS%%%%DOCSDIR%%/html/NameFactory_8h_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/NameFactory_8h.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespace____gnu__cxx.html
-%%LIBDOCS%%%%DOCSDIR%%/html/namespaceconstants.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespacefourti2.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespacefplll.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespaceFrobby.html
@@ -1288,7 +1287,6 @@
%%LIBDOCS%%%%DOCSDIR%%/html/namespacemembers.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespaces.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespaceSquareFreeTermOps.html
-%%LIBDOCS%%%%DOCSDIR%%/html/namespacestd.html
%%LIBDOCS%%%%DOCSDIR%%/html/namespaceTestInternal.html
%%LIBDOCS%%%%DOCSDIR%%/html/nav_f.png
%%LIBDOCS%%%%DOCSDIR%%/html/nav_g.png
@@ -1472,11 +1470,7 @@
%%LIBDOCS%%%%DOCSDIR%%/html/StatisticsStrategy_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/StatisticsStrategy_8h_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/StatisticsStrategy_8h.html
-%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8cpp_source.html
-%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8h_source.html
-%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8h_source.html
-%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8h.html
%%LIBDOCS%%%%DOCSDIR%%/html/stdinc_8h.html
%%LIBDOCS%%%%DOCSDIR%%/html/StringParameter_8cpp_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/StringParameter_8cpp.html
@@ -1588,8 +1582,6 @@
%%LIBDOCS%%%%DOCSDIR%%/html/TermTranslatorTest_8cpp_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/TermTranslatorTest_8cpp.html
%%LIBDOCS%%%%DOCSDIR%%/html/test_2stdinc_8h_source.html
-%%LIBDOCS%%%%DOCSDIR%%/html/test_2stdinc_8h_source.html
-%%LIBDOCS%%%%DOCSDIR%%/html/test_2stdinc_8h.html
%%LIBDOCS%%%%DOCSDIR%%/html/test_2stdinc_8h.html
%%LIBDOCS%%%%DOCSDIR%%/html/Test_8cpp_source.html
%%LIBDOCS%%%%DOCSDIR%%/html/Test_8cpp.html
@@ -1662,5 +1654,3 @@
%%LIBDOCS%%%%DOCSDIR%%/html/VarSorter_8h.html
%%LIBRARY%%include/frobby.h
%%STATIC%%lib/libfrobby.a
-%%SHARED%%lib/libfrobby.so
-%%SHARED%%lib/libfrobby.so.0