On 10/1/2010 1:18 PM, Wim Jongman wrote:
Requires and Includes are two separate things, however
one could expect that without required features things will also
fail to compile. Why else would one require another feature.
Yes, I understand that this the typical case (requires in features
being same as target platform)...but you are also right that they
are distinct things...that is, the required plugins in feature.xml
end up being in the p2 metadata...and that's why I don't really want
to have the requires be used to set the target platform for
compile/build. An example of why this doesn't work very well for
edge cases is optional bundle dependencies...they shouldn't be in
requires (for target platform), but they *do* need to be present for
And...I think that the depending upon requires info in features to
create the target platform makes for an undesirably brittle
build...because bundles that are statically in the target platform
(e.g. ECF sdk, or ECF remote services) may be easily and/or
appropriately *not* in the feature.xml.
So in any event...I just would like to have the target platform (for
build) be defined separately than via contents of feature.xml
On Fri, Oct 1, 2010 at 9:41 PM, Scott
I thought that Bucky was explicitly *told* what the target
platform should consist of (via the buckminster metadata
files...whichever are appropriate).
On 10/1/2010 9:55 AM, Markus Alexander Kuppe wrote:
On 10/01/2010 06:49 PM, Scott Lewis wrote:
I don't know....I'll fuss with trying that as soon as
I can. I don't
Well, Bucky needs to know what to put into the TP.
Without requires, how
immediately see how the requires in feature.xml would
have anything to
do with the target platform contents though...and it
appears to me that
target platform contents is the problem here (although
I admit I don't
know why it was working previously).
should it know?
In general, I don't think it's a good idea for Bucky to
compute the target platform for a build from requires in
features...as I think the requires in features should be the
constraints on target runtimes (i.e. where ECF is to be
installed)...that end up in the resulting p2
repository...rather than used to compute the target platform
So if the target platform *is* being computed via the
feature requires I would like to change this in at least
this build. I was/have been assuming that the target
platform for our builds was being specified by the
Buckminster meta-data files (cspecx, etc) and I think that
would be better. I don't think we should have to add
feature requires in order to build something...since it has
deployment/p2 repo implications. I also think that having
the target platform be computed via feature requires
would/does result in a more brittle and error-prone build.
Ok...I agree the build used to work...but it doesn't
now...and I would like to separate the target platform
specification from the content of the feature.xml (for
reasons discussed above).
Ok...so I guess I need to know...what are the right
additions (to cspex,
IMO it should not be necessary to change anything except
mspec, cquery and/or rmap) to include all of the ECF
successful recent build from HEAD I guess) in the JMS
Don't we have some boilerplate for that (i.e. isn't
it already like
that in some other builds)? If so just point me in
feature.xml. The build used to work before the change to
So...how does one set the target platform contents
explicitly in the relevant Bucky metadata files (rather than
feature requires)? I'm pretty sure this is possible...and I
was obviously under the impression we were already doing it.
ecf-dev mailing list