git: c5921be58275 - main - science/dakota: Update 6.13.0 -> 6.15.0

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Thu, 03 Feb 2022 10:05:12 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c5921be58275f99676a4ed693994aae29a2f1e24

commit c5921be58275f99676a4ed693994aae29a2f1e24
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-02-03 08:57:38 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-02-03 10:05:09 +0000

    science/dakota: Update 6.13.0 -> 6.15.0
---
 science/dakota/Makefile                            | 85 ++++++++--------------
 science/dakota/distinfo                            |  8 +-
 science/dakota/files/patch-CMakeLists.txt          | 17 +++--
 .../files/patch-cmake_DakotaVersionUtils.cmake     | 11 ---
 ...nal_acro_packages_colin_src_colin_AppResponse.h | 17 -----
 .../patch-packages_external_sciplot_SciPlot.c      | 22 ++++++
 .../patch-src_ProcessHandleApplicInterface.cpp     | 14 ----
 science/dakota/pkg-plist                           | 28 +++++--
 8 files changed, 91 insertions(+), 111 deletions(-)

diff --git a/science/dakota/Makefile b/science/dakota/Makefile
index d3d540180e3f..1b0b655469bd 100644
--- a/science/dakota/Makefile
+++ b/science/dakota/Makefile
@@ -1,8 +1,9 @@
 PORTNAME=	dakota
-DISTVERSION=	6.13.0
-PORTREVISION=	4
+DISTVERSION=	6.15.0
 CATEGORIES=	science
 MASTER_SITES=	https://dakota.sandia.gov/sites/default/files/distributions/public/
+DISTNAME=	${PORTNAME}-${DISTVERSION}-public-src-cli
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
 
 MAINTAINER=	yuri@FreeBSD.org
 COMMENT=	Interface between analysis codes & iterative systems analysis methods
@@ -10,14 +11,23 @@ COMMENT=	Interface between analysis codes & iterative systems analysis methods
 LICENSE=	LGPL21
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
+BUILD_DEPENDS=	nanoflann>0:math/nanoflann
 LIB_DEPENDS=	libblas.so:math/blas \
 		libboost_system.so:devel/boost-libs \
-		liblapack.so:math/lapack
+		libgsl.so:math/gsl \
+		libhdf5.so:science/hdf5 \
+		liblapack.so:math/lapack \
+		libnlopt.so:math/nlopt \
+		libsz.so:science/szip
 RUN_DEPENDS=	bash:shells/bash
 
-USES=		cmake compiler:c++11-lang fortran perl5 python shebangfix
+USES=		cmake compiler:c++11-lang fortran motif perl5 pkgconfig python shebangfix xorg
+USE_XORG=	ice sm x11 xau xdmcp xext xft xmu xrender xt
 USE_LDCONFIG=	yes
 
+USE_GITHUB=	nodefault
+GH_TUPLE=	stan-dev:math:v2.18.0:stanmath/stanmath
+
 SHEBANG_GLOB=	*.sh *.py
 SHEBANG_FILES=	interfaces/Python/mpitile \
 		scripts/pyprepro/dprepro \
@@ -25,17 +35,21 @@ SHEBANG_FILES=	interfaces/Python/mpitile \
 		scripts/dprepro.perl \
 		test/dakota_test.perl
 
-CMAKE_ON=	Boost_NO_BOOST_CMAKE \
+CMAKE_ON=	HAVE_X_GRAPHICS # always enable graphics because w/out it a lot of unrelated files aren't installed due to bugs in the project
+CMAKE_ON+=	Boost_NO_BOOST_CMAKE \
 		DAKOTA_GIT_checkout
 #CMAKE_ON+=	HAVE_C3 # causes "duplicate include" error
 #CMAKE_ON+=	DAKOTA_DL_SOLVER # fails to compile: error: declaration of anonymous class must be a definition
 #CMAKE_ON+=	HAVE_NOWPAC # installs files into $PORTSDIR
