From 5b89088f877fdc52d6e5de23be47da940838e4df Mon Sep 17 00:00:00 2001
From: "Shawn O. Pearce" <spearce@spearce.org>
Date: Sat, 31 Oct 2009 18:47:16 -0700
Subject: [PATCH] Switch pgm, test to proper plugin projects

This way we depend upon the MANIFEST.MF to define our classpath
and our build will act more like any other OSGI bundle build.

Change-Id: I9e1f1f5a0bccb0ab0e39e49b75fb400fea446619
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 org.eclipse.jgit.pgm/.classpath               |  4 +---
 org.eclipse.jgit.pgm/.project                 | 11 ++++++++++
 .../.settings/org.eclipse.pde.core.prefs      |  3 +++
 org.eclipse.jgit.pgm/META-INF/MANIFEST.MF     | 22 +++++++++++++++++++
 .../services/org.eclipse.jgit.pgm.TextBuiltin |  0
 org.eclipse.jgit.pgm/build.properties         |  5 +++++
 org.eclipse.jgit.pgm/plugin.properties        |  2 ++
 org.eclipse.jgit.test/.classpath              |  1 -
 org.eclipse.jgit.test/META-INF/MANIFEST.MF    | 17 +++++++++++++-
 9 files changed, 60 insertions(+), 5 deletions(-)
 create mode 100644 org.eclipse.jgit.pgm/.settings/org.eclipse.pde.core.prefs
 create mode 100644 org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
 rename org.eclipse.jgit.pgm/{src => }/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin (100%)
 create mode 100644 org.eclipse.jgit.pgm/build.properties
 create mode 100644 org.eclipse.jgit.pgm/plugin.properties

diff --git a/org.eclipse.jgit.pgm/.classpath b/org.eclipse.jgit.pgm/.classpath
index 058848cf2..304e86186 100644
--- a/org.eclipse.jgit.pgm/.classpath
+++ b/org.eclipse.jgit.pgm/.classpath
@@ -2,8 +2,6 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry combineaccessrules="false" exported="true" kind="src" path="/org.eclipse.jgit"/>
-	<classpathentry combineaccessrules="false" kind="lib" path="/org.kohsuke.args4j"/>
-	<classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jgit.ui"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.eclipse.jgit.pgm/.project b/org.eclipse.jgit.pgm/.project
index bbaafc261..6fc89ae5e 100644
--- a/org.eclipse.jgit.pgm/.project
+++ b/org.eclipse.jgit.pgm/.project
@@ -10,8 +10,19 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
 		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
 	</natures>
 </projectDescription>
diff --git a/org.eclipse.jgit.pgm/.settings/org.eclipse.pde.core.prefs b/org.eclipse.jgit.pgm/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 000000000..75c779a48
--- /dev/null
+++ b/org.eclipse.jgit.pgm/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,3 @@
+#Sat Oct 31 18:40:07 PDT 2009
+eclipse.preferences.version=1
+resolve.requirebundle=false
diff --git a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..5100d140a
--- /dev/null
+++ b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %plugin_name
+Bundle-SymbolicName: org.eclipse.jgit.pgm
+Bundle-Version: 0.6.0.qualifier
+Bundle-Vendor: %provider_name
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Import-Package: org.eclipse.jgit.awtui,
+ org.eclipse.jgit.dircache,
+ org.eclipse.jgit.errors,
+ org.eclipse.jgit.lib,
+ org.eclipse.jgit.revplot,
+ org.eclipse.jgit.revwalk,
+ org.eclipse.jgit.revwalk.filter,
+ org.eclipse.jgit.transport,
+ org.eclipse.jgit.treewalk,
+ org.eclipse.jgit.treewalk.filter,
+ org.kohsuke.args4j,
+ org.kohsuke.args4j.spi
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.jgit.pgm
diff --git a/org.eclipse.jgit.pgm/src/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin b/org.eclipse.jgit.pgm/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin
similarity index 100%
rename from org.eclipse.jgit.pgm/src/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin
rename to org.eclipse.jgit.pgm/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin
diff --git a/org.eclipse.jgit.pgm/build.properties b/org.eclipse.jgit.pgm/build.properties
new file mode 100644
index 000000000..aa1a00826
--- /dev/null
+++ b/org.eclipse.jgit.pgm/build.properties
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               plugin.properties
diff --git a/org.eclipse.jgit.pgm/plugin.properties b/org.eclipse.jgit.pgm/plugin.properties
new file mode 100644
index 000000000..f8fbd725c
--- /dev/null
+++ b/org.eclipse.jgit.pgm/plugin.properties
@@ -0,0 +1,2 @@
+plugin_name=Java Git Command Line Interface (Incubation)
+provider_name=eclipse.org
diff --git a/org.eclipse.jgit.test/.classpath b/org.eclipse.jgit.test/.classpath
index 3c42728db..ea4128577 100644
--- a/org.eclipse.jgit.test/.classpath
+++ b/org.eclipse.jgit.test/.classpath
@@ -4,7 +4,6 @@
 	<classpathentry kind="src" path="tst-rsrc"/>
 	<classpathentry kind="src" path="exttst"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jgit"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.eclipse.jgit.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
index 8c89f045c..225611ba9 100644
--- a/org.eclipse.jgit.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
@@ -9,4 +9,19 @@ Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
 Import-Package: com.jcraft.jsch,
  junit.framework,
- junit.textui
+ junit.textui,
+ org.eclipse.jgit.diff,
+ org.eclipse.jgit.dircache,
+ org.eclipse.jgit.errors,
+ org.eclipse.jgit.fnmatch,
+ org.eclipse.jgit.lib,
+ org.eclipse.jgit.merge,
+ org.eclipse.jgit.patch,
+ org.eclipse.jgit.revplot,
+ org.eclipse.jgit.revwalk,
+ org.eclipse.jgit.revwalk.filter,
+ org.eclipse.jgit.transport,
+ org.eclipse.jgit.treewalk,
+ org.eclipse.jgit.treewalk.filter,
+ org.eclipse.jgit.util,
+ org.eclipse.jgit.util.io
-- 
GitLab