Skip to content

Commit

Permalink
math/frobby: Improve port and adopt again
Browse files Browse the repository at this point in the history
- 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
  • Loading branch information
lsalvadore committed May 5, 2022
1 parent e58af11 commit f86da7c
Show file tree
Hide file tree
Showing 7 changed files with 72 additions and 194 deletions.
88 changes: 43 additions & 45 deletions 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}
Expand Down
4 changes: 3 additions & 1 deletion 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
20 changes: 17 additions & 3 deletions math/frobby/files/patch-Makefile
@@ -1,14 +1,14 @@
--- 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/
- cxxflags += -O2
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/
Expand All @@ -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
48 changes: 0 additions & 48 deletions math/frobby/files/patch-test_runSplitTests

This file was deleted.

60 changes: 0 additions & 60 deletions math/frobby/files/patch-test_runTests

This file was deleted.

18 changes: 0 additions & 18 deletions math/frobby/pkg-help

This file was deleted.

0 comments on commit f86da7c

Please sign in to comment.