-CMAKE_ON+=	HAVE_DREAM HAVE_ADAPTIVE_SAMPLING HAVE_OPTPP DAKOTA_HOPS HAVE_ACRO \
-		HAVE_JEGA HAVE_NOMAD HAVE_NPSOL HAVE_NL2SOL HAVE_DOT HAVE_SURFPACK \
-		HAVE_CONMIN HAVE_DDACE HAVE_FSUDACE HAVE_PSUADE HAVE_ROL HAVE_DEMO_TPL # enable some methods that aren't enabled by default, see the list @ src/DakotaIterator.cpp
+CMAKE_ON+=	HAVE_QUESO \
+		HAVE_MUQ MUQ_USE_PYTHON \
+		# enable some methods that aren't enabled by default, see the list @ src/DakotaIterator.cpp
+CMAKE_ON+=	DAKOTA_HAVE_GSL DAKOTA_HAVE_HDF5
 
 CMAKE_OFF=	DAKOTA_ENABLE_TESTS
-CMAKE_ARGS=	-DDakota_VERSION_SRC:STRING=${DISTVERSION} -DDakota_GIT_REVL:STRING=${GIT_HASH} -DDakota_RELEASE_DATE:${STRING}=20201116
+CMAKE_ARGS=	-DDakota_VERSION_SRC:STRING=${DISTVERSION} -DDakota_GIT_REVL:STRING=unknown -DDakota_RELEASE_DATE:${STRING}=20211115 \
+		-DPython_EXECUTABLE=${PYTHON_CMD} \
+		-DMUQ_STANMATH_DIR=${WRKSRC}/stanmath
 
 FFLAGS+=	-fallow-argument-mismatch
 LDFLAGS+=	-lexecinfo
@@ -43,59 +57,22 @@ LDFLAGS+=	-lexecinfo
 CONFLICTS_BUILD=	dakota # self: picks up some bundled packages from the pre-installed dakota package and then fails to install them
 CONFLICTS_INSTALL=	openblas
 
-USES_GIT=	no
-GIT_URL=	https://software.sandia.gov/git/dakota
-GIT_HASH=	82fd55ea1c6bb6d32e4c68e7f92d991d658ba90a
-
-.if ${USES_GIT} == "yes"
-FETCH_DEPENDS=	git:devel/git
-do-fetch:
-	@if [ "${FORCE_FETCH_ALL}" = "true" ] || ! [ -f "${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX}" ]; then \
-	  ${MKDIR} ${DISTDIR}/${DIST_SUBDIR} && \
-	  cd ${DISTDIR}/${DIST_SUBDIR} && \
-	    git clone -q ${GIT_URL} ${PORTNAME}-${DISTVERSIONFULL} && \
-	    (cd ${PORTNAME}-${DISTVERSIONFULL} && \
-	      git checkout devel && \
-	      git submodule init packages/external && \
-	      git submodule init packages/pecos && \
-	      git submodule init packages/surfpack && \
-	      git submodule update) && \
-	    (cd ${PORTNAME}-${DISTVERSIONFULL} && git reset -q --hard ${GIT_HASH} && ${RM} -r .git) && \
-	    ${FIND} ${PORTNAME}-${DISTVERSIONFULL} -and -exec ${TOUCH} -h -d 1970-01-01T00:00:00Z {} \; && \
-	    ${FIND} ${PORTNAME}-${DISTVERSIONFULL} -print0 | LC_ALL=C ${SORT} -z | \
-	        ${TAR} czf ${PORTNAME}-${DISTVERSIONFULL}${EXTRACT_SUFX} --format=bsdtar --gid 0 --uid 0 --options gzip:!timestamp --no-recursion --null -T - && \
-	    ${RM} -r ${PORTNAME}-${DISTVERSIONFULL}; \
-	fi
-.else
-DISTNAME=	${PORTNAME}-${DISTVERSION}-release-public.src-UI
-.endif
-
-OPTIONS_DEFINE=		GSL GUI HDF5
-OPTIONS_DEFAULT=	GSL HDF5
-OPTIONS_SUB=		yes
-
-GSL_DESC=		GSL support
-GSL_CMAKE_BOOL=		DAKOTA_HAVE_GSL HAVE_QUESO HAVE_QUESO_GPMSA # QUESO requires GSL
-GSL_LIB_DEPENDS=	libgsl.so:math/gsl
-
-HDF5_CMAKE_BOOL=	DAKOTA_HAVE_HDF5 \
-			HAVE_MUQ # MUQ module requires HDF5
-HDF5_LIB_DEPENDS=	libhdf5.so:science/hdf5 \
-			libsz.so:science/szip
-
-GUI_DESC=		Build the Dakota/Motif Graphics package
-GUI_CMAKE_BOOL=		HAVE_X_GRAPHICS
-GUI_BROKEN=		error: non-void function 'SciPlotListReturnPtr' should return a value
-
 post-extract:
 	@${FIND} ${WRKSRC} -name "*.orig" -delete
 	@${ECHO} ${DISTVERSION} > ${WRKSRC}/VERSION # expected by the 'install' target
 
