From 84b56a6311a16bc224ff50b7d7ec981c80733eb3 Mon Sep 17 00:00:00 2001 From: Rafael M Mudafort Date: Tue, 20 Apr 2021 13:08:09 -0500 Subject: [PATCH 1/3] Build FAST.Farm when configured via BUILD_FASTFARM --- CMakeLists.txt | 1 + glue-codes/CMakeLists.txt | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 689ef8af21..0dd8cdee43 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -35,6 +35,7 @@ option(USE_DLL_INTERFACE "Enable runtime loading of dynamic libraries" on) option(FPE_TRAP_ENABLED "Enable FPE trap in compiler options" off) option(ORCA_DLL_LOAD "Enable OrcaFlex Library Load" on) option(BUILD_OPENFAST_CPP_API "Enable building OpenFAST - C++ API" off) +option(BUILD_FASTFARM "Enable building FAST.Farm" off) option(OPENMP "Enable OpenMP support" off) if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) # Configure the default install path to openfast/install diff --git a/glue-codes/CMakeLists.txt b/glue-codes/CMakeLists.txt index 9ebb154d9b..79a1a66df2 100644 --- a/glue-codes/CMakeLists.txt +++ b/glue-codes/CMakeLists.txt @@ -5,4 +5,6 @@ if(BUILD_OPENFAST_CPP_API) add_subdirectory(openfast-cpp) endif() -add_subdirectory(fast-farm) +if(BUILD_FASTFARM) + add_subdirectory(fast-farm) +endif() From 3e04fc7fa488b288016a3c32d5869f6655d614df Mon Sep 17 00:00:00 2001 From: Rafael M Mudafort Date: Tue, 20 Apr 2021 13:15:41 -0500 Subject: [PATCH 2/3] Enable FASTFARM in its regression test --- .github/workflows/automated-dev-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/automated-dev-tests.yml b/.github/workflows/automated-dev-tests.yml index 5be18cc4a9..ffa590b5e4 100644 --- a/.github/workflows/automated-dev-tests.yml +++ b/.github/workflows/automated-dev-tests.yml @@ -175,6 +175,7 @@ jobs: -DCMAKE_INSTALL_PREFIX:PATH=${{runner.workspace}}/install \ -DCMAKE_Fortran_COMPILER:STRING=${{env.FORTRAN_COMPILER}} \ -DOPENMP:BOOL=ON \ + -DBUILD_FASTFARM:BOOL=ON \ -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \ -DBUILD_TESTING:BOOL=ON \ -DCTEST_PLOT_ERRORS:BOOL=ON \ From 9520cc636f1e7cd688069f316e6b84c30ce67028 Mon Sep 17 00:00:00 2001 From: Rafael M Mudafort Date: Tue, 20 Apr 2021 13:45:21 -0500 Subject: [PATCH 3/3] Add documentation for compiling FAST.Farm --- docs/source/install/index.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/source/install/index.rst b/docs/source/install/index.rst index 04a534d0d9..bc714a11f8 100644 --- a/docs/source/install/index.rst +++ b/docs/source/install/index.rst @@ -642,6 +642,25 @@ compile the C++ interface. # Compile the C++ API make openfastcpplib +FAST.Farm +~~~~~~~~~ +The FAST.Farm glue-code is included in the CMake project similar to the +OpenFAST glue-code. See :ref:`compile_from_source` for a full description +on installing dependencies, configuring the project, and compiling. +FAST.Farm is enabled in the CMake project with an additional flag: + +.. code-block:: bash + + # Enable compiling FAST.Farm + cmake .. -DBUILD_FASTFARM:BOOL=ON + + # Compile FAST.Farm + make FAST.Farm + +OpenMP-Fortran is an additional dependency for FAST.Farm. These libraries +can be installed with any package manager for macOS and Linux or +through the Intel oneAPI distributions. + .. _installation_appendix: Appendix