Index: head/math/suitesparse/Makefile =================================================================== --- head/math/suitesparse/Makefile (revision 513330) +++ head/math/suitesparse/Makefile (revision 513331) @@ -1,97 +1,71 @@ # Created by: Maho Nakata # $FreeBSD$ PORTNAME= suitesparse DISTVERSION= 5.4.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= math MASTER_SITES= http://faculty.cse.tamu.edu/davis/SuiteSparse/ \ https://mirror.sobukus.de/files/src/suitesparse/ DISTNAME= SuiteSparse-${PORTVERSION} MAINTAINER= fortran@FreeBSD.org COMMENT= SuiteSparse is a set of packages for sparse matrices calculation LICENSE= GPLv2 LGPL21 LICENSE_COMB= dual -LIB_DEPENDS= libmetis.so:math/metis \ - liblapack.so:math/lapack +LIB_DEPENDS= libmetis.so:math/metis -USES= cmake:insource compiler:openmp fortran gmake +USES= cmake:insource compiler:${OPENMP}c++11-lib fortran gmake localbase:ldflags USE_LDCONFIG= yes - WRKSRC= ${WRKDIR}/SuiteSparse -WRKSRC_SHARED= ${WRKSRC}_shared +ALL_TARGET= library # skip demos +INSTALL_TARGET= install # skip USES=cmake +MAKE_ENV= BLAS="${BLASLIB}" LAPACK="${LAPACKLIB}" \ + MY_METIS_LIB="-lmetis" \ + JOBS="${MAKE_JOBS_NUMBER}" \ + CMAKE_OPTIONS='${CMAKE_ARGS}' \ + INSTALL="${STAGEDIR}${PREFIX}" \ + INSTALL_DOC="${STAGEDIR}${DOCSDIR}" \ + INSTALL_INCLUDE="${STAGEDIR}${PREFIX}/include/${PORTNAME}" +CMAKE_ARGS= -DCMAKE_INSTALL_INCLUDEDIR:PATH="include/${PORTNAME}" +LDFLAGS+= -L${WRKSRC}/lib # prevent linking with shared libs from the preinstalled older versions +CONFLICTS_INSTALL= mongoose plinkseq # bin/mongoose + +OPTIONS_DEFINE= DOCS OPENMP TBB OPTIONS_RADIO= BLAS -OPTIONS_RADIO_BLAS= OPENBLAS NETLIB ATLAS -OPTIONS_DEFAULT= OPENBLAS +OPTIONS_RADIO_BLAS= ATLAS GOTOBLAS NETLIB OPENBLAS +OPTIONS_DEFAULT= OPENBLAS OPENMP TBB -OPENBLAS_USES= blaslapack:openblas -NETLIB_USES= blaslapack:netlib -ATLAS_USES= blaslapack:atlas +ATLAS_USES= blaslapack:atlas +GOTOBLAS_DESC= Goto blas implementation +GOTOBLAS_USES= blaslapack:gotoblas +NETLIB_USES= blaslapack:netlib +OPENBLAS_USES= blaslapack:openblas -.include - -.if ${ARCH} == "sparc64" -PICFLAG?= -fPIC -.else -PICFLAG?= -fpic +OPENMP_USES= compiler:openmp +OPENMP_MAKE_ENV_OFF= CFOPENMP= +.if !exists(/usr/include/omp.h) +# XXX ports/199603 + ports/210337 +OPENMP_VARS= OPENMP=gcc- .endif -METIS= ${LOCALBASE}/lib/libmetis.a -METIS_PATH= ${LOCALBASE}/include/metis -CHOLMOD_CONFIG= -CFLAGS+= -I${LOCALBASE}/include -CXXFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${WRKSRC}/lib # prevent linking with shared libs from the preinstalled older versions -MAKE_ARGS+= JOBS="${MAKE_JOBS_NUMBER}" -MAKE_ARGS+= MY_METIS_LIB="-L${LOCALBASE}/lib -lmetis $(LDFLAGS)" +TBB_DESC= Intel threading building blocks +TBB_LIB_DEPENDS= libtbb.so:devel/tbb +TBB_MAKE_ENV= TBB="-ltbb" SPQR_CONFIG="-DHAVE_TBB" -pre-configure: - ${RM} -r ${WRKSRC}/metis-5.1.0 - ${FIND} -X ${WRKSRC} -type f -name 'Makefile' -or -name '*.mk' | ${XARGS} \ - ${REINPLACE_CMD} \ - -e '\|^AR =|s|ar|${AR}|' \ - -e '\|^ *BLAS =|s|=.*|= ${LDFLAGS} ${BLASLIB}|' \ - -e '\|^CC =|d' \ - -e '\|^CFLAGS =|{s|-O[1-9]\{0,1\}||g;s|=|= ${CFLAGS} $${PICFLAG} |;}' \ - -e '\|^CHOLMOD_CONFIG =|s|=.*|= ${CHOLMOD_CONFIG}|' \ - -e '\|^CPLUSPLUS =|s|=.*|= ${CXX}|' \ - -e '\|^F77 =|d' \ - -e '\|^F77FLAGS =|s|=.*|= ${FFLAGS} $${PICFLAG}|' \ - -e '\|^LAPACK =|s|=.*|= ${LDFLAGS} ${LAPACKLIB}|' \ - -e '\|^METIS =|s|=.*|= ${METIS}|' \ - -e '\|^METIS_PATH =|s|=.*|= ${METIS_PATH}|' \ - -e 's|-I\$$(METIS_PATH)/Lib|-I${METIS_PATH}|' \ - -e '\|^RANLIB =|s|ranlib|${RANLIB}|' \ - -e '\|^SPQR_CONFIG =|s|=.*|= ${CHOLMOD_CONFIG}|' \ - -e 's|# MAKE = gmake|MAKE = gmake|g' \ - -e 's|/usr/local|${LOCALBASE}|g' - ${CP} -r ${WRKSRC} ${WRKSRC_SHARED} - ${FIND} -X ${WRKSRC_SHARED} -type f -name 'Makefile' -or -name '*.mk' | ${XARGS} \ - ${REINPLACE_CMD} -e 's|$$(CFLAGS)|$$(CFLAGS) $$(PICFLAG)|g' +post-extract: + ${RM} -r ${WRKSRC}/metis-* -do-configure: - @${DO_NADA} +do-configure: # skip USES=cmake -do-build: - cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} PICFLAG= \ - LD_LIBRARY_PATH=${WRKDIR}/SuiteSparse/lib ${MAKE_CMD} ${MAKE_ARGS} - cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} PICFLAG=${PICFLAG} \ - LD_LIBRARY_PATH=${WRKDIR}/SuiteSparse/lib ${MAKE_CMD} ${MAKE_ARGS} +post-patch-OPENMP-off: + @${REINPLACE_CMD} -e '/find_package.*OpenMP/d' \ + ${WRKSRC}/GraphBLAS/CMakeLists.txt -do-install: - @${MKDIR} ${STAGEDIR}${PREFIX}/include/suitesparse - cd ${STAGEDIR}${PREFIX}/include && ${LN} -s suitesparse ufsparse -.for d in AMD BTF CAMD CCOLAMD CHOLMOD COLAMD CSparse CXSparse KLU SPQR UMFPACK # CSparse: shared lib bot built - ${INSTALL_DATA} ${WRKSRC}/${d}/Include/*.h ${STAGEDIR}${PREFIX}/include/suitesparse -.endfor - ${INSTALL_DATA} ${WRKSRC}/SuiteSparse_config/SuiteSparse_config.h ${STAGEDIR}${PREFIX}/include/suitesparse - ${INSTALL_DATA} ${WRKSRC}/UMFPACK/Source/umf_config.h ${STAGEDIR}${PREFIX}/include/suitesparse - ${INSTALL_DATA} ${WRKSRC}/SPQR/Include/*.hpp ${STAGEDIR}${PREFIX}/include/suitesparse - ${INSTALL_DATA} ${WRKSRC_SHARED}/lib/*.so* ${STAGEDIR}${PREFIX}/lib/ - @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so* +post-install: + @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* ${STAGEDIR}${PREFIX}/lib/*.so .include Index: head/math/suitesparse/pkg-plist =================================================================== --- head/math/suitesparse/pkg-plist (revision 513330) +++ head/math/suitesparse/pkg-plist (revision 513331) @@ -1,110 +1,136 @@ +bin/mongoose +include/suitesparse/GraphBLAS.h +include/suitesparse/Mongoose.hpp +include/suitesparse/RBio.h include/suitesparse/SuiteSparseQR.hpp include/suitesparse/SuiteSparseQR_C.h include/suitesparse/SuiteSparseQR_definitions.h include/suitesparse/SuiteSparse_config.h include/suitesparse/amd.h -include/suitesparse/amd_internal.h include/suitesparse/btf.h -include/suitesparse/btf_internal.h include/suitesparse/camd.h -include/suitesparse/camd_internal.h include/suitesparse/ccolamd.h include/suitesparse/cholmod.h include/suitesparse/cholmod_blas.h include/suitesparse/cholmod_camd.h include/suitesparse/cholmod_check.h include/suitesparse/cholmod_cholesky.h include/suitesparse/cholmod_complexity.h include/suitesparse/cholmod_config.h include/suitesparse/cholmod_core.h include/suitesparse/cholmod_function.h include/suitesparse/cholmod_gpu.h include/suitesparse/cholmod_gpu_kernels.h -include/suitesparse/cholmod_internal.h include/suitesparse/cholmod_io64.h include/suitesparse/cholmod_matrixops.h include/suitesparse/cholmod_modify.h include/suitesparse/cholmod_partition.h include/suitesparse/cholmod_supernodal.h include/suitesparse/cholmod_template.h include/suitesparse/colamd.h include/suitesparse/cs.h include/suitesparse/klu.h -include/suitesparse/klu_internal.h -include/suitesparse/klu_version.h +include/suitesparse/ldl.h include/suitesparse/spqr.hpp -include/suitesparse/spqrgpu.hpp -include/suitesparse/umf_config.h include/suitesparse/umfpack.h include/suitesparse/umfpack_col_to_triplet.h include/suitesparse/umfpack_defaults.h include/suitesparse/umfpack_free_numeric.h include/suitesparse/umfpack_free_symbolic.h include/suitesparse/umfpack_get_determinant.h include/suitesparse/umfpack_get_lunz.h include/suitesparse/umfpack_get_numeric.h include/suitesparse/umfpack_get_symbolic.h include/suitesparse/umfpack_global.h include/suitesparse/umfpack_load_numeric.h include/suitesparse/umfpack_load_symbolic.h include/suitesparse/umfpack_numeric.h include/suitesparse/umfpack_qsymbolic.h include/suitesparse/umfpack_report_control.h include/suitesparse/umfpack_report_info.h include/suitesparse/umfpack_report_matrix.h include/suitesparse/umfpack_report_numeric.h include/suitesparse/umfpack_report_perm.h include/suitesparse/umfpack_report_status.h include/suitesparse/umfpack_report_symbolic.h include/suitesparse/umfpack_report_triplet.h include/suitesparse/umfpack_report_vector.h include/suitesparse/umfpack_save_numeric.h include/suitesparse/umfpack_save_symbolic.h include/suitesparse/umfpack_scale.h include/suitesparse/umfpack_solve.h include/suitesparse/umfpack_symbolic.h include/suitesparse/umfpack_tictoc.h include/suitesparse/umfpack_timer.h include/suitesparse/umfpack_transpose.h include/suitesparse/umfpack_triplet_to_col.h include/suitesparse/umfpack_wsolve.h -include/ufsparse lib/libamd.so lib/libamd.so.2 lib/libamd.so.2.4.6 lib/libbtf.so lib/libbtf.so.1 lib/libbtf.so.1.2.6 lib/libcamd.so lib/libcamd.so.2 lib/libcamd.so.2.4.6 lib/libccolamd.so lib/libccolamd.so.2 lib/libccolamd.so.2.9.6 lib/libcholmod.so lib/libcholmod.so.3 lib/libcholmod.so.3.0.13 lib/libcolamd.so lib/libcolamd.so.2 lib/libcolamd.so.2.9.6 lib/libcxsparse.so lib/libcxsparse.so.3 lib/libcxsparse.so.3.2.0 +lib/libgraphblas.a +lib/libgraphblas.so +lib/libgraphblas.so.2 +lib/libgraphblas.so.2.2.2 lib/libklu.so lib/libklu.so.1 lib/libklu.so.1.3.8 lib/libldl.so lib/libldl.so.2 lib/libldl.so.2.2.6 +lib/libmongoose.a +lib/libmongoose.so +lib/libmongoose.so.2 +lib/libmongoose.so.2.0.3 lib/librbio.so lib/librbio.so.2 lib/librbio.so.2.2.6 lib/libspqr.so lib/libspqr.so.2 lib/libspqr.so.2.0.9 lib/libsuitesparseconfig.so lib/libsuitesparseconfig.so.5 lib/libsuitesparseconfig.so.5.4.0 lib/libumfpack.so lib/libumfpack.so.5 lib/libumfpack.so.5.7.8 +%%PORTDOCS%%%%DOCSDIR%%/AMD_README.txt +%%PORTDOCS%%%%DOCSDIR%%/AMD_UserGuide.pdf +%%PORTDOCS%%%%DOCSDIR%%/BTF_README.txt +%%PORTDOCS%%%%DOCSDIR%%/CAMD_README.txt +%%PORTDOCS%%%%DOCSDIR%%/CAMD_UserGuide.pdf +%%PORTDOCS%%%%DOCSDIR%%/CCOLAMD_README.txt +%%PORTDOCS%%%%DOCSDIR%%/CHOLMOD_README.txt +%%PORTDOCS%%%%DOCSDIR%%/CHOLMOD_UserGuide.pdf +%%PORTDOCS%%%%DOCSDIR%%/COLAMD_README.txt +%%PORTDOCS%%%%DOCSDIR%%/CXSPARSE_README.txt +%%PORTDOCS%%%%DOCSDIR%%/KLU_README.txt +%%PORTDOCS%%%%DOCSDIR%%/KLU_UserGuide.pdf +%%PORTDOCS%%%%DOCSDIR%%/LDL_README.txt +%%PORTDOCS%%%%DOCSDIR%%/RBIO_README.txt +%%PORTDOCS%%%%DOCSDIR%%/SPQR_README.txt +%%PORTDOCS%%%%DOCSDIR%%/SUITESPARSECONFIG_README.txt +%%PORTDOCS%%%%DOCSDIR%%/SuiteSparse_README.txt +%%PORTDOCS%%%%DOCSDIR%%/UMFPACK_QuickStart.pdf +%%PORTDOCS%%%%DOCSDIR%%/UMFPACK_README.txt +%%PORTDOCS%%%%DOCSDIR%%/UMFPACK_UserGuide.pdf +%%PORTDOCS%%%%DOCSDIR%%/ldl_userguide.pdf +%%PORTDOCS%%%%DOCSDIR%%/spqr_user_guide.pdf