CNA-BUG-191: cna_configure_vendored_enet tells the user to run 'git submodule update --init third_party/enet', but ENet is committed in the tree, not a submodule

CNA snapshot 009d40f5  ·  Known Issues › Current bugs  ·  source links pinned to 009d40f5

✓

Evidence basis: source-verified at the pinned commit. Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.

When third_party/enet/CMakeLists.txt is missing, cmake/ThirdPartyENet.cmake fails with advice to initialise a submodule that does not exist; ENet is ordinary tracked source, so the advice cannot restore it.

Identifier
CNA-BUG-191
Category
Bug
Subsystem
Build & CI
Status
Open
Verified against
CNA 009d40f5 (009d40f5dd085c4e674d3479675fac84b12b3e0a)
Severity
Low (a triage suggestion, not a project priority)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
None
Affected contract
cmake/ThirdPartyENet.cmake cna_configure_vendored_enet (CNA_ENABLE_NET builds): the FATAL_ERROR shown when the vendored ENet source is absent

Expected behaviour

A configure error should tell the user how to restore the missing input. ENet is vendored as ordinary source in third_party/enet, as the input workflow's header and the build pages say.

Actual behaviour at TARGET

cmake/ThirdPartyENet.cmake fails with "CNA: ENet source not found at ... Run: git submodule update --init third_party/enet". In the tree of 009d40f5 third_party/enet is a normal directory (Git mode 040000, not a gitlink), and .gitmodules lists only vendor/googletest, third_party/SDL, third_party/SDL_image, third_party/SDL_mixer and third_party/draco. The advised command has nothing to fetch; the actual causes of a missing ENet are an incomplete export or deleted files, which git checkout -- third_party/enet or a fresh clone repairs.

Source locations

Evidence

Checked by reading at 009d40f5 (the Git tree listing of third_party/ and .gitmodules); the error path was not triggered.

Focused reproduction

No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.

Current tests

None; no configure-message test covers the vendored-ENet check.

Regression test

None applies; correct the message (restore the directory from Git or re-clone).

Blast radius

Only users whose checkout lacks third_party/enet, and only the advice; the check itself is right.

Workaround

Restore the directory with git checkout -- third_party/enet (or re-clone), or configure with CNA_ENABLE_NET=OFF.

The same subject is explained at several altitudes. These are the neighbouring pages at each one.

Known issues
Bug index