+pre-configure: # MUQ_STANMATH_DIR is lost otherwise
+	@${REINPLACE_CMD} 's|find_package(PkgConfig)|set(MUQ_STANMATH_DIR ${WRKSRC}/stanmath)|' ${WRKSRC}/packages/external/muq2/cmake/finds/FindSTANMATH.cmake
+
 post-install:
 	# remove eigen3 that Dakota installs
 	cd ${STAGEDIR}${PREFIX} && ${RM} -r include/eigen3 share/eigen3
+	# remove cblas.h that Dakota installs
+	${RM} ${STAGEDIR}${PREFIX}/include/cblas.h
+	# remove *.orig files
+	${RM} ${STAGEDIR}${PREFIX}/include/colin/AppResponse.h.orig
 	# install libraries that it fails to install
-.for l in libmuqUtilities.so libmuqModeling.so libmuqSamplingAlgorithms.so
+.for l in libmuqSamplingAlgorithms.so libmuqApproximation.so libmuqInference.so libmuqModeling.so libmuqOptimization.so libmuqUtilities.so
 	${INSTALL_LIB} ${BUILD_WRKSRC}/packages/external/muq2/lib/${l} ${STAGEDIR}${PREFIX}/lib
 .endfor
 
diff --git a/science/dakota/distinfo b/science/dakota/distinfo
index 5c0a35cf6356..49d3033add70 100644
--- a/science/dakota/distinfo
+++ b/science/dakota/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1613774738
-SHA256 (dakota-6.13.0-release-public.src-UI.tar.gz) = 064f6e49569893cfcbe53a86b089fa3502b8b5f3c52f0122b88f93704464b9e7
-SIZE (dakota-6.13.0-release-public.src-UI.tar.gz) = 139642138
+TIMESTAMP = 1643858651
+SHA256 (dakota-6.15.0-public-src-cli.tar.gz) = b6d971b7d6fe913aa64fef29cf8fcf55d0e5339f9f55fb164e3cc38716b48f61
+SIZE (dakota-6.15.0-public-src-cli.tar.gz) = 125618819
+SHA256 (stan-dev-math-v2.18.0_GH0.tar.gz) = 53fbce2b28aea76695af7a91f51fdd356367153fc42b3573e2b91e6586eca91d
+SIZE (stan-dev-math-v2.18.0_GH0.tar.gz) = 17528084
diff --git a/science/dakota/files/patch-CMakeLists.txt b/science/dakota/files/patch-CMakeLists.txt
index 0638caf8d869..866abe14d720 100644
--- a/science/dakota/files/patch-CMakeLists.txt
+++ b/science/dakota/files/patch-CMakeLists.txt
@@ -1,17 +1,20 @@
---- CMakeLists.txt.orig	1970-01-01 00:00:00 UTC
+--- CMakeLists.txt.orig	2021-11-05 17:27:37 UTC
 +++ CMakeLists.txt
-@@ -253,7 +253,9 @@ if(ENABLE_DAKOTA_DOCS)
-   add_subdirectory(docs)
+@@ -258,9 +258,11 @@ if(ENABLE_DAKOTA_DOCS)
  endif()
  
+ # Legacy examples
 -add_subdirectory(examples)
 +if (FREEBSD_ENABLE_EXAMPLES)
 +  add_subdirectory(examples)
 +endif()
