← Back to issue list

kde-neon: invalid CMAKE_PREFIX_PATH

View original Github issue

Metadata

Project
snapcraft
Number
#5302
Type
issue
State
closed
Author
furgo16
Labels
Status: Triaged Type: Bug
Created
Updated
Closed

Current evaluation

CMAKE_PREFIX_PATH incorrectly used semicolons instead of colons in kde-neon builds. The bug was fixed and merged in PR #5310, correcting the separator to match CMake's Linux requirements. Issue closed as completed.

Suggested action:

No scores available.

Issue body

### Bug Description PR https://github.com/canonical/snapcraft/pull/5092 added `core24` support for `kde-neon{,-6}`-based snaps. It also added `CMAKE_PREFIX_PATH` as an environment variable to the build environment. However, it separated the multiple paths in the variable with semicolon (`;`), whereas [CMake expects a colon (`:`) as a separator on Linux](https://cmake.org/cmake/help/latest/envvar/CMAKE_PREFIX_PATH.html). https://github.com/canonical/snapcraft/blob/cdf598656caa546db8c5a06815d4edee4fbeb684/snapcraft/extensions/kde_neon.py#L309-L320 However, there is a potential source of confusion here. CMake has: 1. [`CMAKE_PREFIX_PATH` as an environment variable](https://cmake.org/cmake/help/latest/envvar/CMAKE_PREFIX_PATH.html). Paths separated by colon (`:`). With the current code, `prepend_to_env()` will add the wrong separator. 2. [`CMAKE_PREFIX_PATH` as a CMake variable](https://cmake.org/cmake/help/latest/variable/CMAKE_PREFIX_PATH.html#variable:CMAKE_PREFIX_PATH) Paths separated by semicolon (`;`) With the current code, `prepend_to_env()` is not the right function, as it's not and environment variable. The question is, which one of the two are we trying to add? ### To Reproduce Running the following command on any `kde-neon` snap shows that `CMAKE_PREFIX_PATH` is semicolon-separated, instead of colon-separated ``` snapcraft expand-extensions ``` ### Environment Ubuntu 24.04 LTS in destructive mode or LXD. ### snapcraft.yaml ```yaml N/A ``` ### Relevant log output ```shell N/A ``` ### Additional context _No response_

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b CMAKE_PREFIX_PATH incorrectly used semicolons instead of colons in kde-neon builds. The bug was fixed and merged in PR #5310, correcting the separator to match CMake's Linux requirements. Issue closed as completed.
qwen/qwen3.6-35b-a3b Fixed in PR #5310. The kde-neon extension incorrectly used semicolons instead of colons to separate paths in the CMAKE_PREFIX_PATH environment variable. The maintainer confirmed the resolution and closed the issue.
qwen3.6-35b-a3b-mtp-q6 Fixed by merging pull request #5310, which corrected the CMAKE_PREFIX_PATH path delimiter from semicolon to colon for kde-neon snaps. The bug is resolved and the issue is closed.
qwen3.6-35b-a3b-mtp-q6 Fixed the kde-neon extension bug where CMAKE_PREFIX_PATH used incorrect semicolon separators. The fix was merged in PR #5310 and the issue was closed as completed.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#5585 fix: kde-neon: Append usr to cmake prefix path #5272 snapcraft merged Merged a fix for KDE Neon that appends usr to the CMake prefix path. Approved by two reviewers and passed integration and security checks. A conventional commits policy check failed but did not block the merge.
76%