Bug 369193 - [WorkingSets] Projects are not compiled in the correct order when build called from Manage Working Set Configurations window.
Summary: [WorkingSets] Projects are not compiled in the correct order when build calle...
Status: NEW
Alias: None
Product: CDT
Classification: Tools
Component: cdt-build (show other bugs)
Version: 8.1.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: cdt-build-inbox@eclipse.org CLA
QA Contact: Jonah Graham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-20 05:10 EST by Marcin CLA
Modified: 2020-09-04 15:25 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcin CLA 2012-01-20 05:10:48 EST
Build Identifier: Version: Indigo Service Release 1 Build id: 20110916-0149

In the CDT there is a possibility to create project references (Properties/Project References). These project references are used to create a build order list, which can be found in Preferences/General/Workspace/Build Order.

If project references are set and projects are selected in Project Explorer and build is called from the context menu, the build order is correctly maintained.

But if a working set with these same projects is created and a build command is called from Manage Working Set Configurations window (Project/Build Configurations/Manage Working Sets...) the build order is not correct (usually different than the build order list, of course in case there are 2 projects, the chance that it will be (in)correct is 50%) - the more projects the chances the build order is correct is lesser).

Reproducible: Always

Steps to Reproduce:
1. Create two C++ 'Hello World' projects, call them 'a' and 'b'
2. For the project 'a' go to Properties/Project References and set project 'b' as referenced.
3. You can check build order in the Preferences/General/Workspace/Build Order - 'b' should be on the top of the list.
4. Set your Console view visible - since projects are small, compilation is fast, you can see name of the project being currently compiled at the top of the Console view; when it has been finished, the last compiled project name stays.
5. Select both projects in the 'Project Explorer" and from the context menu select 'Build Project' - notice the correct order of the build.
6. Create a Working Set containing both 'a' and 'b' projects.
7. Go to the Project/Build Configurations/Manage Working Sets... - Manage Working Set Configurations window should be shown (hint: before this, if it is a first working set created in the step 6th, you may refresh (F5) any of the projects to make 'Manage Working Sets...' menu enabled. )
8. Click Build button - notice the build order - there is 50% chance that it is incorrect.
9. If the build order in the 8th step was correct (first 'b' then 'a'), go to the  step 2 and change references the 'b' project has a referenced project 'a' and the 'a' project has no referenced projects. Build order now should be: first 'a' then 'b'.
10. Follow steps 3 to 8. In the 8th step now the build order is the same as it was before references had been changed (now should be first 'a' then 'b').