+ # New examples library, taking care to guard against empty directory
+-if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/dakota-examples/CMakeLists.txt")
++if(FREEBSD_ENABLE_EXAMPLES AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/dakota-examples/CMakeLists.txt")
+   add_subdirectory(dakota-examples)
+ endif()
  
- add_subdirectory(interfaces)
- 
-@@ -275,19 +277,23 @@ install(FILES INSTALL LICENSE COPYRIGHT README
+@@ -284,19 +286,23 @@ install(FILES INSTALL LICENSE COPYRIGHT README
    DESTINATION ${DAKOTA_TOPFILES_INSTALL}
    )
  
@@ -33,5 +36,5 @@
    )
 +endif()
  
- # Final CPack settings (depends on DAKOTA_GIT_checkout)
+ # Final CPack settings
  dakota_cpack_finalize()
diff --git a/science/dakota/files/patch-cmake_DakotaVersionUtils.cmake b/science/dakota/files/patch-cmake_DakotaVersionUtils.cmake
deleted file mode 100644
index 247002af29ac..000000000000
--- a/science/dakota/files/patch-cmake_DakotaVersionUtils.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
---- cmake/DakotaVersionUtils.cmake.orig	2021-02-10 05:46:56 UTC
-+++ cmake/DakotaVersionUtils.cmake
-@@ -28,7 +28,7 @@ macro(dakota_version_from_git)
- 
-   # Building in a Git repo or a source package?
-   set(DAKOTA_VERSION_file_path)
--  set(DAKOTA_GIT_checkout FALSE)
-+  set(DAKOTA_GIT_checkout TRUE)
- 
-   if(EXISTS ${Dakota_SOURCE_DIR}/.git)
- 
diff --git a/science/dakota/files/patch-packages_external_acro_packages_colin_src_colin_AppResponse.h b/science/dakota/files/patch-packages_external_acro_packages_colin_src_colin_AppResponse.h
deleted file mode 100644
index 4038b507d719..000000000000
--- a/science/dakota/files/patch-packages_external_acro_packages_colin_src_colin_AppResponse.h
+++ /dev/null
@@ -1,17 +0,0 @@
-- patch provided by the upstream
-
---- packages/external/acro/packages/colin/src/colin/AppResponse.h.orig	2021-02-17 01:12:03 UTC
-+++ packages/external/acro/packages/colin/src/colin/AppResponse.h
-@@ -54,10 +54,10 @@ class AppResponse
- public: // typedefs
- 
-    ///
--   typedef std::pair<response_info_t, const utilib::Any >  response_pair_t;
-+   typedef std::pair<response_info_t, utilib::Any >  response_pair_t;
- 
-    ///
--   typedef std::map<response_info_t, const utilib::Any >  response_map_t;
-+   typedef std::map<response_info_t, utilib::Any >  response_map_t;
- 
- public: // construct / destruct / copy / compare methods
- 
diff --git a/science/dakota/files/patch-packages_external_sciplot_SciPlot.c b/science/dakota/files/patch-packages_external_sciplot_SciPlot.c
new file mode 100644
index 000000000000..01edfb116b20
--- /dev/null
+++ b/science/dakota/files/patch-packages_external_sciplot_SciPlot.c
@@ -0,0 +1,22 @@
+- reported to the ML on 2022-02-01
+
+--- packages/external/sciplot/SciPlot.c.orig	2022-02-01 09:03:55 UTC
++++ packages/external/sciplot/SciPlot.c
+@@ -3761,7 +3761,7 @@ realpair* SciPlotListReturnPtr (Widget wi, int idnum, 
+   SciPlotList *p;
+   SciPlotWidget w;
+   if (!XtIsSciPlot(wi))
+-    return;
++    return NULL;
+   w = (SciPlotWidget) wi;
+ 
+   p = _ListFind(w, idnum);
+@@ -3792,7 +3792,7 @@ Boolean SciPlotQuickUpdateCheck (Widget wi)
+ {
+   SciPlotWidget w;
+   if (!XtIsSciPlot(wi))
+-    return;
++    return NULL;
+   w = (SciPlotWidget) wi;
+ 
+   return CheckMinMax(w);
diff --git a/science/dakota/files/patch-src_ProcessHandleApplicInterface.cpp b/science/dakota/files/patch-src_ProcessHandleApplicInterface.cpp
deleted file mode 100644
index 770ca1196c85..000000000000
--- a/science/dakota/files/patch-src_ProcessHandleApplicInterface.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-- patch provided by the upstream
-
---- src/ProcessHandleApplicInterface.cpp.orig	2021-02-17 01:12:32 UTC
-+++ src/ProcessHandleApplicInterface.cpp
-@@ -17,6 +17,9 @@
- #include "ParallelLibrary.hpp"
- #include "WorkdirHelper.hpp"
- #include <algorithm>
-+#ifdef HAVE_SYS_WAIT_H
-+#include <sys/wait.h> // for wait process status macros (Posix only)
-+#endif
- 
- namespace Dakota {
- 
diff --git a/science/dakota/pkg-plist b/science/dakota/pkg-plist
index fb3eee8fa829..4d51517d9768 100644
--- a/science/dakota/pkg-plist
+++ b/science/dakota/pkg-plist
@@ -1,5 +1,6 @@
 bin/coliny
 bin/dakota
+bin/dakota-ui.sh
 bin/dakota.input.nspec
 bin/dakota.input.summary
 bin/dakota.sh
@@ -11,6 +12,7 @@ bin/dakota_restart_util
 bin/dprepro
 bin/dprepro.perl
 bin/dprepro.py
+bin/dprepro3
 bin/fsu_cvt_standalone
 bin/fsu_halton_standalone
 bin/fsu_hammersley_standalone
@@ -26,6 +28,7 @@ bin/timer
 include/3po/cobyla.h
 include/APPSEvalMgr.hpp
 include/APPSOptimizer.hpp
+include/ActiveKey.hpp
 include/ActiveSubspaceModel.hpp
 include/AdaptedBasisModel.hpp
 include/AlgorithmConfig.hpp
@@ -288,6 +291,8 @@ include/GeneticAlgorithmPostProcessor.hpp.inl
 include/GeneticAlgorithmSelector.hpp
 include/GeneticAlgorithmSelector.hpp.inl
 include/GeometricRandomVariable.hpp
+include/Graph2D.hpp
+include/Graphics.hpp
 include/GridApplicInterface.hpp
 include/GumbelRandomVariable.hpp
 include/HDF5_IO.hpp
@@ -507,13 +512,16 @@ include/NegBinomialRandomVariable.hpp
 include/NestedModel.hpp
 include/NodalInterpPolyApproximation.hpp
 include/NomadOptimizer.hpp
+include/NonDACVSampling.hpp
 include/NonDAdaptImpSampling.hpp
 include/NonDAdaptiveSampling.hpp
 include/NonDBayesCalibration.hpp
 include/NonDC3FunctionTrain.hpp
 include/NonDCalibration.hpp
+include/NonDControlVariateSampling.hpp
 include/NonDCubature.hpp
 include/NonDDREAMBayesCalibration.hpp
+include/NonDEnsembleSampling.hpp
 include/NonDExpansion.hpp
 include/NonDGPImpSampling.hpp
 include/NonDGPMSABayesCalibration.hpp
@@ -521,6 +529,7 @@ include/NonDGlobalEvidence.hpp
 include/NonDGlobalInterval.hpp
 include/NonDGlobalReliability.hpp
 include/NonDGlobalSingleInterval.hpp
+include/NonDHierarchSampling.hpp
 include/NonDIntegration.hpp
 include/NonDInterval.hpp
 include/NonDLHSEvidence.hpp
@@ -532,10 +541,13 @@ include/NonDLocalInterval.hpp
 include/NonDLocalReliability.hpp
 include/NonDLocalSingleInterval.hpp
 include/NonDMUQBayesCalibration.hpp
+include/NonDMultifidelitySampling.hpp
+include/NonDMultilevControlVarSampling.hpp
 include/NonDMultilevelFunctionTrain.hpp
 include/NonDMultilevelPolynomialChaos.hpp
 include/NonDMultilevelSampling.hpp
 include/NonDMultilevelStochCollocation.hpp
+include/NonDNonHierarchSampling.hpp
 include/NonDPOFDarts.hpp
 include/NonDPolynomialChaos.hpp
 include/NonDQUESOBayesCalibration.hpp
@@ -549,6 +561,7 @@ include/NonDSurrogateExpansion.hpp
 include/NonDWASABIBayesCalibration.hpp
 include/NonDuplicatingRouletteWheelSelector.hpp
 include/NonDuplicatingRouletteWheelSelector.hpp.inl
+include/NonHierarchSurrModel.hpp
 include/NonLinearConstraint.h
 include/NonLinearConstraintNature.hpp
 include/NonLinearConstraintNature.hpp.inl
@@ -660,6 +673,7 @@ include/ProcessHandleApplicInterface.hpp
 include/ProgramOptions.hpp
 include/ProjectOrthogPolyApproximation.hpp
 include/PseudoRandomTestsOnly.h
+include/Pybind11Interface.hpp
 include/PythonInterface.hpp
 include/QMEApproximation.hpp
 include/QUESOImpl.hpp
@@ -1157,6 +1171,7 @@ include/SurrBasedMinimizer.hpp
 include/SurrogateData.hpp
 include/SurrogateModel.hpp
 include/SurrogatesBase.hpp
+include/SurrogatesGPKernels.hpp
 include/SurrogatesGPObjective.hpp
 include/SurrogatesGaussianProcess.hpp
 include/SurrogatesPolynomialRegression.hpp
@@ -1462,7 +1477,6 @@ include/bayes_calibration_utils.hpp
 include/bit_mask.hpp
 include/bit_mask.hpp.inl
 include/cb_level_log_gateway.hpp
-include/cblas.h
 include/cdflib.h
 include/colin/AmplApplication.h
 include/colin/AmplDriver.h
@@ -1471,7 +1485,6 @@ include/colin/AnalysisCodeApplication.h
 include/colin/AppRequest.h
 include/colin/AppRequest_Impl.h
 include/colin/AppResponse.h
-include/colin/AppResponse.h.orig
 include/colin/AppResponseAnalysis.h
 include/colin/AppResponseInfo.h
 include/colin/AppResponseLValues.h
@@ -1639,6 +1652,7 @@ include/log_gateways.hpp
 include/logs.hpp
 include/macros.hpp
 include/math_tools.hpp
+include/menu.h
 include/minimal_levels.hpp
 include/mutex.hpp
 include/mutex.hpp.inl
@@ -1651,6 +1665,7 @@ include/nidr.h
 include/null_log.hpp
 include/numeric_limits.hpp
 include/oa.h
+include/optpp_blas_wrap.h
 include/orthogonal_matching_pursuit.hpp
 include/ostream_entry.hpp
 include/ostream_log.hpp
@@ -2493,12 +2508,12 @@ lib/libcolin.so
 lib/libconmin.so
 lib/libcport.so
 lib/libdakota_dll_api.so
+lib/libdakota_sciplot.so
 lib/libdakota_src.so
 lib/libdakota_src_fortran.so
 lib/libdakota_surrogates.so
 lib/libdakota_util.so
 lib/libddace.so
-lib/libdemo_tpl.so
 lib/libdfftpack.so
 lib/libdream.so
 lib/libeutils.so
@@ -2511,9 +2526,12 @@ lib/liblhs.so
 lib/liblhs_mod.so
 lib/liblhs_mods.so
 lib/libmoga.so
-lib/libmuqUtilities.so
+lib/libmuqApproximation.so
+lib/libmuqInference.so
 lib/libmuqModeling.so
+lib/libmuqOptimization.so
 lib/libmuqSamplingAlgorithms.so
+lib/libmuqUtilities.so
 lib/libncsuopt.so
 lib/libnidr.so
 lib/libnomad.so
@@ -2522,7 +2540,7 @@ lib/libpebbl.so
 lib/libpecos_src.so
 lib/libpecos_util.so
 lib/libpsuade.so
-%%GSL%%lib/libqueso.so
+lib/libqueso.so
 lib/librol.so
 lib/librol.so.13
 lib/librol.so.13.0