[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [linux-distros-dev] an easy way to build eclipse plugins
|
Hi Ben,
I've tried your method with packaging a new version of the PyDev plugin,
it worked very well for me.
The only thing I had to change was adding a buildDirectory variable to
the java call.
Here is the full command:
# build the main pydev feature
java -cp %{eclipse_base}/startup.jar \
-Duser.home=$homedir \
org.eclipse.core.launcher.Main \
-application org.eclipse.ant.core.antRunner \
-Dtype=feature \
-Did=org.python.pydev.feature \
-DbaseLocation=$SDK \
-DsourceDirectory=$(pwd) \
-DbuildDirectory=$(pwd)/build \
-Dbuilder=
%{eclipse_base}/plugins/org.eclipse.pde.build_3.1.2/templates/package-build \
-f
%{eclipse_base}/plugins/org.eclipse.pde.build_3.1.2/scripts/build.xml
Thanks,
Igor
On Wed, 2006-05-24 at 12:26 -0400, Ben Konrath wrote:
> Hi,
>
> I cooked up a method for building Eclipse features or plugins in a
> relatively easy way. We're currently using this build method in RHEL and
> I'd like to move it over to Fedora. Before I do that, I wanted to get
> comments from everybody here.
>
> The build method uses a set of generic releng or builder scripts that
> builds a feature or plugin from a source archive which has been created
> with a cvs checkout or has been exported by eclipse. I whipped up a
> little page explaining how to export an appropriate source archive:
>
> http://people.redhat.com/bkonrath/eclipse/exporting-buildable-source-archives.html
>
> This is probably something that should be put on the wiki if everybody
> agrees this build method is a good one to standardize on.
>
> Attached is a patch to add these generic releng scripts to the templates
> directory of pde.build. I called this build method package-build. If
> we're all in agreement on this, we should request this patch be added to
> pde.build.
>
> Here's a quick overview of how this build method works works:
>
> * The source is unpacked.
> * Use the copy-platform script to setup a fake SDK root dir. (This is
> needed because pde.build doesn't support building a feature if the
> feature is already installed. Without it, it would not be possible to
> build plugins of the same version more than once in a given build
> root. IMHO this is a bug in pde.build and I may try to fix it so we
> can get rid of this.)
> * Call the builder with a line like this:
>
> java -cp %{eclipse_base}/startup.jar \
> -Duser.home=$homedir \
> org.eclipse.core.launcher.Main \
> -application org.eclipse.ant.core.antRunner \
> -Dtype=feature \
> -Did=net.sourceforge.phpeclipse \
> -DsourceDirectory=$(pwd) \
> -DbaseLocation=$SDK \
> -Dbuilder=%{eclipse_base}/plugins/org.eclipse.pde.build_3.1.2/templates/package-build \
> -f %{eclipse_base}/plugins/org.eclipse.pde.build_3.1.2/scripts/build.xml
>
> All that really has to be set is the id and the type. The rest is a
> template.
> * The builder will then call a shell script to create a 'plugins' and
> 'features' directory and will add appropriate symlinks to the plugins
> and features inside these directories. This step just makes the
> sources look as though they have been checked out by the fetch stage
> of the releng process.
> * The build then proceeds through a normal releng build expect for the
> small hack needed to get the assemble target called for an id
> that has been defined on the command line. Details are in the
> customTargets.xml in the patch if you're interested
>
> This build method makes it possible to create an application to generate
> templates for rpms. I don't know details of how the Debian rules and
> Gentoo ebuilds work, but I imagine it would be possible to make backends
> for this app that would work for rpm, deb and ebuilds. Thoughts?
>
> We are currently using this package build stuff for a few plugins that
> we will be shipping in RHEL. I'm attaching the PHPeclipse spec as a
> complete example. Note that the interaction between PHPeclipse and
> apache/mysql is not setup in this specfile because PHPeclispe uses XAMPP
> instead of the system software. When I have time, I'm going to write a
> fragment or two to address these short coming and then will put
> PHPeclipse into Fedora Extras. I've also attached the script I used to
> generate the PHPeclipse source archive - upstream didn't seem to
> interested in providing such an archive. If anybody wants an srpm of
> this version of PHPeclipse, let me know.
>
> I guess that all I have to say for now. Any comments or suggestions
> would be appreciated.
>
> Cheers, Ben
> _______________________________________________
> linux-distros-dev mailing list
> linux-distros-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/linux-distros-dev