Bug 420090 - Project Environment Profiles ignored
Summary: Project Environment Profiles ignored
Status: REPORTED
Alias: None
Product: kdevelop
Classification: Applications
Component: Profiles (show other bugs)
Version: 5.5.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-14 19:09 UTC by Alan Jones
Modified: 2021-02-23 07:51 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alan Jones 2020-04-14 19:09:53 UTC
SUMMARY
Okay, I'm not 100% sure on the intended design of environment profiles in the main settings menu, so this first part could be expected, but changing selection in there, never changes the active profile unless you set the one you want as the default. So that part could be expected behavior. However, the part I'm sure isn't doing the trick is the project configuration options.

Under both CMake's advanced section and Ninja's configuration, they have options for the environment profile for them to use. While changing this setting for your project is remembered, it is not honored during execution of those phases. You just get whatever the default build profile is for KDevelop.

STEPS TO REPRODUCE
1. Create an additional environment profile (Settings->Configure KDevelop then Environment is one option - though you can get to relevant dialogs through the ninja or cmake sections covered next).
2. Open a project using CMake (with Ninja generator if you want to test that one, too)
3. In your CMake project, you'll need something you know you can influence with an environment variable. Could just be logging an environment variable with message in your CMakeLists. Something triggered from the Ninja build would be needed as well (in my case I was trying to force Qt to have the uic executable link against the correct libraries rather than the system one for building a maya plugin)
4. Choose Project->Open Configuration
5. To test for CMake go to the CMake section (selected on the left), then choose Show Advanced (right, bottom area of that window), and choose the environment profile you created under the Configure Environment dropdown.
6. To test Ninja go to the Ninja section (selected on the left) in the Project Configuration page and choose the profile you created in the Active Environment Profile dropdown.
7. Do a step which executes either or both of those (build, for example). You'll notice that neither of them have the relevant environment variable set.
8. Go to Settings->Configure KDevelop and in the Environment section set the new profile to the default.
9. Build again, and you'll see the default environment profile, which now has your variable, is used and the environment variable populated.

OBSERVED RESULT
Default environment profile is always used.

EXPECTED RESULT
Project phase configured environment profile should be used.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: Arch Linux
(available in About System)
KDE Plasma Version: 5.18.4
KDE Frameworks Version: 5.69.0
Qt Version: 5.14.2 (for system, the maya SDK and versions I mentioned are 5.12)

ADDITIONAL INFORMATION
Think that's everything you need, but hit me up if you have questions. I see 60546 sounds like a dupe, but given it's from 2003 I'll create this rather than reopen that one. Seems unlikely to be the same code path as I think that's KDevelop3 timeframe.
Comment 1 Wouter Haffmans 2021-02-23 07:51:22 UTC
I think this is a dupe of #403769