Skip to content

Ft cmake only compile system - #66

Open
HendrikTolman-NOAA wants to merge 6 commits into
NOAA-EMC:developfrom
HendrikTolman-NOAA:FT-Cmake-only-compile-system
Open

Ft cmake only compile system#66
HendrikTolman-NOAA wants to merge 6 commits into
NOAA-EMC:developfrom
HendrikTolman-NOAA:FT-Cmake-only-compile-system

Conversation

@HendrikTolman-NOAA

Copy link
Copy Markdown
Contributor

Description

This PR represents another step in simplifying and documenting the compile system for WW4. We are moving a mean, lean and clean cmake based system, looking forward to NOAA operational requirements, and to future integration into coupled modeling systems.

Issue(s) addressed

Commit Message

Simplifying the compile system to become a clean, documented cmake system using submodules for external code

Check list

  • Branch is up to date with the authoritative repository (NOAA-EMC) develop branch.

Testing

The PR passes all automated testing in the GitHub workflow, but still needs to be tested on a variety of hardware and software options.

google-labs-jules Bot and others added 6 commits August 21, 2026 16:42
- Remove ww4_setup script, ww4_compile_config.yaml, and ww4_local_config.cmake
- Add WW4_ENABLE_TESTING CMake option to skip GoogleTest and test targets for operational builds
- Add support for local offline dependencies in externals/ directory
- Update documentation for Linux and macOS compile environment setup

Co-authored-by: HendrikTolman-NOAA <237313876+HendrikTolman-NOAA@users.noreply.github.com>
- Remove ww4_setup script, ww4_compile_config.yaml, and ww4_local_config.cmake
- Add WW4_ENABLE_TESTING CMake option to skip GoogleTest and test targets for operational builds
- Add support for local offline dependencies in externals/ directory
- Update documentation for Linux and macOS compile environment setup
- Fix Python ruff linting in tools/ww4_test_check.py

Co-authored-by: HendrikTolman-NOAA <237313876+HendrikTolman-NOAA@users.noreply.github.com>
…29274-64266556

Rebuild WW4 compile system from scratch with pure CMake
Replace dynamic FetchContent URL download logic in CMakeLists.txt with
add_subdirectory for git submodules (yaml-cpp 0.8.0 and googletest 1.14.0)
located in externals/. Update README.md and externals/README.md with
instructions on cloning with --recursive or initializing submodules.

Co-authored-by: HendrikTolman-NOAA <237313876+HendrikTolman-NOAA@users.noreply.github.com>
Replace dynamic FetchContent URL download logic in CMakeLists.txt with
add_subdirectory for git submodules (yaml-cpp 0.8.0 and googletest 1.14.0)
located in externals/. Update README.md and externals/README.md with
instructions on cloning with --recursive or initializing submodules.

Co-authored-by: HendrikTolman-NOAA <237313876+HendrikTolman-NOAA@users.noreply.github.com>
…1914783524774256483

Include externals as git submodules and update instructions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Is ww4_compile_config.yaml needed? Updating build to not fetch externals Add readme instructions for how to build

1 participant