Difference between revisions of "Orbit Source Bundles"

From Eclipsepedia

Jump to: navigation, search
(Bundle structure)
Line 1: Line 1:
 
Created from [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184026 bug 184026].
 
Created from [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184026 bug 184026].
 +
===What you need to do===
 +
If you have bundles in Orbit and you would like to have source bundles automatically generated for you, this is what you have to do:
 +
* put your bundles in the structure below
 +
* add a map file entry for your source bundle
 +
* add your bundle (NOT your source bundle) to the feature
  
 
===Bundle structure===
 
===Bundle structure===

Revision as of 16:19, 14 May 2007

Created from bug 184026.

Contents

What you need to do

If you have bundles in Orbit and you would like to have source bundles automatically generated for you, this is what you have to do:

  • put your bundles in the structure below
  • add a map file entry for your source bundle
  • add your bundle (NOT your source bundle) to the feature

Bundle structure

{plugin_root}
	META-INF/MANIFEST.MF
	plugin.xml
	plugin.properties
	build.properties
	{class_files}
	...
	source-bundle/
		META-INF/MANIFEST.MF
		plugin.xml
		build.properties
		customCallbacks.xml
		...
		src/{plugin_id}_{version}/src.zip

customCallbacks.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="customCallbacks" default="post.gather.bin.parts" basedir=".">
	<target name="post.gather.bin.parts">
		<echo message="${target.folder}" />
		<echo message="${build.result.folder}" />
		<pathconvert property="binaryBundleId">
			<path>
				<fileset dir="${target.folder}/src" includes="**" />
			</path>
			<regexpmapper from=".*\\(.*)_(.*)\\.*" to="\1" />
		</pathconvert>
		<pathconvert property="sourceFolderVersion">
			<path>
				<fileset dir="${target.folder}/src" includes="**" />
			</path>
			<regexpmapper from=".*\\(.*_.*)\\.*" to="\1" />
		</pathconvert>
		<move todir="${target.folder}/src/${binaryBundleId}_${bundleVersion}">
			<fileset dir="${target.folder}/src/${sourceFolderVersion}" includes="**" />
		</move>
	</target>
</project>

build.properties

customBuildCallbacks=customCallbacks.xml
customBuildCallbacks.inheritall=true