Skip to content

Specify building in Release with CMake in docs - #1095

Open
jatkinson1000 wants to merge 6 commits into
developfrom
cmake-release-docs
Open

Specify building in Release with CMake in docs#1095
jatkinson1000 wants to merge 6 commits into
developfrom
cmake-release-docs

Conversation

@jatkinson1000

Copy link
Copy Markdown

Specify building in Release with CMake in docs

Fixes #1094

Task List

  • Linked an issue above that captures the requirements of this PR
  • [-] Defined the tests that specify a complete and functioning change
  • [-] Implemented the source code change that satisfies the tests
  • [-] Commented all code so that it can be understood without additional context
  • [-] No new warnings are generated or they are mentioned below
  • The documentation has been updated (or an issue has been created to do so)
  • Relevant labels (e.g., enhancement, bug) have been applied to this PR
  • This change conforms to the conventions described in the README

Change Description

As discussed in #1094 installation docs do not specify adding a CMake Build Type flag for Release.
This can lead to new users naively building in debug which is orders of magnitude slower.
This PR adds the flag explicitly.

In addition I note that decomp is documented with CMake modern, whilst neXtSIM is CMake classic.
I took the opportunity to standardise these in 54284b5
If we would prefer to standardise all to Modern I can do that here.

Further I believe there is a small issue with decomp in that Release was not specified at configure time via CMake_BUILD_TYPE.
It was applied at build time via --config but I believe this is only for multi-config generators like VSCode andf Ninja, so would not have been applied for Makefiles.
I am assuming users of this code are using a Makefile approach, but this should be confirmed by more experienced developers.


Test Description

No code changes, therefore no tests changes.


Documentation Impact

Installation docs are the target of the updates described above.


Other Details

None

@jatkinson1000 jatkinson1000 self-assigned this Jul 30, 2026
@jatkinson1000 jatkinson1000 added the documentation Improvements or additions to documentation label Jul 30, 2026

@Mikolaj-A-Kowalski Mikolaj-A-Kowalski left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one comment, but I think it is good to go.

Comment thread docs/installation.rst Outdated
@jatkinson1000

jatkinson1000 commented Jul 30, 2026

Copy link
Copy Markdown
Author

I also checked the Dockerfiles for CI and applied similar changes there in 681046d

@Mikolaj-A-Kowalski

Mikolaj-A-Kowalski commented Jul 30, 2026

Copy link
Copy Markdown

Are we sure of the URL for the XOIS?
It seems that this is not the first failure in the Docker build; see the logs.

It seems that the Jul 1 scheduled job also failed with similar issue?

@jatkinson1000

jatkinson1000 commented Jul 30, 2026

Copy link
Copy Markdown
Author

The address seems correct, but the branch might not be, see: Downloading_and_compiling_the_XIOS_library

I tried amending in cca91bf but it seems to still fail.

Update: cannot ping , so I think server is down, can retry later.

@TomMelt TomMelt left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps we can discuss tomorrow. Overall happy with simplification and addition to docs. But I dont fully understand the dockerfile changes

Comment thread .github/workflows/test_suite.yml
Comment thread Dockerfiles/Dockerfile.devenv Outdated

# Pre-fetch XIOS source code
RUN svn checkout http://forge.ipsl.fr/ioserver/svn/XIOS3/trunk /xios
RUN svn checkout http://forge.ipsl.fr/ioserver/svn/XIOS/trunk XIOS

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

quick question... why did you change back to xios2? I think @joewallwork moved us to XIOS3.

Is this a mistake?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also the install directory has been changed from /xios to effectively ./XIOS

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was a change to follow the XIOS docs (linked above) after @Mikolaj-A-Kowalski queried whether we are using the correct url and command.

My intention was to drop if it didn't fix the issue which I can do now, given we seem to have established it's just the server being intermittent.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just rebased and dropped cca91bf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CMake installation instructions do not specify Release config

3 participants