Bug 219659 - mingw toolchain defined using internal builder
Summary: mingw toolchain defined using internal builder
Status: NEW
Alias: None
Product: CDT
Classification: Tools
Component: cdt-build (show other bugs)
Version: 4.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: cdt-build-inbox@eclipse.org CLA
QA Contact: Elena Laskavaia CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-20 14:35 EST by kensing CLA
Modified: 2019-12-30 18:54 EST (History)
2 users (show)

See Also:


Attachments
changes made to cdt.managedbuilder.gnu.ui plugin.xml (1.20 KB, patch)
2008-02-20 14:35 EST, kensing CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description kensing CLA 2008-02-20 14:35:58 EST
Created attachment 90239 [details]
changes made to cdt.managedbuilder.gnu.ui plugin.xml

Build ID:  M20080131-1440

Steps To Reproduce:
The mingw toolchain defines the builder to be internal:
<builder
   id="cdt.managedbuild.tool.gnu.builder.mingw.base"
   isAbstract="false"
   isVariableCaseSensitive="false"
   superClass="org.eclipse.cdt.build.core.internal.builder">
</builder> 

Other tool chains such as cygwin define the builder as follows:

<builder
  superClass="cdt.managedbuild.target.gnu.builder"
  id="cdt.managedbuild.target.gnu.builder.cygwin.base">
</builder>  


Is there any reason that the mingw toolchain has defined the builder as internal?  Defining the toolchain as internal is causing problems for our product.

I've attached a patch that defines the toolchain as gnu make builder.


More information:
Comment 1 Doug Schaefer CLA 2008-02-20 14:53:41 EST
(In reply to comment #0)
> Is there any reason that the mingw toolchain has defined the builder as
> internal?

Yes, MinGW does not come with a make program that works for the CDT. The MinGW integration is intended to work with MinGW without requiring MSYS or Cygwin behind it.

> Defining the toolchain as internal is causing problems for our
> product.

The MinGW toolchain is meant to be exemplary. If you need an officially supported one, then you need to create your own.

Or better yet, what kind of problems is it causing? I'd be happy to look at a patch that fixes issues you're having with the internal builder.
Comment 2 Sean Evoy CLA 2008-02-20 18:20:11 EST
Hi Doug,
I understand the technical reason for avoiding msys, but the upshot is that I can't switch to an external builder at all for that toolchain, even if I have a sane implementation of make.

Is there anyway that this could be relaxed for MinGW, or do we really need to provide another toolchain implementation? 
Comment 3 Doug Schaefer CLA 2008-02-20 19:09:06 EST
Hi Sean, long time!

I'm not sure of the details, but I do want the default to be the internal builder since it's way faster than the external builder and I need to support environments that don't have make. And we need to exercise the internal builder to shake out the bugs in it. If there's a way to provide both with the external as user selectable, then I'd be O.K. with that.
Comment 4 kensing CLA 2008-02-21 08:41:14 EST
The patch I supplied allows the internal or external builder to be selected (same as cygwin).  Without the patch the builder is set to internal and can't be changed.
Comment 5 Doug Schaefer CLA 2008-03-05 18:57:36 EST
Reopening. I'll take a look.
Comment 6 Doug Schaefer CLA 2008-06-05 16:43:21 EDT
I'm still not sure about this. I'm moving it to 5.0.1 since I think this is pretty risky and it's pretty late in 5.0.
Comment 7 Doug Schaefer CLA 2008-09-12 08:43:17 EDT
This needs more testing that I can get into 5.0.1. I'll look at this as part of my Wascana work coming up.
Comment 8 Doug Schaefer CLA 2009-12-04 12:32:37 EST
Returning old defects to pool so I can have an accurate list of what I'm working on.
Comment 9 Jonah Graham CLA 2019-12-30 18:54:59 EST
This bug was assigned and targeted at a now released milestone (or Future or Next that isn't being used by CDT). As that milestone has now passed, the milestone field has been cleared. If this bug has been fixed, please set the milestone to the version it was fixed in and mark the bug as resolved.