Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 295138

Summary: Make Targets not automatically filled in for new Autotools project
Product: [Tools] CDT Reporter: Jeff Johnston <jjohnstn>
Component: cdt-autotoolsAssignee: Jeff Johnston <jjohnstn>
Status: CLOSED FIXED QA Contact: Jeff Johnston <jjohnstn>
Severity: normal    
Priority: P3 CC: akurtakov, cdtdoug
Version: 8.1.0   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on: 295148    
Bug Blocks:    

Description Jeff Johnston CLA 2009-11-13 17:09:43 EST
Creating a new C++ Hello world project and clicking on Project -> Make Targets -> build shows nothing in the list.  This should contain the targets found in the top-level Makefile.
Comment 1 Jeff Johnston CLA 2009-11-13 19:20:55 EST
(In reply to comment #0)
> Creating a new C++ Hello world project and clicking on Project -> Make Targets
> -> build shows nothing in the list.  This should contain the targets found in
> the top-level Makefile.

The Make Targets are there, but our work-around for the slow MakeTargetManager.addTarget() adds them directly to the file save and the local copy doesn't know about them until the next session when they are read in again.  There is no simple work-around for this.  Using the addTarget() method of MakeTargetManager is just too slow for a project such as newlib where there are over 6000 MakeTargets in the top-level Makefile.  A work-around is for a user to restart the Eclipse session to use the recently added Make Targets.  

A bug has been opened upstream against the CDT MakeTargetManager: 

https://bugs.eclipse.org/bugs/show_bug.cgi?id=295148

Removing from blocker list for 0.4 and setting milestone to 0.5.
Comment 2 Andrew Overholt CLA 2010-03-03 13:36:59 EST
Removing target milestone of 0.5 for bugs that won't make it for 0.5.
Comment 3 Jeff Johnston CLA 2012-07-19 15:43:18 EDT
Closing this bug as fixed.  Make targets can be accessed as long as a top-level file or the project itself is selected such that the top-level make targets apply.