Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-releng-dev] buildable source zips for eclipse.org plugins


Pascal, Sonia and I have reviewed your proposal and have the following questions and comments from the perspective of the Eclipse platform build process.

Eclipse is not built by checking out a src tree and running a makefile, the approach that  many other open source projects take.  We use pde build to manage the complexity of determing dependancies and generating the appropriate ant scripts that are used to build Eclipse.  This avoids the problem of having to modify a makefile each time a dependancy changes.  Having a static build.xml in the repository to build eclipse does not scale for prerequisite changes.

proposal>Eclipse does not currently have a standard method of releasing buildable source archives; the SDK can be built and packaged with the "srcIncluded" zip but the plugins cannot easily be built. Part of the reason for this seems to be that users are intended to use the update site feature of Eclipse to install plugins. The update site functionality, however, does not offer the afore mentioned benefits.

With respect to building other plugins, there are dependancies that need to be managed.  You can't simply checkout the source for a plugin and compile it without first determining the other plugins that it depends on.

proposal> Eclipse 3.0 introduced a new build method for plugins; the source is fetched as part of the build process by a special releng plugin that is responsible for the actual building. To build the plugin in a way that can be controlled, the sources are pre-fetched into custom tarball. At build time, cvs access is disabled and the plugin is built from the pre-fetched tarball in a chrooted environment.

We are a bit confused by this comment.  I don't think it describes what we do.  Could you elaborate further?  

Here is a link that may be useful, it describes how to build eclipse components using ant and org.eclipse.releng.eclipsebuilder and org.eclipse.releng.basebuilder.

http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/org.eclipse.releng.eclipsebuilder/readme.html?rev=HEAD&content-type=text/html

proposal> The main problem, however, is that not all plugin projects tag their cvs tree correctly when a release is made. This prohibits anybody from building that particular version of the plugin.

Each time we run an integration build, we check out the versions of plugins and features referred to in org.eclipse.releng/maps as the source for the build.   The org.eclipse.releng  project is tagged each integration build with a version that corresponds to the build id to easily identify the version of the builder that was used. This can be used to determine the version of the plugins and features that are used in the build. We also rtag all plugins and features with a release name shortly following an official release such as 3.0.1.

Build method #2 does not reflect Eclipse design intent.  The  src.zips are included in the SDK downloads to assist  during debugging, they are not designed to be used to  build Eclipse.

The scripts used to create srcIncluded and srcFetch scripts actually reside on an internal server for historical reasons for the simple reason that we haven't had time to move them to the external server.  We'll look into moving them as time permits. In summary, it's a zip of the source tree, the generated build scripts that arise from the build process described in the link above.  We'll provide more details when we move the scripts to the external server.  I've opened a bug for this issue, please feel free to annonate it with additional comments  https://bugs.eclipse.org/bugs/show_bug.cgi?id=83443

We welcome your input into our build process and suggestions for improvement.

Kim




Ben Konrath <bkonrath@xxxxxxxxxx>
Sent by: platform-releng-dev-admin@xxxxxxxxxxx

01/19/2005 04:04 PM

Please respond to
platform-releng-dev

To
platform-releng-dev@xxxxxxxxxxx
cc
Subject
[platform-releng-dev] buildable source zips for eclipse.org plugins





Hi,

I would like to get comments on an RFC I wrote about eclipse.org
providing a way to build build plugins from source:

http://people.redhat.com/bkonrath/eclipse/buildable-source-zips.html

I couldn't figure out how the eclipse-SDK "srcIncluded" and "srcFetch"
zips are generated. I checked out the entire /home/eclipse and grepped
for "sourceBuild" and "srcIncluded" but nothing turned up. Where can I
find this this information? Is the main build.xml in cvs somewhere?

Please let me know if this is the wrong list.

Thanks, Ben

_______________________________________________
platform-releng-dev mailing list
platform-releng-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/platform-releng-dev


Back to the top