Difference between revisions of "Extending or Contributing to Buckminster"

From Eclipsepedia

Jump to: navigation, search
(Installation for Buckminster contributors)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
If you are going to be working with Buckminster itself, writing your own extensions, or provide patches, you should first install Buckminster as described in [[Installing Buckminster]].
+
{{Backlink|Buckminster Project}}
  
=Installation for Buckminster contributors=
+
If you are going to be working with Buckminster itself, writing your own extensions, or provide patches, you should first install Buckminster as described in [http://www.eclipse.org/downloads/download.php?file=/tools/buckminster/doc/BuckyBook.pdf The Definitive Guide]. As Buckminster source is stored in a Git repository, you need to install the EGit and JGit features from the release train.
In addition to a regular install of Eclipse, and Buckminster, you will also need to install the RCP Delta Pack. Once the delta pack is in place, you can use Buckminster to get all of the source for Buckminster itself.
+
  
 +
==Initial clone of the repository==
 +
#Ensure that the '''Git Repositories''' view is visible. You should be able to find it under ''"Window"'' => ''"Show View"'' => ''"Other..."'' => ''"Git"'' if its not.
 +
#Click on ''"Clone a Git repository"''
 +
#Paste the following URL into the URI field in the wizard that pops up <pre>git://git.eclipse.org/gitroot/buckminster/buckminster.git</pre>
 +
#Click ''"Next>"'' twice, then ''"Finish"''
  
When resolving this query you MUST ensure that your Eclipse installation is 3.4 and contains the RCP delta pack.  
+
==Populating the workspace==
#Go to [http://download.eclipse.org/eclipse/downloads/ http://download.eclipse.org/eclipse/downloads/].
+
===Create the local clone and check out the releng project===
#Select the latest release.
+
#Expand ''"buckminster"'' => ''"Working Directory"'' in the '''Git Repositories''' view.
#Navigate to the '''''RCP SDK''''' section where you will find a download link for the ''"RCP delta pack"'' zip.
+
#Select ''"org.eclipse.buckminster.releng"'', right click, and then select ''"Import projects..."''
#Download and unpack into your Eclipse installation directory. (unzip it in the eclipse install-directory that holds "plugins" and "features")
+
#Click ''"Next>"'' in the list of projects. A page where only the selected project is visible shows up.
#Restart Eclipse and execute one of the following component queries - (Select "File" > "Open a Component Query", and paste in out of these URL's depending on which version you want:
+
#Click ''"Finish"''
:* For '''head development''' [http://www.eclipse.org/buckminster/samples/queries/buckminster-dev.cquery http://www.eclipse.org/buckminster/samples/queries/buckminster-dev.cquery]
+
 
:* For '''eclipse 3.4.x''' [http://www.eclipse.org/buckminster/samples/queries/buckminster.cquery http://www.eclipse.org/buckminster/samples/queries/buckminster.cquery]
+
===Prepare an empty target platform===
 +
#Create a new general project named '''TP''' (or some name of your preference)
 +
#Open ''"Window"'' => ''"Preferences"'' and expand ''"Plug-in Development"''
 +
#Select ''"Target Platform"''
 +
#Click ''"Add..."''
 +
#Click ''"Next>"'' (i.e. start with nothing)
 +
#Enter '''TP''' in the ''Name:'' field
 +
#Click ''"Add..."''
 +
#Select ''"Directory"'' and click ''"Next"''
 +
#Click on ''"Variables..."''
 +
#Scroll down and select ''"workspace_loc"'' and then type '''TP''' in the ''Argument:'' field.
 +
#Click ''"OK"'' and then ''"Finish"'' and then ''"Finish"'' again.
 +
#Set your new target definition active by checking it in the list of ''Target definitions:'' and click ''"OK"''
 +
 
 +
===Run the cquery to populate the workspace===
 +
#Expand the '''org.eclipse.buckminster.releng''' project and open the '''build.cquery''' file. It should open using the Buckminster cquery editor.
 
# Press "Resolve & Materialize" in the CQUERY editor that appears
 
# Press "Resolve & Materialize" in the CQUERY editor that appears
 
# Buckminster will now fetch and build Buckminster from source.
 
# Buckminster will now fetch and build Buckminster from source.
 +
 +
==Submitting a patch==
 +
#Make necessary changes
 +
#Ideally, write a JUnit test case that test your change and add it to the set of JUnit tests in the corresponding test project
 +
#Commit your changes to your local Buckminster clone
 +
#Use EGit to create a patch for your commit. This can be done by viewing the repository history, right clicking a commit, and then select ''"Create Patch..."''
 +
#Submit this patch as an attachment to a bug in our [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Buckminster Bugzilla]
 +
[[Category:Buckminster]]

Latest revision as of 02:25, 14 September 2012

< To: Buckminster Project

If you are going to be working with Buckminster itself, writing your own extensions, or provide patches, you should first install Buckminster as described in The Definitive Guide. As Buckminster source is stored in a Git repository, you need to install the EGit and JGit features from the release train.

Contents

[edit] Initial clone of the repository

  1. Ensure that the Git Repositories view is visible. You should be able to find it under "Window" => "Show View" => "Other..." => "Git" if its not.
  2. Click on "Clone a Git repository"
  3. Paste the following URL into the URI field in the wizard that pops up
    git://git.eclipse.org/gitroot/buckminster/buckminster.git
  4. Click "Next>" twice, then "Finish"

[edit] Populating the workspace

[edit] Create the local clone and check out the releng project

  1. Expand "buckminster" => "Working Directory" in the Git Repositories view.
  2. Select "org.eclipse.buckminster.releng", right click, and then select "Import projects..."
  3. Click "Next>" in the list of projects. A page where only the selected project is visible shows up.
  4. Click "Finish"

[edit] Prepare an empty target platform

  1. Create a new general project named TP (or some name of your preference)
  2. Open "Window" => "Preferences" and expand "Plug-in Development"
  3. Select "Target Platform"
  4. Click "Add..."
  5. Click "Next>" (i.e. start with nothing)
  6. Enter TP in the Name: field
  7. Click "Add..."
  8. Select "Directory" and click "Next"
  9. Click on "Variables..."
  10. Scroll down and select "workspace_loc" and then type TP in the Argument: field.
  11. Click "OK" and then "Finish" and then "Finish" again.
  12. Set your new target definition active by checking it in the list of Target definitions: and click "OK"

[edit] Run the cquery to populate the workspace

  1. Expand the org.eclipse.buckminster.releng project and open the build.cquery file. It should open using the Buckminster cquery editor.
  2. Press "Resolve & Materialize" in the CQUERY editor that appears
  3. Buckminster will now fetch and build Buckminster from source.

[edit] Submitting a patch

  1. Make necessary changes
  2. Ideally, write a JUnit test case that test your change and add it to the set of JUnit tests in the corresponding test project
  3. Commit your changes to your local Buckminster clone
  4. Use EGit to create a patch for your commit. This can be done by viewing the repository history, right clicking a commit, and then select "Create Patch..."
  5. Submit this patch as an attachment to a bug in our Bugzilla