Re: [update) math/arpack to arpack-ng 3.8.0
On Mon, May 23, 2022 at 08:45:33AM +0200, Landry Breuil wrote: > Le Sun, May 22, 2022 at 08:23:40PM +0100, Stuart Henderson a écrit : > > I have some small nits but easier to fix those afterwards. > > One thing that does need doing now is @pkgpath math/arpack added > > to the top of PLIST-main. Otherwise OK sthen@ > > reads ok to me too, i guess the nits are about spacings around = as i > have those too :) > Yes indeed. So if nothing else pops up I'm going to commit this tonight. Index: Makefile === RCS file: /cvs/ports/math/arpack/Makefile,v retrieving revision 1.21 diff -u -p -u -p -r1.21 Makefile --- Makefile11 Mar 2022 19:36:12 - 1.21 +++ Makefile23 May 2022 12:02:02 - @@ -1,43 +1,48 @@ -COMMENT= solve large scale eigenvalue problems +COMMENT-main = F77 subroutines for solving large scale eigenvalue problems +COMMENT-mpi = openmpi for arpack -DISTNAME= arpack96 -PKGNAME= arpack-96 -REVISION= 8 -SHARED_LIBS= arpack 1.0 -CATEGORIES=math - -HOMEPAGE= http://www.caam.rice.edu/software/ARPACK/ - -# BSD license (not in distfile) -PERMIT_PACKAGE=Yes - -MASTER_SITES= ${HOMEPAGE}SRC/ -DISTFILES= ${DISTNAME}.tar.gz patch.tar.gz ug.ps.gz -DIST_SUBDIR= arpack - -MODULES= fortran -MODFORTRAN_COMPILER = gfortran -BUILD_DEPENDS= ${MODFORTRAN_BUILD_DEPENDS} - -LIB_DEPENDS = math/lapack \ - math/blas -WANTLIB = lapack>=1 blas>=1 m - -WRKDIST= ${WRKDIR}/ARPACK -WRKSRC=${WRKDIST}/SRC -PICFLAG= -fPIC -MAKE_FILE= ${FILESDIR}/Makefile -MAKE_ENV= SHLIB_MAJOR=${LIBarpack_VERSION:R} \ - SHLIB_MINOR=${LIBarpack_VERSION:E} \ - FC="${MODFORTRAN_COMPILER} -cpp" \ - CC=${MODFORTRAN_COMPILER} \ - NOPROFILE=1 -FAKE_FLAGS=LIBDIR=${LOCALBASE}/lib DEBUGLIBS=no +GH_TAGNAME = 3.8.0 +DISTNAME = arpack-ng-${GH_TAGNAME} +PKGNAME = arpack-${GH_TAGNAME} +GH_ACCOUNT = opencollab +GH_PROJECT = arpack-ng -NO_TEST= Yes +MULTI_PACKAGES = -main -mpi +FLAVORS = no_mpi +FLAVOR ?= -post-extract: - @cd ${WRKDIST}/UTIL && mv *.f ${WRKSRC} +SHARED_LIBS += arpack 2.0 +SHARED_LIBS += parpack 1.0 + +CATEGORIES = math + +HOMEPAGE = https://github.com/opencollab/arpack-ng + +# BSD 3-Clause +PERMIT_PACKAGE = Yes + +MODULES = fortran \ + devel/cmake + +CONFIGURE_ARGS += -DBUILD_SHARED_LIBS:BOOL=ON \ + -D ICB=ON + +LIB_DEPENDS-main = math/lapack \ + math/blas + +WANTLIB += lapack blas m + +LIB_DEPENDS-mpi = devel/openmpi \ + math/arpack,-main + +WANTLIB-mpi += ${WANTLIB} arpack execinfo pciaccess pthread util z +WANTLIB-mpi += mpi mpi_mpifh mpi_usempi_ignore_tkr +WANTLIB-mpi += mpi_usempif08 open-pal open-rte + +.include +.if ${BUILD_PACKAGES:M-mpi} +CONFIGURE_ARGS += -D MPI=ON +.endif post-install: .for i in BAND COMPLEX NONSYM SIMPLE SVD SYM @@ -49,7 +54,6 @@ post-install: ${PREFIX}/share/examples/arpack ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/arpack ${INSTALL_DATA} ${WRKDIST}/DOCUMENTS/* ${PREFIX}/share/doc/arpack - ${INSTALL_DATA} ${WRKDIR}/ug.ps ${PREFIX}/share/doc/arpack - ${INSTALL_DATA} ${FILESDIR}/LICENSE ${PREFIX}/share/doc/arpack + ${INSTALL_DATA} ${WRKDIST}/COPYING ${PREFIX}/share/doc/arpack .include Index: distinfo === RCS file: /cvs/ports/math/arpack/distinfo,v retrieving revision 1.4 diff -u -p -u -p -r1.4 distinfo --- distinfo18 Jan 2015 03:14:26 - 1.4 +++ distinfo23 May 2022 12:02:02 - @@ -1,6 +1,2 @@ -SHA256 (arpack/arpack96.tar.gz) = xqR+yjCiVsuuYOacYGJRuEtqDzUrpSey3L1Hic6F7Pw= -SHA256 (arpack/patch.tar.gz) = r4kU1gr0fkn7rVWBLQpdCnBA+6kMk+XvGo2I0yAn060= -SHA256 (arpack/ug.ps.gz) = /x+qx0v8QkQpVZBhMnVuzX8ANIA4mNUH29G8lg9vSrA= -SIZE (arpack/arpack96.tar.gz) = 636865 -SIZE (arpack/patch.tar.gz) = 226473 -SIZE (arpack/ug.ps.gz) = 248543 +SHA256 (arpack-ng-3.8.0.tar.gz) = raWus4eIdDgzByOckjW3FqihcMbQlqZiW/1SmETfAD0= +SIZE (arpack-ng-3.8.0.tar.gz) = 1014494 Index: patches/patch-SRC_second_f === RCS file: patches/patch-SRC_second_f diff -N patches/patch-SRC_second_f --- patches/patch-SRC_second_f 11 Mar 2022 19:36:12 - 1.2 +++ /dev/null 1 Jan 1970 00:00:00 - @@ -1,12 +0,0 @@ -Index: SRC/second.f SRC/second.f.orig -+++ SRC/second.f -@@ -21,7 +21,7 @@ - * .. - * .. External Functions .. - REAL ETIME -- EXTERNAL ETIME -+* EXTERNAL ETIME - * .. - * .. Executable Statements .. - * Index: pkg/DESCR-main === RCS file: pkg/DESCR-main diff -N pkg/DESCR-main ---
Re: [update) math/arpack to arpack-ng 3.8.0
Le Sun, May 22, 2022 at 08:23:40PM +0100, Stuart Henderson a écrit : > I have some small nits but easier to fix those afterwards. > One thing that does need doing now is @pkgpath math/arpack added > to the top of PLIST-main. Otherwise OK sthen@ reads ok to me too, i guess the nits are about spacings around = as i have those too :)
Re: [update) math/arpack to arpack-ng 3.8.0
I have some small nits but easier to fix those afterwards. One thing that does need doing now is @pkgpath math/arpack added to the top of PLIST-main. Otherwise OK sthen@ On 2022/05/22 21:02, Martin Reindl wrote: > So after some discussion and only a tiny wee bit more back-and-forth between > options with Stuart and Landry we decided it is best to just update the > existing port. > The diff below aims to do just that, as initially sought by Volker. > > Sorry it took so long. > > - new mpi option > - builds fine with mlpack, armadillo, igraph, octave, ensmallen > - parpack is not picked by any of the above > - no quirks or conflict markers necessary > - tested on arm64, amd64, armv7, hickups possible on sparc64 and macppc, but > I cannot test the latter two > > OK? > > -m > > Index: Makefile > === > RCS file: /cvs/ports/math/arpack/Makefile,v > retrieving revision 1.21 > diff -u -p -u -p -r1.21 Makefile > --- Makefile 11 Mar 2022 19:36:12 - 1.21 > +++ Makefile 21 May 2022 16:23:31 - > @@ -1,43 +1,48 @@ > -COMMENT= solve large scale eigenvalue problems > +COMMENT-main = F77 subroutines for solving large scale eigenvalue > problems > +COMMENT-mpi =openmpi for arpack > > -DISTNAME=arpack96 > -PKGNAME= arpack-96 > -REVISION=8 > -SHARED_LIBS= arpack 1.0 > -CATEGORIES= math > - > -HOMEPAGE=http://www.caam.rice.edu/software/ARPACK/ > - > -# BSD license (not in distfile) > -PERMIT_PACKAGE= Yes > - > -MASTER_SITES=${HOMEPAGE}SRC/ > -DISTFILES= ${DISTNAME}.tar.gz patch.tar.gz ug.ps.gz > -DIST_SUBDIR= arpack > - > -MODULES= fortran > -MODFORTRAN_COMPILER =gfortran > -BUILD_DEPENDS= ${MODFORTRAN_BUILD_DEPENDS} > - > -LIB_DEPENDS =math/lapack \ > - math/blas > -WANTLIB =lapack>=1 blas>=1 m > - > -WRKDIST= ${WRKDIR}/ARPACK > -WRKSRC= ${WRKDIST}/SRC > -PICFLAG= -fPIC > -MAKE_FILE= ${FILESDIR}/Makefile > -MAKE_ENV=SHLIB_MAJOR=${LIBarpack_VERSION:R} \ > - SHLIB_MINOR=${LIBarpack_VERSION:E} \ > - FC="${MODFORTRAN_COMPILER} -cpp" \ > - CC=${MODFORTRAN_COMPILER} \ > - NOPROFILE=1 > -FAKE_FLAGS= LIBDIR=${LOCALBASE}/lib DEBUGLIBS=no > +GH_TAGNAME = 3.8.0 > +DISTNAME= arpack-ng-${GH_TAGNAME} > +PKGNAME=arpack-${GH_TAGNAME} > +GH_ACCOUNT = opencollab > +GH_PROJECT = arpack-ng > > -NO_TEST= Yes > +MULTI_PACKAGES = -main -mpi > +FLAVORS =no_mpi > +FLAVOR ?= > > -post-extract: > - @cd ${WRKDIST}/UTIL && mv *.f ${WRKSRC} > +SHARED_LIBS += arpack 2.0 > +SHARED_LIBS += parpack 1.0 > + > +CATEGORIES = math > + > +HOMEPAGE = https://github.com/opencollab/arpack-ng > + > +# BSD 3-Clause > +PERMIT_PACKAGE = Yes > + > +MODULES =fortran \ > + devel/cmake > + > +CONFIGURE_ARGS +=-DBUILD_SHARED_LIBS:BOOL=ON \ > + -D ICB=ON > + > +LIB_DEPENDS-main = math/lapack \ > + math/blas > + > +WANTLIB += lapack blas m > + > +LIB_DEPENDS-mpi =devel/openmpi \ > + math/arpack,-main > + > +WANTLIB-mpi += ${WANTLIB} arpack execinfo pciaccess pthread util z > +WANTLIB-mpi += mpi mpi_mpifh mpi_usempi_ignore_tkr > +WANTLIB-mpi += mpi_usempif08 open-pal open-rte > + > +.include > +.if ${BUILD_PACKAGES:M-mpi} > +CONFIGURE_ARGS +=-D MPI=ON > +.endif > > post-install: > .for i in BAND COMPLEX NONSYM SIMPLE SVD SYM > @@ -49,7 +54,6 @@ post-install: > ${PREFIX}/share/examples/arpack > ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/arpack > ${INSTALL_DATA} ${WRKDIST}/DOCUMENTS/* ${PREFIX}/share/doc/arpack > - ${INSTALL_DATA} ${WRKDIR}/ug.ps ${PREFIX}/share/doc/arpack > - ${INSTALL_DATA} ${FILESDIR}/LICENSE ${PREFIX}/share/doc/arpack > + ${INSTALL_DATA} ${WRKDIST}/COPYING ${PREFIX}/share/doc/arpack > > .include > Index: distinfo > === > RCS file: /cvs/ports/math/arpack/distinfo,v > retrieving revision 1.4 > diff -u -p -u -p -r1.4 distinfo > --- distinfo 18 Jan 2015 03:14:26 - 1.4 > +++ distinfo 21 May 2022 16:23:31 - > @@ -1,6 +1,2 @@ > -SHA256 (arpack/arpack96.tar.gz) = > xqR+yjCiVsuuYOacYGJRuEtqDzUrpSey3L1Hic6F7Pw= > -SHA256 (arpack/patch.tar.gz) = r4kU1gr0fkn7rVWBLQpdCnBA+6kMk+XvGo2I0yAn060= > -SHA256 (arpack/ug.ps.gz) = /x+qx0v8QkQpVZBhMnVuzX8ANIA4mNUH29G8lg9vSrA= > -SIZE (arpack/arpack96.tar.gz) = 636865 > -SIZE (arpack/patch.tar.gz) = 226473 > -SIZE (arpack/ug.ps.gz) = 248543 > +SHA256 (arpack-ng-3.8.0.tar.gz) = > raWus4eIdDgzByOckjW3FqihcMbQlqZiW/1SmETfAD0= > +SIZE (arpack-ng-3.8.0.tar.gz) = 1014494 > Index: patches/patch-SRC_second_f > === > RCS file: patches/patch-SRC_second_f > diff -N patches/patch-SRC_second_f > --- patches/patch-SRC_second_f11
Re: [update) math/arpack to arpack-ng 3.8.0
So after some discussion and only a tiny wee bit more back-and-forth between options with Stuart and Landry we decided it is best to just update the existing port. The diff below aims to do just that, as initially sought by Volker. Sorry it took so long. - new mpi option - builds fine with mlpack, armadillo, igraph, octave, ensmallen - parpack is not picked by any of the above - no quirks or conflict markers necessary - tested on arm64, amd64, armv7, hickups possible on sparc64 and macppc, but I cannot test the latter two OK? -m Index: Makefile === RCS file: /cvs/ports/math/arpack/Makefile,v retrieving revision 1.21 diff -u -p -u -p -r1.21 Makefile --- Makefile11 Mar 2022 19:36:12 - 1.21 +++ Makefile21 May 2022 16:23:31 - @@ -1,43 +1,48 @@ -COMMENT= solve large scale eigenvalue problems +COMMENT-main = F77 subroutines for solving large scale eigenvalue problems +COMMENT-mpi = openmpi for arpack -DISTNAME= arpack96 -PKGNAME= arpack-96 -REVISION= 8 -SHARED_LIBS= arpack 1.0 -CATEGORIES=math - -HOMEPAGE= http://www.caam.rice.edu/software/ARPACK/ - -# BSD license (not in distfile) -PERMIT_PACKAGE=Yes - -MASTER_SITES= ${HOMEPAGE}SRC/ -DISTFILES= ${DISTNAME}.tar.gz patch.tar.gz ug.ps.gz -DIST_SUBDIR= arpack - -MODULES= fortran -MODFORTRAN_COMPILER = gfortran -BUILD_DEPENDS= ${MODFORTRAN_BUILD_DEPENDS} - -LIB_DEPENDS = math/lapack \ - math/blas -WANTLIB = lapack>=1 blas>=1 m - -WRKDIST= ${WRKDIR}/ARPACK -WRKSRC=${WRKDIST}/SRC -PICFLAG= -fPIC -MAKE_FILE= ${FILESDIR}/Makefile -MAKE_ENV= SHLIB_MAJOR=${LIBarpack_VERSION:R} \ - SHLIB_MINOR=${LIBarpack_VERSION:E} \ - FC="${MODFORTRAN_COMPILER} -cpp" \ - CC=${MODFORTRAN_COMPILER} \ - NOPROFILE=1 -FAKE_FLAGS=LIBDIR=${LOCALBASE}/lib DEBUGLIBS=no +GH_TAGNAME = 3.8.0 +DISTNAME= arpack-ng-${GH_TAGNAME} +PKGNAME=arpack-${GH_TAGNAME} +GH_ACCOUNT = opencollab +GH_PROJECT = arpack-ng -NO_TEST= Yes +MULTI_PACKAGES = -main -mpi +FLAVORS = no_mpi +FLAVOR ?= -post-extract: - @cd ${WRKDIST}/UTIL && mv *.f ${WRKSRC} +SHARED_LIBS += arpack 2.0 +SHARED_LIBS += parpack 1.0 + +CATEGORIES = math + +HOMEPAGE = https://github.com/opencollab/arpack-ng + +# BSD 3-Clause +PERMIT_PACKAGE = Yes + +MODULES = fortran \ + devel/cmake + +CONFIGURE_ARGS += -DBUILD_SHARED_LIBS:BOOL=ON \ + -D ICB=ON + +LIB_DEPENDS-main = math/lapack \ + math/blas + +WANTLIB += lapack blas m + +LIB_DEPENDS-mpi = devel/openmpi \ + math/arpack,-main + +WANTLIB-mpi += ${WANTLIB} arpack execinfo pciaccess pthread util z +WANTLIB-mpi += mpi mpi_mpifh mpi_usempi_ignore_tkr +WANTLIB-mpi += mpi_usempif08 open-pal open-rte + +.include +.if ${BUILD_PACKAGES:M-mpi} +CONFIGURE_ARGS += -D MPI=ON +.endif post-install: .for i in BAND COMPLEX NONSYM SIMPLE SVD SYM @@ -49,7 +54,6 @@ post-install: ${PREFIX}/share/examples/arpack ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/arpack ${INSTALL_DATA} ${WRKDIST}/DOCUMENTS/* ${PREFIX}/share/doc/arpack - ${INSTALL_DATA} ${WRKDIR}/ug.ps ${PREFIX}/share/doc/arpack - ${INSTALL_DATA} ${FILESDIR}/LICENSE ${PREFIX}/share/doc/arpack + ${INSTALL_DATA} ${WRKDIST}/COPYING ${PREFIX}/share/doc/arpack .include Index: distinfo === RCS file: /cvs/ports/math/arpack/distinfo,v retrieving revision 1.4 diff -u -p -u -p -r1.4 distinfo --- distinfo18 Jan 2015 03:14:26 - 1.4 +++ distinfo21 May 2022 16:23:31 - @@ -1,6 +1,2 @@ -SHA256 (arpack/arpack96.tar.gz) = xqR+yjCiVsuuYOacYGJRuEtqDzUrpSey3L1Hic6F7Pw= -SHA256 (arpack/patch.tar.gz) = r4kU1gr0fkn7rVWBLQpdCnBA+6kMk+XvGo2I0yAn060= -SHA256 (arpack/ug.ps.gz) = /x+qx0v8QkQpVZBhMnVuzX8ANIA4mNUH29G8lg9vSrA= -SIZE (arpack/arpack96.tar.gz) = 636865 -SIZE (arpack/patch.tar.gz) = 226473 -SIZE (arpack/ug.ps.gz) = 248543 +SHA256 (arpack-ng-3.8.0.tar.gz) = raWus4eIdDgzByOckjW3FqihcMbQlqZiW/1SmETfAD0= +SIZE (arpack-ng-3.8.0.tar.gz) = 1014494 Index: patches/patch-SRC_second_f === RCS file: patches/patch-SRC_second_f diff -N patches/patch-SRC_second_f --- patches/patch-SRC_second_f 11 Mar 2022 19:36:12 - 1.2 +++ /dev/null 1 Jan 1970 00:00:00 - @@ -1,12 +0,0 @@ -Index: SRC/second.f SRC/second.f.orig -+++ SRC/second.f -@@ -21,7 +21,7 @@ - * .. - * .. External Functions .. - REAL ETIME -- EXTERNAL ETIME -+* EXTERNAL ETIME - * .. - * .. Executable Statements .. - * Index: pkg/DESCR-main === RCS file:
Re: [update) math/arpack to arpack-ng 3.8.0
Am 10.05.2022 um 08:32 schrieb Martin REINDL: Am 07.05.2022 um 21:12 schrieb Volker Schlecht: Bump. Anyone to import arpack-ng? I will try to pursue this further, but time is scarce. We need to get someone else to OK for import apart from Stuart. Volker, if you can you check the SUBPACKAGES work and everything is in place including DESCR plus maybe some extra tests on other platforms? This would help. Yup, can do that in the next days ... I'm limited to testing on amd64, though. Attached is essentially sthen@'s proposal for the port with a small modification to DESCR-main ... I failed to find any other issue with it. Tested on amd64, arm64 and armv7 - OK to import without hookup? The switch from math/arpack has to be a seperate diff. Friendly Ping.
Re: [update) math/arpack to arpack-ng 3.8.0
Am 07.05.2022 um 21:12 schrieb Volker Schlecht: Bump. Anyone to import arpack-ng? I will try to pursue this further, but time is scarce. We need to get someone else to OK for import apart from Stuart. Volker, if you can you check the SUBPACKAGES work and everything is in place including DESCR plus maybe some extra tests on other platforms? This would help. Yup, can do that in the next days ... I'm limited to testing on amd64, though. Attached is essentially sthen@'s proposal for the port with a small modification to DESCR-main ... I failed to find any other issue with it. Tested on amd64, arm64 and armv7 - OK to import without hookup? The switch from math/arpack has to be a seperate diff. -m
Re: [update) math/arpack to arpack-ng 3.8.0
Am 02.05.2022 um 20:40 schrieb Volker Schlecht: Bump. Anyone to import arpack-ng? I will try to pursue this further, but time is scarce. We need to get someone else to OK for import apart from Stuart. Volker, if you can you check the SUBPACKAGES work and everything is in place including DESCR plus maybe some extra tests on other platforms? This would help.
Re: [update) math/arpack to arpack-ng 3.8.0
Am 23.04.22 um 19:30 schrieb Volker Schlecht: > >>> So the remark about the -mpi flavour should then probably removed from >>> DESCR, right? But other than that, can arpack-ng go in? >> >> Please share the latest diff. Seems like I missed it. > > Stuart sent a .tgz a bit further up in the thread ... Ah, right, thanks. Due to the lack of a proper mpi environment two mpi tests fail. But this can be taken care of later. OK martin@ for importing arpack-ng.
Re: [update) math/arpack to arpack-ng 3.8.0
On 2022/04/23 19:30, Volker Schlecht wrote: > > > > So the remark about the -mpi flavour should then probably removed from > > > DESCR, right? But other than that, can arpack-ng go in? > > > > Please share the latest diff. Seems like I missed it. > > Stuart sent a .tgz a bit further up in the thread ... Yes, diffs against null are a pain to work with :)
Re: [update) math/arpack to arpack-ng 3.8.0
On 2022/04/23 17:56, Volker Schlecht wrote: > > > > Are the libraries built by arpack-ng,mpi and arpack-ng (unflavoured) > > > > interchangeable? > > > > > > The -mpi flavour adds a second library, libparpack.so, but doesn't change > > > libarpack.so itself. > > > > Great, so in this case it would be more appropriate to remove the > > flavour and split into subpackages, see attached tgz. More info in > > http://www.openbsd.org/faq/ports/guide.html#Ideal > > Noted, and will make sure to remember ;) > > So the remark about the -mpi flavour should then probably removed from > DESCR, right? But other than that, can arpack-ng go in? > > cu, > Volker Yes. Also maybe DESCR/COMMENT for -mpi could be improved, I didn't put much thought into it, mostly wanted to show what I meant
Re: [update) math/arpack to arpack-ng 3.8.0
Am 23.04.22 um 17:56 schrieb Volker Schlecht: Are the libraries built by arpack-ng,mpi and arpack-ng (unflavoured) interchangeable? >>> >>> The -mpi flavour adds a second library, libparpack.so, but doesn't >>> change >>> libarpack.so itself. >> >> Great, so in this case it would be more appropriate to remove the >> flavour and split into subpackages, see attached tgz. More info in >> http://www.openbsd.org/faq/ports/guide.html#Ideal > > Noted, and will make sure to remember ;) > > So the remark about the -mpi flavour should then probably removed from > DESCR, right? But other than that, can arpack-ng go in? Please share the latest diff. Seems like I missed it.
Re: [update) math/arpack to arpack-ng 3.8.0
On 2022/04/23 14:50, Volker Schlecht wrote: > > Are the libraries built by arpack-ng,mpi and arpack-ng (unflavoured) > > interchangeable? > > The -mpi flavour adds a second library, libparpack.so, but doesn't change > libarpack.so itself. Great, so in this case it would be more appropriate to remove the flavour and split into subpackages, see attached tgz. More info in http://www.openbsd.org/faq/ports/guide.html#Ideal > > i.e. if you build a dependent port (e.g. math/armadillo) with > > arpack-ng,mpi installed, does the resulting armadillo package work > > if run with unflavoured arpack-ng? And are there any changes to > > build? > > As long math/armadillo only uses libarpack.so, it should be able to get that > from the flavoured and unflavoured port, no? Yes, the possible issue I am trying to head off is that if they cause differences in the build of dependending ports, we need to control which flavour is installed when other ports are built. Experience has taught that user-controllable build options in ports which provide libraries can be a real pain to deal with. arpack-ng.tgz Description: application/tar-gz
Re: [update) math/arpack to arpack-ng 3.8.0
Are the libraries built by arpack-ng,mpi and arpack-ng (unflavoured) interchangeable? i.e. if you build a dependent port (e.g. math/armadillo) with arpack-ng,mpi installed, does the resulting armadillo package work if run with unflavoured arpack-ng? And are there any changes to build? If they are not interchangeable then, those dependent ports will need to specify "arpack-ng-*-!ldap:math/arpack-ng" in their LIB_DEPENDS rather than just plain "math/arpack-ng" and you won't be able to have anything using ,mpi as a build dependency. (Similar to the mess around the ldap flavour of apache httpd / apr-util). If you're not sure about this then it might be better to forego the mpi flavour for now. > > retrieving revision 1.211 > > diff -u -p -u -p -r1.211 Makefile > > --- math/Makefile 9 Mar 2022 16:18:05 - 1.211 > > +++ math/Makefile 16 Apr 2022 15:03:48 - > > @@ -3,7 +3,8 @@ > >SUBDIR += R > >SUBDIR += aamath > >SUBDIR += armadillo > > - SUBDIR += arpack > > + SUBDIR += arpack-ng > > + SUBDIR += arpack-ng,mpi > >SUBDIR += bc-gh > >SUBDIR += bcal > >SUBDIR += blas > > Index: math/armadillo/Makefile > > === > > RCS file: /cvs/ports/math/armadillo/Makefile,v > > retrieving revision 1.7 > > diff -u -p -u -p -r1.7 Makefile > > --- math/armadillo/Makefile 11 Mar 2022 19:36:11 - 1.7 > > +++ math/armadillo/Makefile 16 Apr 2022 15:03:48 - > > @@ -4,6 +4,7 @@ SHARED_LIBS = armadillo 3.1 # 9.900.4 > > CATEGORIES = math > > HOMEPAGE =http://arma.sourceforge.net/ > > MAINTAINER = Marc Espie > > +REVISION = 0 > > # MPL v2 > > PERMIT_PACKAGE = Yes > > @@ -16,7 +17,7 @@ EXTRACT_SUFX= .tar.xz > > COMPILER =base-clang ports-gcc > > MODULES +=devel/cmake > > -LIB_DEPENDS += math/arpack \ > > +LIB_DEPENDS += math/arpack-ng \ > > math/hdf5 > > CONFIGURE_STYLE = cmake > > Index: math/igraph/Makefile > > === > > RCS file: /cvs/ports/math/igraph/Makefile,v > > retrieving revision 1.2 > > diff -u -p -u -p -r1.2 Makefile > > --- math/igraph/Makefile11 Mar 2022 19:36:17 - 1.2 > > +++ math/igraph/Makefile16 Apr 2022 15:03:48 - > > @@ -1,6 +1,7 @@ > > COMMENT = C graph library > > V = 0.9.5 > > DISTNAME =igraph-$V > > +REVISION = 0 > > SHARED_LIBS = igraph 0.0 # 0.0 > > @@ -21,7 +22,7 @@ MODULES = devel/cmake > > LIB_DEPENDS = devel/glpk \ > > devel/gmp \ > > - math/arpack \ > > + math/arpack-ng \ > > math/blas \ > > math/suitesparse \ > > textproc/libxml > > Index: math/octave/Makefile > > === > > RCS file: /cvs/ports/math/octave/Makefile,v > > retrieving revision 1.127 > > diff -u -p -u -p -r1.127 Makefile > > --- math/octave/Makefile31 Mar 2022 17:16:30 - 1.127 > > +++ math/octave/Makefile16 Apr 2022 15:03:48 - > > @@ -2,7 +2,7 @@ COMMENT = high-level language for numeri > > VERSION = 5.2.0 > > DISTNAME =octave-${VERSION} > > -REVISION = 5 > > +REVISION = 6 > > CATEGORIES = math > > SHARED_LIBS +=octave 13.0 > > @@ -42,7 +42,7 @@ LIB_DEPENDS = ${MODFORTRAN_LIB_DEPENDS} > > devel/readline \ > > editors/qscintilla \ > > graphics/GraphicsMagick \ > > - math/arpack \ > > + math/arpack-ng \ > > math/fftw3 \ > > math/fftw3,float \ > > math/hdf5 \ > > Index: devel/quirks/Makefile > > === > > RCS file: /cvs/ports/devel/quirks/Makefile,v > > retrieving revision 1.1376 > > diff -u -p -u -p -r1.1376 Makefile > > --- devel/quirks/Makefile 16 Apr 2022 06:49:10 - 1.1376 > > +++ devel/quirks/Makefile 16 Apr 2022 15:03:48 - > > @@ -3,7 +3,7 @@ CATEGORIES =devel databases > > DISTFILES = > > # API.rev > > -PKGNAME = quirks-5.14 > > +PKGNAME = quirks-5.15 > > PKG_ARCH =* > > MAINTAINER = Marc Espie > > Index: devel/quirks/files/Quirks.pm > > === > > RCS file: /cvs/ports/devel/quirks/files/Quirks.pm,v > > retrieving revision 1.1389 > > diff -u -p -u -p -r1.1389 Quirks.pm > > --- devel/quirks/files/Quirks.pm16 Apr 2022 06:49:10 - 1.1389 > > +++ devel/quirks/files/Quirks.pm16 Apr 2022 15:03:49 - > > @@ -724,6 +724,7 @@ my $stem_extensions = { > > 'tracker-miners' => 'tracker3-miners', > > 'tracker' => 'tracker3', > > 'libgweather' => 'libgweather4', > > + 'arpack' => 'arpack-ng', > > }; > > my $obsolete_reason = {}; > > >
Re: [update) math/arpack to arpack-ng 3.8.0
On Sat, Apr 16, 2022 at 03:01:39PM +0200, Volker Schlecht wrote: > Works for me! > > On 4/15/22 22:41, Martin Reindl wrote: > > On Fri, Apr 15, 2022 at 06:14:46PM +0200, Volker Schlecht wrote: > > > Just give the word - I have both a patch and a new package ready to go. > > > > > > On 4/15/22 15:47, Stuart Henderson wrote: > > > > You can't really @conflict between two ports which are build > > > > dependencies of other ports. > > > > > > > > I cleaned up your diff and attached the new arpack-ng port. > > As an alternative I propose this strategy: > > > > - commit new arpack-ng port, dont't hook up yet > > - more tests with dependencies, iron out possible issues on other archs > > - switch the other ports to arpack-ng, add quirks, unhook old arpack, hook > > up arpack-ng > > - move arpack to attic > > > > Is this the way to go? > > Tests run OK on amd64, arm64, armv7 and i386. Anyone can test on sparc64? OK to import arpack-ng? Diff for the switch from arpack to arpack-ng at a later point: Index: math/Makefile === RCS file: /cvs/ports/math/Makefile,v retrieving revision 1.211 diff -u -p -u -p -r1.211 Makefile --- math/Makefile 9 Mar 2022 16:18:05 - 1.211 +++ math/Makefile 16 Apr 2022 15:03:48 - @@ -3,7 +3,8 @@ SUBDIR += R SUBDIR += aamath SUBDIR += armadillo - SUBDIR += arpack + SUBDIR += arpack-ng + SUBDIR += arpack-ng,mpi SUBDIR += bc-gh SUBDIR += bcal SUBDIR += blas Index: math/armadillo/Makefile === RCS file: /cvs/ports/math/armadillo/Makefile,v retrieving revision 1.7 diff -u -p -u -p -r1.7 Makefile --- math/armadillo/Makefile 11 Mar 2022 19:36:11 - 1.7 +++ math/armadillo/Makefile 16 Apr 2022 15:03:48 - @@ -4,6 +4,7 @@ SHARED_LIBS = armadillo 3.1 # 9.900.4 CATEGORIES = math HOMEPAGE = http://arma.sourceforge.net/ MAINTAINER = Marc Espie +REVISION = 0 # MPL v2 PERMIT_PACKAGE = Yes @@ -16,7 +17,7 @@ EXTRACT_SUFX= .tar.xz COMPILER = base-clang ports-gcc MODULES += devel/cmake -LIB_DEPENDS += math/arpack \ +LIB_DEPENDS += math/arpack-ng \ math/hdf5 CONFIGURE_STYLE = cmake Index: math/igraph/Makefile === RCS file: /cvs/ports/math/igraph/Makefile,v retrieving revision 1.2 diff -u -p -u -p -r1.2 Makefile --- math/igraph/Makefile11 Mar 2022 19:36:17 - 1.2 +++ math/igraph/Makefile16 Apr 2022 15:03:48 - @@ -1,6 +1,7 @@ COMMENT = C graph library V =0.9.5 DISTNAME = igraph-$V +REVISION = 0 SHARED_LIBS = igraph 0.0 # 0.0 @@ -21,7 +22,7 @@ MODULES = devel/cmake LIB_DEPENDS = devel/glpk \ devel/gmp \ - math/arpack \ + math/arpack-ng \ math/blas \ math/suitesparse \ textproc/libxml Index: math/octave/Makefile === RCS file: /cvs/ports/math/octave/Makefile,v retrieving revision 1.127 diff -u -p -u -p -r1.127 Makefile --- math/octave/Makefile31 Mar 2022 17:16:30 - 1.127 +++ math/octave/Makefile16 Apr 2022 15:03:48 - @@ -2,7 +2,7 @@ COMMENT = high-level language for numeri VERSION = 5.2.0 DISTNAME = octave-${VERSION} -REVISION = 5 +REVISION = 6 CATEGORIES = math SHARED_LIBS += octave 13.0 @@ -42,7 +42,7 @@ LIB_DEPENDS = ${MODFORTRAN_LIB_DEPENDS} devel/readline \ editors/qscintilla \ graphics/GraphicsMagick \ - math/arpack \ + math/arpack-ng \ math/fftw3 \ math/fftw3,float \ math/hdf5 \ Index: devel/quirks/Makefile === RCS file: /cvs/ports/devel/quirks/Makefile,v retrieving revision 1.1376 diff -u -p -u -p -r1.1376 Makefile --- devel/quirks/Makefile 16 Apr 2022 06:49:10 - 1.1376 +++ devel/quirks/Makefile 16 Apr 2022 15:03:48 - @@ -3,7 +3,7 @@ CATEGORIES =devel databases DISTFILES = # API.rev -PKGNAME = quirks-5.14 +PKGNAME = quirks-5.15 PKG_ARCH = * MAINTAINER = Marc Espie Index: devel/quirks/files/Quirks.pm === RCS file: /cvs/ports/devel/quirks/files/Quirks.pm,v retrieving revision 1.1389 diff -u -p -u -p -r1.1389 Quirks.pm --- devel/quirks/files/Quirks.pm16 Apr 2022 06:49:10 - 1.1389 +++ devel/quirks/files/Quirks.pm16 Apr 2022 15:03:49 - @@ -724,6 +724,7 @@ my $stem_extensions = { 'tracker-miners' => 'tracker3-miners', 'tracker' => 'tracker3', 'libgweather' => 'libgweather4', + 'arpack' =>
Re: [update) math/arpack to arpack-ng 3.8.0
On Fri, Apr 15, 2022 at 06:14:46PM +0200, Volker Schlecht wrote: > Just give the word - I have both a patch and a new package ready to go. > > On 4/15/22 15:47, Stuart Henderson wrote: > > You can't really @conflict between two ports which are build > > dependencies of other ports. > > I cleaned up your diff and attached the new arpack-ng port. As an alternative I propose this strategy: - commit new arpack-ng port, dont't hook up yet - more tests with dependencies, iron out possible issues on other archs - switch the other ports to arpack-ng, add quirks, unhook old arpack, hook up arpack-ng - move arpack to attic Is this the way to go? -m Index: arpack-ng/Makefile === RCS file: arpack-ng/Makefile diff -N arpack-ng/Makefile --- /dev/null 1 Jan 1970 00:00:00 - +++ arpack-ng/Makefile 15 Apr 2022 20:38:49 - @@ -0,0 +1,51 @@ +COMMENT = F77 subroutines for solving large scale eigenvalue problems + +GH_ACCOUNT = opencollab +GH_PROJECT = arpack-ng +VERSION = 3.8.0 +GH_TAGNAME = ${VERSION} + +SHARED_LIBS += arpack 2.0 +SHARED_LIBS += parpack 1.0 + +CATEGORIES = math +FLAVORS = mpi +FLAVOR ?= + +HOMEPAGE = https://github.com/opencollab/arpack-ng + +# BSD 3-Clause +PERMIT_PACKAGE = Yes + +MODULES = fortran \ + devel/cmake +BUILD_DEPENDS =devel/ninja + +LIB_DEPENDS = math/lapack \ + math/blas +WANTLIB = lapack blas m + +CONFIGURE_ARGS += -DBUILD_SHARED_LIBS:BOOL=ON \ + -D ICB=ON + +.if ${FLAVOR:Mmpi} +LIB_DEPENDS += devel/openmpi +CONFIGURE_ARGS += -D MPI=ON +WANTLIB += execinfo pciaccess pthread util z +WANTLIB += mpi mpi_mpifh mpi_usempi_ignore_tkr +WANTLIB += mpi_usempif08 open-pal open-rte +.endif + +post-install: +.for i in BAND COMPLEX NONSYM SIMPLE SVD SYM + ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/arpack/$i + ${INSTALL_DATA} ${WRKDIST}/EXAMPLES/$i/* \ + ${PREFIX}/share/examples/arpack/$i +.endfor + ${INSTALL_DATA} ${WRKDIST}/EXAMPLES/README \ + ${PREFIX}/share/examples/arpack + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/arpack + ${INSTALL_DATA} ${WRKDIST}/DOCUMENTS/* ${PREFIX}/share/doc/arpack + ${INSTALL_DATA} ${WRKDIST}/COPYING ${PREFIX}/share/doc/arpack + +.include Index: arpack-ng/distinfo === RCS file: arpack-ng/distinfo diff -N arpack-ng/distinfo --- /dev/null 1 Jan 1970 00:00:00 - +++ arpack-ng/distinfo 15 Apr 2022 20:38:49 - @@ -0,0 +1,2 @@ +SHA256 (arpack-ng-3.8.0.tar.gz) = raWus4eIdDgzByOckjW3FqihcMbQlqZiW/1SmETfAD0= +SIZE (arpack-ng-3.8.0.tar.gz) = 1014494 Index: arpack-ng/pkg/DESCR === RCS file: arpack-ng/pkg/DESCR diff -N arpack-ng/pkg/DESCR --- /dev/null 1 Jan 1970 00:00:00 - +++ arpack-ng/pkg/DESCR 15 Apr 2022 20:38:49 - @@ -0,0 +1,32 @@ +ARPACK-NG is a collection of Fortran77 subroutines designed to solve large +scale eigenvalue problems. +It is a fork of the Rice University ARPACK, that was created as a joint project +between Debian, Octave and Scilab and is now a community project maintained by +a few volunteers. + +The package is designed to compute a few eigenvalues and corresponding +eigenvectors of a general n by n matrix A. It is most appropriate for +large sparse or structured matrices A where structured means that a +matrix-vector product w <- Av requires order n rather than the usual +order n2 floating point operations. This software is based upon an +algorithmic variant of the Arnoldi process called the Implicitly +Restarted Arnoldi Method (IRAM). When the matrix A is symmetric it +reduces to a variant of the Lanczos process called the Implicitly +Restarted Lanczos Method (IRLM). These variants may be viewed as a +synthesis of the Arnoldi/Lanczos process with the Implicitly Shifted QR +technique that is suitable for large scale problems. For many standard +problems, a matrix factorization is not required. Only the action of the +matrix on a vector is needed. + +ARPACK software is capable of solving large scale symmetric, +nonsymmetric, and generalized eigenproblems from significant application +areas. The software is designed to compute a few (k) eigenvalues with +user specified features such as those of largest real part or largest +magnitude. Storage requirements are on the order of n*k locations. No +auxiliary storage is required. A set of Schur basis vectors for the +desired k-dimensional eigen-space is computed which is numerically +orthogonal to working precision. Numerically accurate eigenvectors are +available on request. + +Flavors: + mpi - Build with OpenMPI support Index: arpack-ng/pkg/PFRAG.mpi === RCS file: arpack-ng/pkg/PFRAG.mpi diff -N arpack-ng/pkg/PFRAG.mpi --- /dev/null 1 Jan 1970
Re: [update) math/arpack to arpack-ng 3.8.0
You can't really @conflict between two ports which are build dependencies of other ports. -- Sent from a phone, apologies for poor formatting. On 15 April 2022 13:27:40 Martin REINDL wrote: Am 15.04.2022 um 13:52 schrieb Volker Schlecht: Succesfully builds math/armadillo math/igraph (math/mlpack only depends on it via ensmallen -> armadillo) math/octave Hello Volker, Because of the possible impacts I prefer a step-by-step approach. arpack-ng is basically a new port: 1. submit arpack-ng as a new port 2. switch other ports after testing 3. when nothing is using arpack anymore, move arpack to the Attic with necessary devel/quirks adjustments Hi Martin, can do, but to avoid conflicts between arpack and arpack-ng, we'd have to rename the shared lib. That in turn would mean having to tweak each of the packages we're moving to use -ng (otherwise they'd just pick it up). @conflict marker in PLIST Given that essentially everyone else uses -ng succesfully, are you sure that that's the way to go? Or could we live with the conflict for a while? Everyone else inside or outside the OpenBSD ports ecosystem? Speaking from my experience with breaking (and the painful experience of fixing) armadillo/mlpack across various archs I prefer the stepwise approach. BTW the other BSDs also followed this approach.
Re: [update) math/arpack to arpack-ng 3.8.0
Am 15.04.2022 um 13:52 schrieb Volker Schlecht: Succesfully builds math/armadillo math/igraph (math/mlpack only depends on it via ensmallen -> armadillo) math/octave Hello Volker, Because of the possible impacts I prefer a step-by-step approach. arpack-ng is basically a new port: 1. submit arpack-ng as a new port 2. switch other ports after testing 3. when nothing is using arpack anymore, move arpack to the Attic with necessary devel/quirks adjustments Hi Martin, can do, but to avoid conflicts between arpack and arpack-ng, we'd have to rename the shared lib. That in turn would mean having to tweak each of the packages we're moving to use -ng (otherwise they'd just pick it up). @conflict marker in PLIST Given that essentially everyone else uses -ng succesfully, are you sure that that's the way to go? Or could we live with the conflict for a while? Everyone else inside or outside the OpenBSD ports ecosystem? Speaking from my experience with breaking (and the painful experience of fixing) armadillo/mlpack across various archs I prefer the stepwise approach. BTW the other BSDs also followed this approach.
Re: [update) math/arpack to arpack-ng 3.8.0
Am 13.04.2022 um 17:08 schrieb Volker Schlecht: So here's the diff switching math/arpack to https://github.com/opencollab/arpack-ng Unfortunately it's a *huge* diff, because it has to change a lot of things: * change upstream to opencollab on github * change to CMake build * remove post-extract dance, because it is no longer needed for arpack-ng * copy License directly from source directory, since it's now distributed with the source tarball * remove files/LICENSE and files/Makefile accordingly * remove patch/patch-SRC_second_f It builds and works fine without that patch, at least for me. * add a flavour to build with OpenMPI support Succesfully builds math/armadillo math/igraph (math/mlpack only depends on it via ensmallen -> armadillo) math/octave Hello Volker, Because of the possible impacts I prefer a step-by-step approach. arpack-ng is basically a new port: 1. submit arpack-ng as a new port 2. switch other ports after testing 3. when nothing is using arpack anymore, move arpack to the Attic with necessary devel/quirks adjustments -m