[eclipse-jbosstools] Update to 4.2.0.Beta2 for Eclipse Luna & F21

Gerard Ryan galileo at fedoraproject.org
Mon Jul 28 05:36:00 UTC 2014


commit 307fd60ebe66ddfa1876083fb96a7438c4e68d02
Author: Gerard Ryan <gerard at ryan.lt>
Date:   Sun Jul 27 22:25:30 2014 +0100

    Update to 4.2.0.Beta2 for Eclipse Luna & F21

 create-tarball.sh                                  |   20 +-
 ...pse-jbosstools-as-archives.webtools-4.0.0.patch |  174 +++---
 eclipse-jbosstools-as.core.patch                   |   20 +-
 eclipse-jbosstools-freemarker-4.0.0.patch          |   30 +-
 eclipse-jbosstools-lucene-api-migration.patch      |   16 +
 eclipse-jbosstools-lucene-api-migration2.patch     |  145 ++++
 eclipse-jbosstools-openshift-bundledjarnames.patch |   22 +-
 eclipse-jbosstools.spec                            |  738 ++++++++------------
 sources                                            |    2 +-
 9 files changed, 595 insertions(+), 572 deletions(-)
---
diff --git a/create-tarball.sh b/create-tarball.sh
index 6cfa965..df37c20 100644
--- a/create-tarball.sh
+++ b/create-tarball.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/bash
 
-version="4.1.1.Final"
+version="4.2.0.Beta2"
 name="eclipse-jbosstools"
 
 MODULES="jbosstools-base \
@@ -15,15 +15,15 @@ MODULES="jbosstools-base \
 
 # Where possible, commit SHAs based on stable Git tag
 declare -A commits
-commits[jbosstools-base]="bdb07a034e3a37158a77275ddb323262223ec719"
-commits[jbosstools-build]="f04ad1b579e7980a86e3199851ab763225af3cdd"
-commits[jbosstools-build-sites]="700d68f030e280204766543e64c00601f9969a49"
-commits[jbosstools-freemarker]="8d132659a1105d1ce6eb1392252e87189bb45018"
-commits[jbosstools-javaee]="b48ce93f9c39ef79d26b0822217adfb14ab7fb68"
-commits[jbosstools-jst]="7c87540ecb5cbab45c009b17428a695fdbf0cd9f"
-commits[jbosstools-openshift]="59411f033efd5f9fae48b36b48edf3228c567f44"
-commits[jbosstools-server]="3443a6af700d4cbe46025c863e81aa433a94c420"
-commits[jbosstools-webservices]="fec0aa96b8cf97233103c66aeba17f10bdf8948f"
+commits[jbosstools-base]="479b248312a51a89d547ab50b6a82b789784bf6b"
+commits[jbosstools-build]="ad74f1698b56c6fe13724b63f1ea44a2b8024176"
+commits[jbosstools-build-sites]="35fd17603c1d4db5c42b54dc09aba18c0f69a9c8"
+commits[jbosstools-freemarker]="0c790ae22b0dfa9682c27b555b4379bd61be41ae"
+commits[jbosstools-javaee]="4b21ce1751c9e87fe7f460ed0f8360e85092a84c"
+commits[jbosstools-jst]="728a5602c1d504a258848c34ba8ec9ae0b53101f"
+commits[jbosstools-openshift]="b0690fe6a989fe0ffb915af159d758c0c964e3d4"
+commits[jbosstools-server]="e42cad1036f3a0109e1d2b3f55ef7d8c8bbb7846"
+commits[jbosstools-webservices]="dcadaa89535860f9c2b4faef94f73cf239a620f8"
 
 mkdir ${name}-${version}/
 
diff --git a/eclipse-jbosstools-as-archives.webtools-4.0.0.patch b/eclipse-jbosstools-as-archives.webtools-4.0.0.patch
index 2f57b06..9f47ce7 100644
--- a/eclipse-jbosstools-as-archives.webtools-4.0.0.patch
+++ b/eclipse-jbosstools-as-archives.webtools-4.0.0.patch
@@ -1,62 +1,82 @@
---- jbosstools-server/as/plugins/org.jboss.ide.eclipse.archives.webtools/src/org/jboss/ide/eclipse/archives/webtools/modules/LocalZippedPublisherUtil.java.orig	2013-07-27 01:04:45.410224030 +0100
-+++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.archives.webtools/src/org/jboss/ide/eclipse/archives/webtools/modules/LocalZippedPublisherUtil.java	2013-07-27 01:07:28.152252086 +0100
-@@ -11,6 +11,8 @@
-  ******************************************************************************/ 
- package org.jboss.ide.eclipse.archives.webtools.modules;
+--- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/server/publish/LocalZippedModulePublishRunner.java.orig	2014-06-03 08:52:48.000000000 +0100
++++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/server/publish/LocalZippedModulePublishRunner.java	2014-07-17 19:23:37.276714226 +0100
+@@ -12,6 +12,7 @@
+ package org.jboss.ide.eclipse.as.wtp.core.server.publish;
  
-+import java.io.IOException;
-+
  import java.io.File;
++import java.io.IOException;
  import java.util.ArrayList;
  import java.util.Arrays;
-@@ -49,7 +51,8 @@
- import org.jboss.ide.eclipse.as.core.util.ServerConverter;
+ import java.util.Iterator;
+@@ -44,7 +45,8 @@
+ import org.jboss.ide.eclipse.as.wtp.core.Messages;
  import org.jboss.ide.eclipse.as.wtp.core.util.ServerModelUtilities;
  
 -import de.schlichtherle.io.ArchiveDetector;
 +import de.schlichtherle.truezip.file.TArchiveDetector;
 +import de.schlichtherle.truezip.file.TFile;
  
- public class LocalZippedPublisherUtil extends PublishUtil {
- 	
-@@ -231,7 +234,7 @@
+ /**
+  * This class is a utility class meant to zip a given module
+@@ -158,7 +160,10 @@
+ 		// It is assumed that this method is only ever being called when removing CHILD modules, 
+ 		// not a root module. 
+ 		IPath moduleAbsoluteDestination = (module.length == 1 ? destinationArchive : destinationArchive.append(getRootModuleRelativePath(module)));
+-		boolean success = TrueZipUtil.deleteAll(moduleAbsoluteDestination);
++		boolean success = true;
++		try {
++		    success = TrueZipUtil.deleteAll(moduleAbsoluteDestination).exists();
++		} catch (IOException e) { success = false; }
+ 		if( !success) {
+ 			generateDeleteFailedStatus(moduleAbsoluteDestination.toFile());
+ 		}
+@@ -183,14 +188,16 @@
+ 		
+ 		// This is the absolute destination for this module (ex:  /home/user/deploy/Some.ear/Some.war)
+ 		IPath moduleAbsoluteDestination = (module.length == 1 ? destinationArchive : destinationArchive.append(getRootModuleRelativePath(module)));
+-		de.schlichtherle.io.File moduleRoot = null;
++		TFile moduleRoot = null;
  		try {
- 			IPath path = getOutputFilePath(combine(parent, last));
- 			path = path.removeLastSegments(1);
--			de.schlichtherle.io.File root = TrueZipUtil.getFile(path, TrueZipUtil.getJarArchiveDetector());
-+			TFile root = TrueZipUtil.getFile(path, TrueZipUtil.getJarArchiveDetector());
- 			IModuleResource[] resources = getResources(last, new NullProgressMonitor());
- 			results.addAll(Arrays.asList(copy(root, resources)));
- 			TrueZipUtil.umount();
-@@ -253,7 +256,7 @@
- 			if( module.length == 1 )
- 				FileUtil.safeDelete(path.toFile(), null);
- 			
--			de.schlichtherle.io.File moduleRoot = null;
-+			TFile moduleRoot = null;
  			if( parent == null ) {
- 				boolean createWorked = TrueZipUtil.createArchive(path);
- 				moduleRoot = TrueZipUtil.getFile(path, TrueZipUtil.getJarArchiveDetector());
-@@ -299,7 +302,7 @@
- 	
- 	protected IStatus[] publishChanges(IServer server, String deployRoot, IModule[] module) {
- 		IPath path = getOutputFilePath(module);
+ 				// We're the root module (no parent) so just create the archive to start
+ 				moduleRoot = TrueZipUtil.getFile(moduleAbsoluteDestination, TrueZipUtil.getJarArchiveDetector());
+ 				// Clear out existing, in case some child modules were removed
+ 				if( moduleRoot.exists()) {
++				    try {
+ 					TrueZipUtil.deleteAll(moduleRoot);
++				    } catch (IOException e) {}
+ 				}
+ 				boolean createWorked = TrueZipUtil.createArchive(moduleAbsoluteDestination);
+ 				moduleRoot = TrueZipUtil.getFile(moduleAbsoluteDestination, TrueZipUtil.getJarArchiveDetector());
+@@ -246,7 +253,7 @@
+ 		try {
+ 			IPath tail = getRootModuleRelativePath(combine(parent, last));
+ 			IPath tailLocation = tail.removeLastSegments(1);
+-			de.schlichtherle.io.File root = TrueZipUtil.getFile(destinationArchive.append(tailLocation), TrueZipUtil.getJarArchiveDetector());
++			TFile root = TrueZipUtil.getFile(destinationArchive.append(tailLocation), TrueZipUtil.getJarArchiveDetector());
+ 			IModuleResource[] resources = getResources(last, new NullProgressMonitor());
+ 			int total = countMembers(resources, true);
+ 			monitor.beginTask("Copying Resources", total*100);
+@@ -356,7 +363,7 @@
+ 
+ 	private IStatus[] publishChanges(IModule[] module, IProgressMonitor monitor) {
+ 		IPath path = destinationArchive.append(getRootModuleRelativePath(module));
 -		de.schlichtherle.io.File root = TrueZipUtil.getFile(path, TrueZipUtil.getJarArchiveDetector());
 +		TFile root = TrueZipUtil.getFile(path, TrueZipUtil.getJarArchiveDetector());
- 		IModuleResourceDelta[] deltas = ((Server)server).getPublishedResourceDelta(module);
- 		IDeployableServerBehaviour beh = ServerConverter.getDeployableServerBehavior(server);
- 		IModulePathFilter filter = beh.getPathFilter(module);
-@@ -311,7 +314,7 @@
- 	 * @since 2.3
- 	 */
- 	private IStatus[] publishChanges(IServer server, IModuleResourceDelta[] deltas, 
--			de.schlichtherle.io.File root, IModulePathFilter filter) {
-+			TFile root, IModulePathFilter filter) {
+ 		IModuleResourceDelta[] deltas = getDeltaForModule(module);
+ 		IModulePathFilter filter = filterProvider == null ? null : filterProvider.getFilter(server, module);
+ 		return publishChanges(deltas, root, filter, monitor);
+@@ -376,7 +383,7 @@
+ 	
+ 	
+ 	private IStatus[] publishChanges(IModuleResourceDelta[] deltas, 
+-			de.schlichtherle.io.File root, IModulePathFilter filter, IProgressMonitor monitor) {
++			TFile root, IModulePathFilter filter, IProgressMonitor monitor) {
  		ArrayList<IStatus> results = new ArrayList<IStatus>();
  		if( deltas == null || deltas.length == 0 )
  			return new IStatus[]{};
-@@ -331,10 +334,15 @@
- 					results.addAll(Arrays.asList(publishChanges(server, deltas[i].getAffectedChildren(), root, filter)));
+@@ -396,10 +403,14 @@
+ 					results.addAll(Arrays.asList(publishChanges(deltas[i].getAffectedChildren(), root, filter, monitor)));
  				}
  			} else if( dKind == IModuleResourceDelta.REMOVED) {
 -				de.schlichtherle.io.File f = getFileInArchive(root, 
@@ -65,64 +85,50 @@
  								resource.getName()));
 -				boolean b = f.deleteAll();
 +				boolean b = true;
-+				try {
-+				    TFile tf = f.rm_r();
-+				    if (!tf.exists()) { b = false; }
-+				} catch (IOException e) { b = false; }
-+
++                                try {
++                                    TFile tf = f.rm_r();
++                                    if (!tf.exists()) { b = false; }
++                                } catch (IOException e) { b = false; }
  				if( !b )
  					results.add(generateDeleteFailedStatus(f));
- 				hasBeenChanged = true;
-@@ -347,21 +355,26 @@
+ 			} else if( dKind == IModuleResourceDelta.NO_CHANGE  ) {
+@@ -411,21 +422,26 @@
  	}
  
  	
--	protected IStatus[] copy(de.schlichtherle.io.File root, IModuleResource[] children) {
-+	protected IStatus[] copy(TFile root, IModuleResource[] children) {
+-	private IStatus[] copy(de.schlichtherle.io.File root, IModuleResource[] children, IProgressMonitor monitor) {
++	private IStatus[] copy(TFile root, IModuleResource[] children, IProgressMonitor monitor) {
  		ArrayList<IStatus> results = new ArrayList<IStatus>();
  		for( int i = 0; i < children.length; i++ ) {
  			if( children[i] instanceof IModuleFile ) {
  				IModuleFile mf = (IModuleFile)children[i];
--				java.io.File source = getFile(mf);
-+				File source = getFile(mf);
- 				if( source == null )
- 					// Can do nothing here. The source doesn't exist.
- 					continue;
--				de.schlichtherle.io.File destination = getFileInArchive(root, mf.getModuleRelativePath().append(mf.getName()));
--				boolean b = new de.schlichtherle.io.File(source, ArchiveDetector.NULL).archiveCopyAllTo(destination);
-+				TFile destination = getFileInArchive(root, mf.getModuleRelativePath().append(mf.getName()));
-+				boolean b = true;
-+				try {
-+				    TFile tf = new TFile(source, TArchiveDetector.NULL).cp_rp(destination);
-+				    if (!tf.exists()) { b = false; }
-+				} catch (IOException e) { b = false; }
+ 				java.io.File source = getFile(mf);
+ 				if( source != null ) {
+-					de.schlichtherle.io.File destination = getFileInArchive(root, mf.getModuleRelativePath().append(mf.getName()));
+-					boolean b = new de.schlichtherle.io.File(source, ArchiveDetector.NULL).archiveCopyAllTo(destination);
++					TFile destination = getFileInArchive(root, mf.getModuleRelativePath().append(mf.getName()));
 +
- 				if( !b )
- 					results.add(generateCopyFailStatus(source, destination));
++                                boolean b = true;
++                                try {
++                                    TFile tf = new TFile(source, TArchiveDetector.NULL).cp_rp(destination);
++                                    if (!tf.exists()) { b = false; }
++                                } catch (IOException e) { b = false; }
+ 					if( !b )
+ 						results.add(generateCopyFailStatus(source, destination));
+ 				}
+ 				monitor.worked(100);
  			} else if( children[i] instanceof IModuleFolder ) {
 -				de.schlichtherle.io.File destination = getFileInArchive(root, children[i].getModuleRelativePath().append(children[i].getName()));
 +				TFile destination = getFileInArchive(root, children[i].getModuleRelativePath().append(children[i].getName()));
  				destination.mkdirs();
  				IModuleFolder mf = (IModuleFolder)children[i];
- 				results.addAll(Arrays.asList(copy(root, mf.members())));
-@@ -371,17 +384,17 @@
- 		return (IStatus[]) results.toArray(new IStatus[results.size()]);
+ 				results.addAll(Arrays.asList(copy(root, mf.members(), monitor)));
+@@ -444,7 +460,7 @@
+ 		return new Status(IStatus.ERROR, ASWTPToolsPlugin.PLUGIN_ID, "Copy of " + source + " to " + destination + " has failed");//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
  	}
  	
--	protected IStatus generateDeleteFailedStatus(java.io.File file) {
-+	protected IStatus generateDeleteFailedStatus(File file) {
- 		return new Status(IStatus.ERROR, IntegrationPlugin.PLUGIN_ID, "Could not delete file " + file); //$NON-NLS-1$
- 	}
- 	protected IStatus generateCoreExceptionStatus(CoreException ce) {
- 		return new Status(IStatus.ERROR, IntegrationPlugin.PLUGIN_ID, ce.getMessage(), ce);
- 	}
--	protected IStatus generateCopyFailStatus(java.io.File source, java.io.File destination) {
-+	protected IStatus generateCopyFailStatus(File source, File destination) {
- 		return new Status(IStatus.ERROR, IntegrationPlugin.PLUGIN_ID, "Copy of " + source + " to " + destination + " has failed");//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
- 	}
- 	
--	protected de.schlichtherle.io.File getFileInArchive(de.schlichtherle.io.File root, IPath relative) {
-+	protected TFile getFileInArchive(TFile root, IPath relative) {
+-	private de.schlichtherle.io.File getFileInArchive(de.schlichtherle.io.File root, IPath relative) {
++	private TFile getFileInArchive(TFile root, IPath relative) {
  		return TrueZipUtil.getFileInArchive(root, relative);
  	}
- 
+ 	
diff --git a/eclipse-jbosstools-as.core.patch b/eclipse-jbosstools-as.core.patch
index f25be80..66aaac8 100644
--- a/eclipse-jbosstools-as.core.patch
+++ b/eclipse-jbosstools-as.core.patch
@@ -1,6 +1,5 @@
-diff -Naur server/as/plugins/org.jboss.ide.eclipse.as.core.orig/build.properties server/as/plugins/org.jboss.ide.eclipse.as.core/build.properties
---- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core.orig/build.properties	2012-07-03 15:15:13.120007605 +0100
-+++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/build.properties	2012-07-03 15:17:55.357657862 +0100
+--- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/build.properties.orig	2014-07-15 20:43:01.586107138 +0100
++++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/build.properties	2014-07-15 20:44:55.190458875 +0100
 @@ -2,11 +2,11 @@
  bin.includes = META-INF/,\
                 plugin.xml,\
@@ -14,8 +13,8 @@ diff -Naur server/as/plugins/org.jboss.ide.eclipse.as.core.orig/build.properties
 -               getopt.jar,\
 +               gnu-getopt.jar,\
                 properties/,\
-                dtd/,\
                 .,\
+                about.html
 diff -Naur server/as/plugins/org.jboss.ide.eclipse.as.core.orig/.classpath server/as/plugins/org.jboss.ide.eclipse.as.core/.classpath
 --- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core.orig/.classpath	2012-07-03 15:15:12.827013865 +0100
 +++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/.classpath	2012-07-03 15:17:36.785031518 +0100
@@ -31,13 +30,12 @@ diff -Naur server/as/plugins/org.jboss.ide.eclipse.as.core.orig/.classpath serve
 +	<classpathentry exported="true" kind="lib" path="gnu-getopt.jar"/>
  	<classpathentry kind="output" path="bin"/>
  </classpath>
-diff -Naur server/as/plugins/org.jboss.ide.eclipse.as.core.orig/META-INF/MANIFEST.MF server/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF
---- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core.orig/META-INF/MANIFEST.MF	2012-07-03 15:15:13.121007584 +0100
-+++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF	2012-07-03 15:19:20.998958886 +0100
-@@ -46,9 +46,9 @@
-  org.jboss.ide.eclipse.as.core.server.v7.management,
-  org.jboss.ide.eclipse.as.core.server.xpl,
-  org.jboss.ide.eclipse.as.core.util
+--- jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF.orig	2014-07-15 20:38:38.965982845 +0100
++++ jbosstools-server/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF	2014-07-15 20:41:34.394069850 +0100
+@@ -57,9 +57,9 @@
+  org.jboss.tools.as.core.server.controllable.subsystems.internal;x-friends:="org.jboss.tools.as.test.core,org.jboss.ide.eclipse.as.ui",
+  org.jboss.tools.as.core.server.controllable.systems,
+  org.jboss.tools.as.core.server.controllable.util
 -Bundle-ClassPath: dom4j-1.6.1.jar,
 - jaxen-1.1-beta-6.jar,
 - getopt.jar,
diff --git a/eclipse-jbosstools-freemarker-4.0.0.patch b/eclipse-jbosstools-freemarker-4.0.0.patch
index e2fc1ef..2b10013 100644
--- a/eclipse-jbosstools-freemarker-4.0.0.patch
+++ b/eclipse-jbosstools-freemarker-4.0.0.patch
@@ -1,37 +1,27 @@
---- jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/.classpath.orig	2012-07-22 14:25:42.768119690 +0100
-+++ jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/.classpath	2012-07-22 14:26:03.125731591 +0100
+--- jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/build.properties.orig	2014-07-09 20:02:37.833119495 +0100
++++ jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/build.properties	2014-07-15 20:10:05.197667264 +0100
 @@ -1,6 +1,6 @@
- <?xml version="1.0" encoding="UTF-8"?>
- <classpath>
--	<classpathentry exported="true" kind="lib" path="freemarker-2.3.18.jar"/>
-+	<classpathentry exported="true" kind="lib" path="freemarker.jar"/>
- 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- 	<classpathentry kind="src" path="src"/>
---- jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/build.properties.orig	2012-07-22 14:28:21.027101531 +0100
-+++ jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/build.properties	2012-07-22 14:28:44.958644928 +0100
-@@ -1,6 +1,6 @@
- jars.compile.order = freemarker-ide.jar
+ jars.compile.order = .
  bin.includes = plugin.*,\
 -               freemarker-2.3.18.jar,\
 +               freemarker.jar,\
                 META-INF/,\
                 .,\
                 icons/,\
-@@ -13,6 +13,6 @@
+@@ -10,6 +10,6 @@
+ src.includes = plugin.*,\
                 icons/,\
-                META-INF/,\
                 License.txt,\
 -               freemarker-2.3.18.jar
 +               freemarker.jar
- source.freemarker-ide.jar = src/
- output.freemarker-ide.jar = bin/
---- jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/META-INF/MANIFEST.MF.orig	2013-01-17 16:52:33.267230513 +0000
-+++ jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/META-INF/MANIFEST.MF	2013-01-17 16:52:48.942938109 +0000
+ source.. = src/
+ output.. = bin/
+--- jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/META-INF/MANIFEST.MF.orig	2014-07-09 20:02:37.834119509 +0100
++++ jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/META-INF/MANIFEST.MF	2014-07-15 20:11:33.243828327 +0100
 @@ -22,7 +22,7 @@
   org.jboss.tools.usage;bundle-version="1.0.0";resolution:=optional;x-installation:=greedy
  Bundle-ActivationPolicy: lazy
- Bundle-ClassPath: freemarker-ide.jar,
+ Bundle-ClassPath: .,
 - freemarker-2.3.18.jar
 + freemarker.jar
  Bundle-Vendor: %providerName
diff --git a/eclipse-jbosstools-lucene-api-migration.patch b/eclipse-jbosstools-lucene-api-migration.patch
new file mode 100644
index 0000000..4464e0e
--- /dev/null
+++ b/eclipse-jbosstools-lucene-api-migration.patch
@@ -0,0 +1,16 @@
+--- jbosstools-webservices/plugins/org.jboss.tools.ws.jaxrs.core/META-INF/MANIFEST.MF.orig	2014-05-28 14:56:49.000000000 +0100
++++ jbosstools-webservices/plugins/org.jboss.tools.ws.jaxrs.core/META-INF/MANIFEST.MF	2014-07-19 16:53:24.094781328 +0100
+@@ -25,7 +25,12 @@
+  org.eclipse.wst.common.frameworks.ui;bundle-version="1.1.301",
+  org.eclipse.jface.text;bundle-version="3.7.1",
+  org.eclipse.jdt.core,
+- org.apache.lucene.core;bundle-version="3.5.0";visibility:=reexport
++ org.apache.lucene.analysis;visibility:=reexport
++Import-Package:  org.apache.lucene.index,
++ org.apache.lucene.document,
++ org.apache.lucene.store,
++ org.apache.lucene.search,
++ org.apache.lucene.util
+ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+ Bundle-ActivationPolicy: lazy
+ Export-Package: org.jboss.tools.ws.jaxrs.core,
diff --git a/eclipse-jbosstools-lucene-api-migration2.patch b/eclipse-jbosstools-lucene-api-migration2.patch
new file mode 100644
index 0000000..dfd806a
--- /dev/null
+++ b/eclipse-jbosstools-lucene-api-migration2.patch
@@ -0,0 +1,145 @@
+--- jbosstools-webservices/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/search/JaxrsElementsIndexationDelegate.java.orig	2014-05-28 14:56:49.000000000 +0100
++++ jbosstools-webservices/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/search/JaxrsElementsIndexationDelegate.java	2014-07-19 18:03:22.256817929 +0100
+@@ -22,10 +22,13 @@
+ import org.apache.lucene.analysis.standard.StandardAnalyzer;
+ import org.apache.lucene.document.Document;
+ import org.apache.lucene.document.Field;
++import org.apache.lucene.index.AtomicReaderContext;
+ import org.apache.lucene.index.CorruptIndexException;
++import org.apache.lucene.index.DirectoryReader;
+ import org.apache.lucene.index.IndexReader;
+ import org.apache.lucene.index.IndexWriter;
+ import org.apache.lucene.index.IndexWriterConfig;
++import org.apache.lucene.index.MultiFields;
+ import org.apache.lucene.index.Term;
+ import org.apache.lucene.search.BooleanClause;
+ import org.apache.lucene.search.BooleanClause.Occur;
+@@ -40,6 +43,7 @@
+ import org.apache.lucene.store.Directory;
+ import org.apache.lucene.store.LockObtainFailedException;
+ import org.apache.lucene.store.RAMDirectory;
++import org.apache.lucene.util.Bits;
+ import org.apache.lucene.util.Version;
+ import org.eclipse.core.resources.IResource;
+ import org.eclipse.core.runtime.CoreException;
+@@ -265,8 +269,8 @@
+ 	private String searchSingle(final Query query, final IndexedObjectType type) {
+ 		try {
+ 			final IndexSearcher searcher = getNewIndexSearcherIfNeeded();
+-			Logger.traceIndexing("Using IndexReader (current={} / hasDeletions={}) containing {} documents",
+-					indexReader.isCurrent(), indexReader.hasDeletions(), indexReader.numDocs());
++			Logger.traceIndexing("Using IndexReader (hasDeletions={}) containing {} documents",
++					indexReader.hasDeletions(), indexReader.numDocs());
+ 			Logger.traceIndexing("Searching single document matching {}", query.toString());
+ 			final TopDocs result = searcher.search(query, 1);
+ 			if (result.totalHits >= 1) {
+@@ -296,8 +300,8 @@
+ 	public <T> List<T> searchElements(final Term... terms) {
+ 		try {
+ 			final IndexSearcher searcher = getNewIndexSearcherIfNeeded();
+-			Logger.traceIndexing("Using IndexReader (current={} / hasDeletions={}) containing {} documents",
+-					indexReader.isCurrent(), indexReader.hasDeletions(), indexReader.numDocs());
++			Logger.traceIndexing("Using IndexReader (hasDeletions={}) containing {} documents",
++					indexReader.hasDeletions(), indexReader.numDocs());
+ 			final BooleanQuery query = joinTerms(terms);
+ 			Logger.traceIndexing("Searching documents matching {}", query.toString());
+ 			final JaxrsElementsCollector<T> collector = new JaxrsElementsCollector<T>();
+@@ -324,8 +328,8 @@
+ 		try {
+ 			Logger.debugIndexing("Searching for Endpoints with using: {}", Arrays.asList(terms));
+ 			final IndexSearcher searcher = getNewIndexSearcherIfNeeded();
+-			Logger.traceIndexing("Using IndexReader (current={} / hasDeletions={}) containing {} documents",
+-					indexReader.isCurrent(), indexReader.hasDeletions(), indexReader.numDocs());
++			Logger.traceIndexing("Using IndexReader (hasDeletions={}) containing {} documents",
++					indexReader.hasDeletions(), indexReader.numDocs());
+ 			final BooleanQuery query = joinTerms(terms);
+ 			Logger.traceIndexing("Searching documents matching {}", query.toString());
+ 			final JaxrsEndpointsCollector collector = new JaxrsEndpointsCollector();
+@@ -348,8 +352,8 @@
+ 	 */
+ 	public int count(final Query query) {
+ 		try {
+-			Logger.traceIndexing("Using IndexReader (current={} / hasDeletions={}) containing {} documents",
+-					indexReader.isCurrent(), indexReader.hasDeletions(), indexReader.numDocs());
++			Logger.traceIndexing("Using IndexReader (hasDeletions={}) containing {} documents",
++					indexReader.hasDeletions(), indexReader.numDocs());
+ 			final IndexSearcher searcher = getNewIndexSearcherIfNeeded();
+ 			final TotalHitCountCollector collector = new TotalHitCountCollector();
+ 			Logger.traceIndexing("Counting documents matching {}...", query.toString());
+@@ -364,12 +368,14 @@
+ 	}
+ 
+ 	private IndexSearcher getNewIndexSearcherIfNeeded() throws IOException {
+-		final IndexReader newIndexReader = IndexReader.openIfChanged(indexReader, indexWriter, true);
+-		if (newIndexReader != null) {
+-			this.indexReader = newIndexReader;
+-			Logger.traceIndexing("Reopening IndexReader (current={} / hasDeletions={}) now containing {} documents",
+-					indexReader.isCurrent(), indexReader.hasDeletions(), indexReader.numDocs());
+-			this.indexSearcher = new IndexSearcher(indexReader);
++		if (indexReader instanceof DirectoryReader) {
++			final IndexReader newIndexReader = DirectoryReader.openIfChanged((DirectoryReader)indexReader, indexWriter, true);
++			if (newIndexReader != null) {
++				this.indexReader = newIndexReader;
++				Logger.traceIndexing("Reopening IndexReader (hasDeletions={}) now containing {} documents",
++						indexReader.hasDeletions(), indexReader.numDocs());
++				this.indexSearcher = new IndexSearcher(indexReader);
++			}
+ 		}
+ 		return this.indexSearcher;
+ 	}
+@@ -404,6 +410,10 @@
+ 		}
+ 
+ 		@Override
++		public void setNextReader(AtomicReaderContext atomicReaderContext) {
++			this.docBase = atomicReaderContext.docBase;
++		}
++
+ 		public void setNextReader(IndexReader indexReader, int docBase) throws IOException {
+ 			this.setIndexReader(indexReader);
+ 			this.setDocBase(docBase);
+@@ -461,8 +471,12 @@
+ 		@SuppressWarnings("unchecked")
+ 		@Override
+ 		public void collect(int docId) throws IOException {
+-			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId),
+-					getIndexReader().isDeleted(docId));
++			boolean isDeleted = false;
++			Bits liveDocs = MultiFields.getLiveDocs(indexReader);
++			if (liveDocs != null && !liveDocs.get(docId)) {
++				isDeleted = true;
++			}
++			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId), isDeleted);
+ 			final Document document = getIndexReader().document(docId);
+ 			final String docIdentifier = document.get(LuceneFields.FIELD_IDENTIFIER);
+ 			final String docCategory = document.get(LuceneFields.FIELD_TYPE);
+@@ -486,8 +500,12 @@
+ 		
+ 		@Override
+ 		public void collect(int docId) throws IOException {
+-			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId),
+-					getIndexReader().isDeleted(docId));
++			boolean isDeleted = false;
++			Bits liveDocs = MultiFields.getLiveDocs(indexReader);
++			if (liveDocs != null && !liveDocs.get(docId)) {
++				isDeleted = true;
++			}
++			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId), isDeleted);
+ 			final Document document = getIndexReader().document(docId);
+ 			final String docIdentifier = document.get(LuceneFields.FIELD_IDENTIFIER);
+ 			final String docCategory = document.get(LuceneFields.FIELD_TYPE);
+@@ -506,8 +524,12 @@
+ 		}
+ 		@Override
+ 		public void collect(int docId) throws IOException {
+-			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId),
+-					getIndexReader().isDeleted(docId));
++			boolean isDeleted = false;
++			Bits liveDocs = MultiFields.getLiveDocs(indexReader);
++			if (liveDocs != null && !liveDocs.get(docId)) {
++				isDeleted = true;
++			}
++			Logger.traceIndexing("  Adding doc#{} (deleted={}) to search results", (getDocBase() + docId), isDeleted);
+ 			final Document document = getIndexReader().document(docId);
+ 			final String identifier = document.get(LuceneFields.FIELD_IDENTIFIER);
+ 			final String resourcePath = document.get(LuceneFields.FIELD_RESOURCE_PATH);
diff --git a/eclipse-jbosstools-openshift-bundledjarnames.patch b/eclipse-jbosstools-openshift-bundledjarnames.patch
index 5b528b3..6b9975c 100644
--- a/eclipse-jbosstools-openshift-bundledjarnames.patch
+++ b/eclipse-jbosstools-openshift-bundledjarnames.patch
@@ -1,17 +1,21 @@
---- jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/META-INF/MANIFEST.MF.orig	2013-06-08 21:45:48.939204621 +0100
-+++ jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/META-INF/MANIFEST.MF	2013-06-08 22:31:20.286062583 +0100
-@@ -7,10 +7,10 @@
+--- jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/META-INF/MANIFEST.MF.orig	2014-07-15 20:46:50.397829701 +0100
++++ jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/META-INF/MANIFEST.MF	2014-07-15 20:50:37.318529797 +0100
+@@ -7,12 +7,12 @@
  Bundle-Localization: plugin
  Bundle-RequiredExecutionEnvironment: JavaSE-1.6
  Bundle-ClassPath: .,
-- lib/openshift-java-client-2.5.0.Final.jar,
-- lib/jboss-dmr-1.0.0.Final.jar,
+- lib/openshift-java-client-2.6.0-SNAPSHOT.jar,
 - lib/log4j-1.2.17.jar,
 - lib/slf4j-api-1.6.1.jar,
+- lib/slf4j-log4j12-1.6.1.jar,
+- lib/jboss-dmr-1.2.0.Final.jar,
+- lib/commons-compress-1.8.1.jar
 + lib/openshift-java-client.jar,
-+ lib/jboss-dmr.jar,
 + lib/log4j.jar,
 + lib/slf4j-api.jar,
-  lib/org.slf4j.log4j12
- Export-Package: com.openshift.client,
-  com.openshift.client.cartridge,
++ lib/slf4j-log4j12.jar,
++ lib/jboss-dmr.jar,
++ lib/commons-compress.jar
+ Require-Bundle: com.jcraft.jsch;bundle-version="0.1.44",
+  org.eclipse.core.runtime;bundle-version="3.8.0"
+ Bundle-ActivationPolicy: lazy
diff --git a/eclipse-jbosstools.spec b/eclipse-jbosstools.spec
index c1d3e6d..8bbfad7 100644
--- a/eclipse-jbosstools.spec
+++ b/eclipse-jbosstools.spec
@@ -1,15 +1,15 @@
 %global eclipse_dropins %{_datadir}/eclipse/dropins
 %global build_base      jbosstools-build-sites/aggregate/local-site/.m2/org/jboss/tools/
-%global rls_tag         Final
+%global rls_tag         Beta2
 
 Name:           eclipse-jbosstools
-Version:        4.1.1
-Release:        4%{?dist}
+Version:        4.2.0
+Release:        0.1.%{rls_tag}%{?dist}
 Summary:        Eclipse plugins that support JBoss and related technology
 
 # For mult. license info, see https://community.jboss.org/thread/158037
 License:        EPL and LGPLv2+ and ASL 2.0
-URL:            http://www.jboss.org/tools.html
+URL:            http://tools.jboss.org
 
 # Steps to create this are found in create-tarball.sh
 Source0:        %{name}-%{version}.%{rls_tag}.tar.xz
@@ -46,6 +46,10 @@ Patch24:        %{name}-openshift-bundledjarnames.patch
 # Use unversioned deps in org.jboss.tools.ws.wise.ui
 Patch25:        %{name}-ws.wise.ui-deps.patch
 
+# Patch incompatibilities between lucene3 and lucene4
+Patch26:        %{name}-lucene-api-migration.patch
+Patch27:        %{name}-lucene-api-migration2.patch
+
 BuildArch:      noarch
 
 BuildRequires:  ant >= 1.8.4
@@ -64,14 +68,9 @@ BuildRequires:  eclipse-pde >= 4.3.0
 BuildRequires:  eclipse-platform >= 4.3.0
 BuildRequires:  eclipse-rse >= 3.4
 BuildRequires:  eclipse-swt >= 4.3.0
-BuildRequires:  eclipse-wtp-common >= 3.5.0
-BuildRequires:  eclipse-wtp-jeetools >= 3.5.0
-BuildRequires:  eclipse-wtp-jpa >= 3.5.0
-BuildRequires:  eclipse-wtp-jsf >= 3.5.0
-BuildRequires:  eclipse-wtp-jst-web >= 3.5.0
-BuildRequires:  eclipse-wtp-servertools >= 3.5.0
-BuildRequires:  eclipse-wtp-webservices >= 3.5.0-4
-BuildRequires:  eclipse-wtp-sourceediting >= 3.5.0
+BuildRequires:  eclipse-webtools-dali >= 3.6.0
+BuildRequires:  eclipse-webtools-jsf >= 3.6.0
+BuildRequires:  git
 BuildRequires:  gnu-getopt >= 1.0.13
 BuildRequires:  icu4j-eclipse >= 4.4.2.2
 BuildRequires:  jacoco-maven-plugin
@@ -102,7 +101,9 @@ BuildRequires:  xpp3-minimal
 BuildRequires:  mvn(org.jboss.jdf:stacks-client)
 BuildRequires:  mvn(org.jboss.wise:wise-core)
 BuildRequires:  mvn(org.jboss.wise:wise-core-cxf)
-BuildRequires:  mvn(org.jboss.ws:jbossws-parent)
+BuildRequires:  mvn(org.jboss.ws:jbossws-parent:pom:)
+BuildRequires:  swt-chart
+BuildRequires:  log4j12
 
 Requires:       jpackage-utils
 
@@ -114,7 +115,6 @@ Requires:       %{name}-freemarker = %{version}-%{release}
 Requires:       %{name}-jmx = %{version}-%{release}
 Requires:       %{name}-jst = %{version}-%{release}
 Requires:       %{name}-openshift = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
 Requires:       %{name}-runtime = %{version}-%{release}
 Requires:       %{name}-usage = %{version}-%{release}
 Requires:       %{name}-ws = %{version}-%{release}
@@ -124,41 +124,16 @@ JBoss Tools is an umbrella project for a set of Eclipse plugins that supports
 JBoss and related technology; there is support for Hibernate, JBoss AS, Drools, 
 jBPM, JSF, (X)HTML, Seam, Maven, JBoss ESB, JBoss Portal and more...
 
-%package        parent
-Summary:        JBoss Tools Parent
-Requires:       jpackage-utils
-
-%description parent
-Parent and target-platform POM files for %{name} package.
-
 %package        common
 Summary:        JBoss Tools common Eclipse tools
 
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       eclipse-gef
-Requires:       eclipse-jdt
-Requires:       eclipse-platform
-Requires:       eclipse-pde
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       eclipse-wtp-jeetools
-Requires:       eclipse-wtp-jpa
-Requires:       eclipse-wtp-sourceediting
-Requires:       jakarta-commons-httpclient
-Requires:       jpackage-utils
-Requires:       xerces-j2
-
 %description common
 Common functionality on which other plugins and features from
 %{name} depend.
 
 %package        jmx
 Summary:        Eclipse tools for interacting with JMX connections
-
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       jpackage-utils
+Obsoletes:      %{name}-server
 
 %description jmx
 JBoss JMX Tools allows you to setup multiple JMX connections, and provides a
@@ -167,22 +142,8 @@ Eclipse.
 
 %package        archives
 Summary:        JBoss Archives Tools
-
-Requires:       %{name}-as = %{version}-%{release}
-Requires:       %{name}-jmx = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       ant
-Requires:       eclipse-emf-core
-Requires:       eclipse-jdt
-Requires:       eclipse-pde
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       eclipse-wtp-servertools
-Requires:       jpackage-utils
-Requires:       truezip-driver-file
-Requires:       truezip-file
+Obsoletes:      %{name}-parent
+Obsoletes:      %{name}-server
 
 %description archives
 Project Archives provides a way to define archives based on include/exclude
@@ -191,11 +152,8 @@ deployment for any type of Eclipse project.
 
 %package        usage
 Summary:        JBoss Tools Usage Reporting
-
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       jpackage-utils
+Obsoletes:      %{name}-base
+Obsoletes:      %{name}-parent
 
 %description usage
 JBoss Tools Usage reporting provides an anonymous opt-in call-back mechanism
@@ -206,28 +164,11 @@ and other information that is available.
 %package        as
 Summary:        JBossAS Tools
 
-Requires:       %{name}-archives = %{version}-%{release}
-Requires:       %{name}-common = %{version}-%{release}
-Requires:       %{name}-jmx = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       ant
-Requires:       dom4j
-Requires:       eclipse-emf-core
-Requires:       eclipse-jdt
-Requires:       eclipse-pde
-Requires:       eclipse-platform
-Requires:       eclipse-rse
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       eclipse-wtp-jeetools
-Requires:       eclipse-wtp-servertools
-Requires:       gnu-getopt
-Requires:       icu4j-eclipse
-Requires:       jaxen
 Requires:       wildfly
-Requires:       jboss-dmr
-Requires:       jpackage-utils
+Requires:       jboss-sasl
+Requires:       jboss-threads
+Requires:       jboss-remoting
+Requires:       jboss-marshalling
 
 %description as
 Provides WTP server adapters for JBoss installations. These adapters are 
@@ -237,23 +178,6 @@ exploded deployments, JMX integration, and other extensions are included.
 %package        jst
 Summary:        JBoss Tools Java Standard Tools
 
-Requires:       %{name}-common = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       ant
-Requires:       eclipse-dtp
-Requires:       eclipse-gef
-Requires:       eclipse-jdt
-Requires:       eclipse-mylyn
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-jeetools
-Requires:       eclipse-wtp-jst-web
-Requires:       eclipse-wtp-sourceediting
-Requires:       jpackage-utils
-Requires:       velocity
-Requires:       xerces-j2
-
 %description jst
 JBoss Tools Java Standard Tools provides common tools for use in JBoss Tools
 other plugins, such as Knowledge Base builder and validators for use in JSF/Web
@@ -262,27 +186,15 @@ projects.
 %package        ws
 Summary:        JBoss WebServices Tools and JBoss JAX-RS Tools
 
-Requires:       %{name}-as = %{version}-%{release}
-Requires:       %{name}-common = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       apache-commons-codec
-Requires:       axis
-Requires:       eclipse-emf-core
-Requires:       eclipse-emf-xsd
-Requires:       eclipse-jdt
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       eclipse-wtp-jeetools
-Requires:       eclipse-wtp-jsf
-Requires:       eclipse-wtp-webservices >= 3.5.0-4
-Requires:       icu4j-eclipse
-Requires:       jdom
-Requires:       jpackage-utils
 Requires:       resteasy
-Requires:       wsdl4j
-
+Requires:       avalon-logkit
+Requires:       avalon-framework
+Requires:       cxf
+Requires:       cxf-xjc-utils
+Requires:       dtdparser
+Requires:       opencsv
+Requires:       wise-core
+Requires:       wise-core-cxf
 
 %description ws
 JBoss WebServices Tools provides wizards for working with webservices
@@ -294,22 +206,7 @@ as checking that parameters referenced by name actually also are declared.
 
 %package        cdi
 Summary:        JBoss CDI Tools, Apache Deltasipke Tools, Seam 3 Tools
-
-Requires:       %{name}-common = %{version}-%{release}
-Requires:       %{name}-jst = %{version}-%{release}
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       ant
-Requires:       eclipse-gef
-Requires:       eclipse-jdt
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       eclipse-wtp-jeetools
-Requires:       eclipse-wtp-jsf
-Requires:       eclipse-wtp-sourceediting
-Requires:       jpackage-utils
-Requires:       xerces-j2
+Obsoletes:      %{name}-javaee
 
 %description cdi
 Context and Dependency Injection Tools provides support for JSR-299 also know
@@ -326,13 +223,7 @@ these CDI components and editing the seam config xml.
 %package        freemarker
 Summary:        FreeMarker IDE
 
-Requires:       %{name}-parent = %{version}-%{release}
-Requires:       %{name}-usage = %{version}-%{release}
-Requires:       eclipse-jdt
-Requires:       eclipse-platform
-Requires:       eclipse-swt
 Requires:       freemarker
-Requires:       jpackage-utils
 
 %description freemarker
 FreeMarkerIDE provides editor for FreeMarker templates
@@ -340,41 +231,24 @@ FreeMarkerIDE provides editor for FreeMarker templates
 %package        runtime
 Summary:        JBoss Runtime Detection
 
-Requires:       %{name}-as = %{version}-%{release}
-Requires:       eclipse-dtp
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
-Requires:       jpackage-utils
-
 %description runtime
 JBoss Runtime Detection
 
 %package openshift
 Summary:        JBoss Openshift Tools for Eclipse
 
-Requires:       %{name}-as = %{version}-%{release}
-Requires:       eclipse-egit
-Requires:       eclipse-m2e-core
-Requires:       eclipse-jdt
-Requires:       eclipse-m2e-core
-Requires:       eclipse-platform
-Requires:       eclipse-swt
-Requires:       eclipse-wtp-common
+Requires:       jboss-dmr
+Requires:       slf4j-log4j12
 Requires:       openshift-java-client
 
 %description openshift
 OpenShift Tools provides wizards and views for
 creating and maintaining OpenShift applications.
 
-%package        base
-Summary:        JBoss Base Tools
-
-%description base
-POM for %{summary}.
-
 %package        foundation
 Summary:        JBoss Tools Foundation
+Obsoletes:      %{name}-base
+Obsoletes:      %{name}-parent
 
 %description foundation
 %{summary} provides utility classes and infrastructure for all other
@@ -387,20 +261,6 @@ Summary:        JBoss Stacks Tools
 JBoss Stacks consumer which helps provide models for use by other
 plugins.
 
-%package        javaee
-Summary:        JBoss JavaEE Tools
-
-%description javaee
-JavaEE Tools provides Eclipse plugins for features related to development
-on JavaEE. This includes CDI, Seam, JSF and Struts.
-
-%package        server
-Summary:        JBoss Server Tools
-
-%description server
-Server Tools provide the JBoss Server Adapter for Eclipse WTP, project
-archive tooling and JMX views.
-
 %prep
 %setup -q -n %{name}-%{version}.%{rls_tag}
 
@@ -429,14 +289,18 @@ ln -s %{_javadir}/wildfly/wildfly-controller-client.jar
 ln -s %{_javadir}/wildfly/wildfly-protocol.jar
 ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
 ln -s %{_javadir}/jboss-logging/jboss-logging.jar
-ln -s %{_javadir}/jboss-marshalling.jar
-ln -s %{_javadir}/jboss-marshalling-river.jar
+ln -s %{_javadir}/jboss-marshalling/jboss-marshalling.jar
+ln -s %{_javadir}/jboss-marshalling/jboss-marshalling-river.jar
 ln -s %{_javadir}/jboss-remoting/jboss-remoting.jar
-ln -s %{_javadir}/jboss-sasl.jar
+ln -s %{_javadir}/jboss-sasl/jboss-sasl.jar
 ln -s %{_javadir}/jboss-threads/jboss-threads.jar
 ln -s %{_javadir}/xnio/xnio-api.jar
 ln -s %{_javadir}/xnio/xnio-nio.jar
 popd
+pushd jbosstools-server/jmx/plugins/org.jboss.tools.jmx.jvmmonitor.ui/lib/
+ln -s %{_javadir}/swt-chart.jar
+sed -i -e "s/org.swtchart_0.7.0.v20100930.jar/swt-chart.jar/" ../META-INF/MANIFEST.MF
+popd
 pushd jbosstools-webservices/plugins/org.jboss.tools.ws.ui/lib/
 ln -s %{_javadir}/axis/axis.jar
 ln -s %{_javadir}/axis/jaxrpc.jar
@@ -448,7 +312,7 @@ popd
 pushd jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/
 mkdir lib && pushd lib/
 ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
-ln -s %{_javadir}/log4j.jar
+ln -s /usr/lib/java/log4j12-1.2.17.jar log4j.jar
 ln -s %{_javadir}/openshift-java-client/openshift-java-client.jar
 ln -s %{_javadir}/slf4j/api.jar slf4j-api.jar
 ln -s %{_javadir}/slf4j/log4j12.jar slf4j-log4j12.jar
@@ -462,16 +326,6 @@ popd
 %pom_remove_plugin org.jacoco:jacoco-maven-plugin jbosstools-build/parent
 
 # Disable modules that fail to build
-## build-site/aggregate/local-site
-%pom_disable_module ../../../jbosstools-gwt jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-forge jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-hibernate jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-birt jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-xulrunner jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-portlet jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-central jbosstools-build-sites/aggregate/local-site
-%pom_disable_module ../../../jbosstools-vpe jbosstools-build-sites/aggregate/local-site
-
 ## tests
 disable_tests_module="base base/common base/runtime base/usage base/stacks base/foundation \
                server/archives server/jmx server/as server/wtp \
@@ -496,6 +350,8 @@ for pom in ${disable_site_module}; do %pom_disable_module site jbosstools-${pom}
 %pom_disable_module org.jboss.tools.wtp.runtimes.tomcat.tests.feature jbosstools-server/wtp/features
 ## jst
 %pom_disable_module org.jboss.tools.jst.test.feature jbosstools-jst/features
+%pom_disable_module org.jboss.tools.jst.jsdt jbosstools-jst/plugins
+%pom_disable_module org.jboss.tools.jst.jsdt.feature jbosstools-jst/features
 ## webservices
 %pom_disable_module org.jboss.tools.ws.test.feature jbosstools-webservices/features
 ## javaee
@@ -510,19 +366,21 @@ for pom in ${disable_site_module}; do %pom_disable_module site jbosstools-${pom}
 %pom_disable_module org.jboss.tools.openshift.egit.integration.test.feature jbosstools-openshift/features
 %pom_disable_module org.jboss.tools.openshift.express.test.feature jbosstools-openshift/features
 
-%patch10
-%patch12
-%patch14
-%patch15
-%patch16
-%patch17
-%patch18
-%patch19
-%patch21
-%patch22
-%patch23
-%patch24
-%patch25
+%patch10 -p0 -b .orig
+%patch12 -p0 -b .orig
+%patch14 -p0 -b .orig
+%patch15 -p0 -b .orig
+%patch16 -p0 -b .orig
+%patch17 -p0 -b .orig
+%patch18 -p0 -b .orig
+%patch19 -p0 -b .orig
+%patch21 -p0 -b .orig
+%patch22 -p0 -b .orig
+%patch23 -p0 -b .orig
+%patch24 -p0 -b .orig
+%patch25 -p0 -b .orig
+%patch26 -p0 -b .orig
+%patch27 -p0 -b .orig
 
 # Add Fedora version to OSGi version qualifier
 %pom_xpath_remove pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration/pom:format jbosstools-build/parent
@@ -531,118 +389,209 @@ for pom in ${disable_site_module}; do %pom_disable_module site jbosstools-${pom}
 # Set tycho version to 0.18.0-SNAPSHOT in jbosstools-build/parent/pom.xml
 sed -i -e 's|<tychoVersion>0.17.0</tychoVersion>|<tychoVersion>0.18.0</tychoVersion>|g' jbosstools-build/parent/pom.xml
 
-# Version hasn't been updated to 4.1.1.Final :-/
-%pom_xpath_replace pom:project/pom:version "<version>%{version}.%{rls_tag}</version>" jbosstools-build/parent
-%pom_xpath_replace pom:project/pom:version "<version>%{version}.%{rls_tag}</version>" jbosstools-build-sites/aggregate/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-base/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-build-sites/aggregate/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-build-sites/aggregate/local-site/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-server/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-javaee/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-javaee/jsf/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-javaee/cdi/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-jst/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-freemarker/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-webservices/pom.xml
-%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag} jbosstools-openshift/pom.xml
-
-%if 0%{?fedora} <= 20
+# Version hasn't been updated to 4.2.0.Beta2-SNAPSHOT for all yet
+%pom_set_parent org.jboss.tools:parent:%{version}.%{rls_tag}-SNAPSHOT jbosstools-freemarker/pom.xml
+
 sed -i -e "s/xpp3.jar/xpp3_min.jar/" jbosstools-webservices/plugins/org.jboss.tools.ws.wise.ui/build.properties
-%endif
+
+# Disable maven-download-plugin
+%pom_remove_plugin com.googlecode.maven-download-plugin:maven-download-plugin jbosstools-base/foundation/plugins/org.jboss.tools.foundation.core
+
+# TODO: Needs to be a git repo for tycho
+git init
+git config --global user.email "eclipse-jbosstools at fedoraproject.org"
+git config --global user.name "Eclipse JBoss Tools Package"
+git add .
+git commit -m "Commit all the things for tycho"
 
 %build
-# Build everything from within jbosstools-build-sites
-pushd jbosstools-build-sites/aggregate/local-site
-  export MAVEN_OPTS="-XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}"
-  mvn-rpmbuild -f ../../../jbosstools-build/parent/pom.xml install \
-               -Dlocal.site=file:.m2/p2/repo
-  mvn-rpmbuild install -Dno-target-platform -X -Dmaven.local.debug=true \
-               -Dlocal.site=file:.m2/p2/repo
-popd
+export MAVEN_OPTS="-XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}"
+
+xmvn -o -f jbosstools-build/parent/pom.xml install -Dlocal.site=file:.m2/p2/repo
+
+xmvn -o -f jbosstools-base install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-server install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-openshift install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-webservices install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-freemarker install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-jst install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
+xmvn -o -f jbosstools-javaee install -Dno-target-platform -X -Dmaven.local.debug=true \
+             -Dlocal.site=file:.m2/p2/repo
 
 
 %install
-install -d -m 755 %{buildroot}%{_mavenpomdir}
+# jbosstools-base
+pushd jbosstools-base
+  for tool in common foundation runtime stacks usage; do
+    install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/features
+    install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/plugins
+
+    ## features
+    pushd ${tool}/features
+      for feat in `echo *.feature`; do
+        if [[ -d ${feat}/target ]]; then
+          unzip ${feat}/target/*-SNAPSHOT.jar -d \
+            %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/features/${feat}
+        fi
+      done;
+    popd
 
-pushd %{build_base}
+    ##plugins
+    install -p ${tool}/plugins/*/target/*-SNAPSHOT.jar \
+      %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/plugins
+  done
+popd
 
-# POM-only artifacts
-for pom in base javaee.all server.all; do
-  pushd ${pom}/*-SNAPSHOT/
-    install -pm 644 ${pom}-*.pom \
-      %{buildroot}%{_mavenpomdir}/JPP-%{name}-${pom}.pom
-    %add_maven_depmap JPP-%{name}-${pom}.pom -f ${pom}
-  popd
-done
-pushd parent/%{version}.%{rls_tag}/
-  install -pm 644 parent-*.pom \
-    %{buildroot}%{_mavenpomdir}/JPP-%{name}-parent.pom
-  %add_maven_depmap JPP-%{name}-parent.pom -f parent
+# jbosstools-javaee
+pushd jbosstools-javaee/cdi
+  install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/features
+  install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/plugins
+
+  ## features
+  unzip features/org.jboss.tools.cdi.deltaspike.feature/target/*-SNAPSHOT.jar \
+   -d %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/features/org.jboss.tools.cdi.deltaspike.feature
+
+  unzip features/org.jboss.tools.cdi.feature/target/*-SNAPSHOT.jar \
+   -d %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/features/org.jboss.tools.cdi.feature
+
+  unzip features/org.jboss.tools.cdi.seam.feature/target/*-SNAPSHOT.jar \
+   -d %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/features/org.jboss.tools.cdi.seam.feature
+
+  ##plugins
+  install -p plugins/*/target/*-SNAPSHOT.jar %{buildroot}%{eclipse_dropins}/%{name}-cdi/eclipse/plugins
+popd
+
+
+# jbosstools-jst
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-jst/eclipse/features
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-jst/eclipse/plugins
+
+## features
+pushd jbosstools-jst/features
+  for feat in `echo *.feature`; do
+    if [[ -d ${feat}/target ]]; then
+      unzip ${feat}/target/*-SNAPSHOT.jar -d %{buildroot}%{eclipse_dropins}/%{name}-jst/eclipse/features/${feat}
+    fi
+  done;
 popd
 
-# Normal feature/plugin projects
-for tool in common usage archives jmx as jst cdi ws freemarker runtime stacks foundation openshift; do
+##plugins
+install -p jbosstools-jst/plugins/*/target/*-SNAPSHOT.jar %{buildroot}%{eclipse_dropins}/%{name}-jst/eclipse/plugins
+
+# jbosstools-server
+for tool in archives as jmx; do
   install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/features
   install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/plugins
 
-  ## POM for each tool
-  pushd ${tool}/*-SNAPSHOT
-    install -pm 644 ${tool}-*.pom \
-      %{buildroot}%{_mavenpomdir}/JPP-%{name}-${tool}.pom
-    %add_maven_depmap JPP-%{name}-${tool}.pom -f ${tool}
-    popd
+  pushd jbosstools-server/${tool}
+    ## features
+    for feat in `ls -d features/*.feature | grep -v test`; do
+      unzip ${feat}/target/*-SNAPSHOT.jar -d %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/${feat}
+    done
+  popd
+done
 
-  ## features
-  pushd ${tool}/features
-    for feat in `echo *.feature`; do
-      pushd ${feat}/*-SNAPSHOT
-        unzip ${feat}-*-SNAPSHOT.jar -d \
-         %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/features/${feat}
-      popd;
-    done;
+## plugins
+install -p jbosstools-server/jmx/plugins/*/target/*-SNAPSHOT.jar %{buildroot}%{eclipse_dropins}/%{name}-jmx/eclipse/plugins
+
+pushd jbosstools-server/archives/plugins/
+  for plug in $(ls -d */ | grep -v org.jboss.ide.eclipse.archives.core); do
+    install -p ${plug}/target/*-SNAPSHOT.jar \
+      %{buildroot}%{eclipse_dropins}/%{name}-archives/eclipse/plugins
+  done
+
+  # org.jboss.ide.eclipse.archives.core
+  pushd org.jboss.ide.eclipse.archives.core/target
+    unjar=$(ls *-SNAPSHOT.jar | sed -e 's/.jar//')
+    unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-archives/eclipse/plugins/${unjar} ${unjar}.jar
+  popd
+  pushd %{buildroot}%{eclipse_dropins}/%{name}-archives/eclipse/plugins/${unjar}/lib
+    rm -f *.jar
+    ln -s %{_javadir}/truezip/truezip-driver-file.jar
+    ln -s %{_javadir}/truezip/truezip-driver-zip.jar
+    ln -s %{_javadir}/truezip/truezip-file.jar
+    ln -s %{_javadir}/truezip/truezip-kernel.jar
   popd
+popd
 
-  ##plugins
-  pushd ${tool}/plugins
-    for plug in `find -name *.jar | grep -v -e "sources.jar" \
-                    -e "org.jboss.tools.ws.ui-" \
-                    -e "org.jboss.ide.eclipse.as.dmr-" \
-                    -e "org.jboss.ide.eclipse.as.core-" \
-                    -e "org.jboss.ide.eclipse.freemarker-" \
-                    -e "org.jboss.ide.eclipse.archives.core-" \
-                    -e "org.jboss.tools.openshift.express.client-" \
-                    -e "org.jboss.ide.eclipse.as.management.as71-" `; \
-    do
-      install -p ${plug} %{buildroot}%{eclipse_dropins}/%{name}-${tool}/eclipse/plugins
-    done;
-  popd;
-
-done;
-
-  # org.jboss.tools.ws.ui
-  pushd ws/plugins/org.jboss.tools.ws.ui/
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins/${unjar} ${unjar}.jar
+pushd jbosstools-server/as/plugins
+  for plug in $(ls -d */); do
+    install -p ${plug}/target/*-SNAPSHOT.jar %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins
+  done
+  pushd %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins
+
+    unjar=$(ls org.jboss.ide.eclipse.as.dmr-*.jar | sed -e 's/.jar//')
+    unzip -q -d ${unjar} ${unjar}.jar
+    rm -f ${unjar}.jar
+    rm -f ${unjar}/*.jar
+    ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar ${unjar}/jboss-dmr.jar
+
+    unjar=$(ls org.jboss.ide.eclipse.as.core-*.jar | sed -e 's/.jar//')
+    unzip -q -d ${unjar} ${unjar}.jar
+    rm -f ${unjar}.jar
+    pushd ${unjar}
+      rm -f *.jar
+      ln -s %{_javadir}/dom4j.jar
+      ln -s %{_javadir}/jaxen.jar
+      ln -s %{_javadir}/gnu-getopt.jar
+    popd
+
+    unjar=$(ls org.jboss.ide.eclipse.as.management.as71-*.jar | sed -e 's/.jar//')
+    unzip -q -d ${unjar} ${unjar}.jar
+    rm -f ${unjar}.jar
+    pushd ${unjar}
+      rm -f *.jar
+      ln -s %{_javadir}/wildfly/wildfly-controller-client.jar
+      ln -s %{_javadir}/wildfly/wildfly-protocol.jar
+      ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
+      ln -s %{_javadir}/jboss-logging/jboss-logging.jar
+      ln -s %{_javadir}/jboss-marshalling/jboss-marshalling.jar
+      ln -s %{_javadir}/jboss-marshalling/jboss-marshalling-river.jar
+      ln -s %{_javadir}/jboss-remoting/jboss-remoting.jar
+      ln -s %{_javadir}/jboss-sasl/jboss-sasl.jar
+      ln -s %{_javadir}/jboss-threads/jboss-threads.jar
+      ln -s %{_javadir}/xnio/xnio-api.jar
+      ln -s %{_javadir}/xnio/xnio-nio.jar
     popd
   popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins/${unjar}/lib/
+popd
+
+# jbosstools-webservices
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/features
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins
+
+## features
+pushd jbosstools-webservices/features
+  for feat in `echo *.feature`; do
+    if [[ -d ${feat}/target ]]; then
+      unzip ${feat}/target/*-SNAPSHOT.jar -d %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/features/${feat}
+    fi
+  done;
+popd
+
+##plugins
+install -p jbosstools-webservices/plugins/*/target/*-SNAPSHOT.jar %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins
+pushd %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins
+  unjar=$(ls org.jboss.tools.ws.ui-*.jar | sed -e 's/.jar//')
+  unzip -q -d ${unjar} ${unjar}.jar
+  rm -f ${unjar}.jar
+  pushd ${unjar}/lib/
     rm -f *.jar
     ln -s %{_javadir}/axis/axis.jar
     ln -s %{_javadir}/axis/jaxrpc.jar
     ln -s %{_javadir}/resteasy/jaxrs-api.jar
   popd
 
-  # org.jboss.tools.ws.wise.ui
-  pushd ws/org.jboss.tools.ws.wise.ui/
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-ws/eclipse/plugins/${unjar}/lib/
+  unjar=$(ls org.jboss.tools.ws.wise.ui-*.jar | sed -e 's/.jar//')
+  unzip -q -d ${unjar} ${unjar}.jar
+  rm -f ${unjar}.jar
+  pushd ${unjar}/lib/
     rm -f *.jar
     ln -s %{_javadir}/ant.jar
     ln -s %{_javadir}/ant-launcher.jar
@@ -659,20 +608,20 @@ done;
     ln -s %{_javadir}/commons-io.jar
     ln -s %{_javadir}/commons-lang.jar
     ln -s %{_javadir}/commons-logging.jar
-    ln -s %{_javadir}/cxf/api.jar cxf-api.jar
-    ln -s %{_javadir}/cxf/rt-bindings-coloc.jar cxf-rt-bindings-coloc.jar
-    ln -s %{_javadir}/cxf/rt-bindings-object.jar cxf-rt-bindings-object.jar
-    ln -s %{_javadir}/cxf/rt-bindings-soap.jar cxf-rt-bindings-soap.jar
-    ln -s %{_javadir}/cxf/rt-bindings-xml.jar cxf-rt-bindings-xml.jar
-    ln -s %{_javadir}/cxf/rt-core.jar cxf-rt-core.jar
-    ln -s %{_javadir}/cxf-rt-databinding-jaxb.jar cxf-rt-databinding-jaxb.jar
-    ln -s %{_javadir}/cxf/rt-frontend-jaxws.jar cxf-rt-frontend-jaxws.jar
-    ln -s %{_javadir}/cxf/rt-frontend-simple.jar cxf-rt-frontend-simple.jar
-    ln -s %{_javadir}/cxf/rt-transports-http.jar cxf-rt-transports-http.jar
-    ln -s %{_javadir}/cxf/rt-transports-local.jar cxf-rt-transports-local.jar
-    ln -s %{_javadir}/cxf/rt-ws-addr.jar cxf-rt-ws-addr.jar
-    ln -s %{_javadir}/cxf/rt-ws-mex.jar cxf-rt-ws-mex.jar
-    ln -s %{_javadir}/cxf/rt-ws-policy.jar cxf-rt-ws-policy.jar
+    ln -s %{_javadir}/cxf/cxf-api.jar
+    ln -s %{_javadir}/cxf/cxf-rt-bindings-coloc.jar
+    ln -s %{_javadir}/cxf/cxf-rt-bindings-object.jar
+    ln -s %{_javadir}/cxf/cxf-rt-bindings-soap.jar
+    ln -s %{_javadir}/cxf/cxf-rt-bindings-xml.jar
+    ln -s %{_javadir}/cxf/cxf-rt-core.jar
+    ln -s %{_javadir}/cxf/cxf-rt-databinding-jaxb.jar
+    ln -s %{_javadir}/cxf/cxf-rt-frontend-jaxws.jar
+    ln -s %{_javadir}/cxf/cxf-rt-frontend-simple.jar
+    ln -s %{_javadir}/cxf/cxf-rt-transports-http.jar
+    ln -s %{_javadir}/cxf/cxf-rt-transports-local.jar
+    ln -s %{_javadir}/cxf/cxf-rt-ws-addr.jar
+    ln -s %{_javadir}/cxf/cxf-rt-ws-mex.jar
+    ln -s %{_javadir}/cxf/cxf-rt-ws-policy.jar
     ln -s %{_javadir}/cxf/cxf-services-ws-discovery-api.jar
     ln -s %{_javadir}/cxf/cxf-tools-common.jar
     ln -s %{_javadir}/cxf/cxf-tools-validator.jar
@@ -693,8 +642,8 @@ done;
     ln -s %{_javadir}/glassfish-jaxb/jaxb-xjc.jar
     ln -s %{_javadir}/jaxen.jar
     ln -s %{_javadir}/jboss-jaxb-2.2-api.jar jboss-jaxb-api_2.2_spec.jar
-    ln -s %{_javadir}/jboss-jaxrpc-1.1-api.jar jboss-jaxrpc-api_1.1_spec.jar
-    ln -s %{_javadir}/jboss-jaxws-2.2-api.jar jboss-jaxws-api_2.2_spec.jar
+    ln -s %{_javadir}/jboss-jaxrpc-1.1-api/jboss-jaxrpc-api_1.1_spec.jar
+    ln -s %{_javadir}/jboss-jaxws-2.2-api/jboss-jaxws-api_2.2_spec.jar
     ln -s %{_javadir}/jboss-logging/jboss-logging.jar
     ln -s %{_javadir}/jboss-saaj-1.3-api.jar jboss-saaj-api_1.3_spec.jar
     ln -s %{_javadir}/jboss-servlet-3.0-api/jboss-servlet-api_3.0_spec.jar
@@ -724,208 +673,123 @@ done;
     ln -s %{_javadir}/velocity.jar
     ln -s %{_javadir}/wise/wise-core-cxf.jar
     ln -s %{_javadir}/wise/wise-core.jar
-    ln -s %{_javadir}/usr/share/java/xml-commons-apis.jar xml-apis.jar
+    ln -s %{_javadir}/xml-commons-apis.jar xml-apis.jar
     ln -s %{_javadir}/ws-xmlschema/xmlschema-core.jar
     ln -s %{_javadir}/xpp3-minimal.jar xpp3.jar
     ln -s %{_javadir}/xsom.jar
     ln -s %{_javadir}/xstream.jar
   popd
+popd
 
-  # org.jboss.ide.eclipse.as.dmr
-  pushd as/plugins/org.jboss.ide.eclipse.as.dmr/
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar}/
-    rm -f *.jar
-    ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
-  popd
+# jbosstools-freemarker
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/features
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/plugins
 
-  # org.jboss.ide.eclipse.as.core
-  pushd as/plugins/org.jboss.ide.eclipse.as.core
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar}/
-    rm -f *.jar
-    ln -s %{_javadir}/dom4j.jar
-    ln -s %{_javadir}/jaxen.jar
-    ln -s %{_javadir}/gnu-getopt.jar
-  popd
-
-  # org.jboss.ide.eclipse.as.management.as71
-  pushd as/plugins/org.jboss.ide.eclipse.as.management.as71
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-as/eclipse/plugins/${unjar}/
-    rm -f *.jar
-    ln -s %{_javadir}/wildfly/wildfly-controller-client.jar
-    ln -s %{_javadir}/wildfly/wildfly-protocol.jar
-    ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
-    ln -s %{_javadir}/jboss-logging/jboss-logging.jar
-    ln -s %{_javadir}/jboss-marshalling.jar
-    ln -s %{_javadir}/jboss-marshalling-river.jar
-    ln -s %{_javadir}/jboss-remoting/jboss-remoting.jar
-    ln -s %{_javadir}/jboss-sasl.jar
-    ln -s %{_javadir}/jboss-threads/jboss-threads.jar
-    ln -s %{_javadir}/xnio/xnio-api.jar
-    ln -s %{_javadir}/xnio/xnio-nio.jar
-  popd
+## features
+pushd jbosstools-freemarker/features
+  unzip org.jboss.ide.eclipse.freemarker.feature/target/*-SNAPSHOT.jar \
+   -d %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/features/org.jboss.ide.eclipse.freemarker.feature
+popd
 
-  # org.jboss.ide.eclipse.freemarker
-  pushd freemarker/plugins/org.jboss.ide.eclipse.freemarker/
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
+##plugins
+pushd jbosstools-freemarker/plugins/org.jboss.ide.eclipse.freemarker/target
+  unjar=$(ls org.jboss.ide.eclipse.freemarker-*-SNAPSHOT.jar | sed -e 's/.jar//')
+  unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/plugins/${unjar} ${unjar}.jar
+  rm -f ${unjar}.jar
   pushd %{buildroot}%{eclipse_dropins}/%{name}-freemarker/eclipse/plugins/${unjar}/
     rm -f freemarker.jar
     ln -s %{_javadir}/freemarker.jar
   popd
+popd
 
-  # org.jboss.ide.eclipse.archives.core
-  pushd archives/plugins/org.jboss.ide.eclipse.archives.core
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-archives/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
-  pushd %{buildroot}%{eclipse_dropins}/%{name}-archives/eclipse/plugins/${unjar}/lib
-    rm -f *.jar
-    ln -s %{_javadir}/truezip/truezip-driver-file.jar
-    ln -s %{_javadir}/truezip/truezip-driver-zip.jar
-    ln -s %{_javadir}/truezip/truezip-file.jar
-    ln -s %{_javadir}/truezip/truezip-kernel.jar
-  popd
+# jbosstools-openshift
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/features
+install -d -m 755 %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/plugins
+
+## features
+pushd jbosstools-openshift/features
+  for feat in `echo *.feature`; do
+    if [[ -d ${feat}/target ]]; then
+      unzip ${feat}/target/*-SNAPSHOT.jar -d %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/features/${feat}
+    fi
+  done
+popd
 
-  # org.jboss.tools.openshift.express.client
-  pushd openshift/plugins/org.jboss.tools.openshift.express.client
-    bundleversion=`ls | grep SNAPSHOT`
-    pushd ${bundleversion}
-      unjar=`ls *-${bundleversion}.jar | sed -e 's/.jar//'`
-      unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/plugins/${unjar} ${unjar}.jar
-    popd
-  popd
+##plugins
+pushd jbosstools-openshift/plugins/
+  for plug in $(ls -d */target/*-SNAPSHOT.jar |grep -v org.jboss.tools.openshift.express.client); do
+    install -p ${plug} %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/plugins
+  done
+popd
+
+pushd jbosstools-openshift/plugins/org.jboss.tools.openshift.express.client/target/
+  unjar=$(ls org.jboss.tools.openshift.express.client-*-SNAPSHOT.jar | sed -e 's/.jar//')
+  unzip -q -d %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/plugins/${unjar} ${unjar}.jar
+  rm -f ${unjar}.jar
   pushd %{buildroot}%{eclipse_dropins}/%{name}-openshift/eclipse/plugins/${unjar}/lib
     rm -f *.jar
     ln -s %{_javadir}/jboss-dmr/jboss-dmr.jar
-    ln -s %{_javadir}/log4j.jar
+    ln -s /usr/lib/java/log4j12-1.2.17.jar log4j.jar
     ln -s %{_javadir}/openshift-java-client/openshift-java-client.jar
     ln -s %{_javadir}/slf4j/api.jar slf4j-api.jar
     ln -s %{_javadir}/slf4j/log4j12.jar slf4j-log4j12.jar
+    ln -s %{_javadir}/commons-compress.jar
   popd
-
-  # org.jboss.tools.jst.web.kb is in jbosstools-jst/tests, but we need it
-  install -p jst/tests/org.jboss.tools.jst.web.kb/*-SNAPSHOT/*-SNAPSHOT.jar \
-    %{buildroot}%{eclipse_dropins}/%{name}-jst/eclipse/plugins
-
-popd;
+popd
 
 %files
 
-%files parent
-%{_mavenpomdir}/JPP-%{name}-parent.pom
-%{_mavendepmapfragdir}/%{name}-parent
- 
 %files common
 %doc lgpl-2.1.txt
 %doc jbosstools-base/tests/features/org.jboss.tools.test.feature/epl-v10.html
 %{eclipse_dropins}/%{name}-common
-%{_mavenpomdir}/JPP-%{name}-common.pom
-%{_mavendepmapfragdir}/%{name}-common
 
 %files usage
 %doc LICENSE-2.0.txt
 %doc jbosstools-base/tests/features/org.jboss.tools.test.feature/epl-v10.html
 %{eclipse_dropins}/%{name}-usage
-%{_mavenpomdir}/JPP-%{name}-usage.pom
-%{_mavendepmapfragdir}/%{name}-usage
 
 %files archives
 %doc lgpl-2.1.txt
 %{eclipse_dropins}/%{name}-archives
-%{_mavenpomdir}/JPP-%{name}-archives.pom
-%{_mavendepmapfragdir}/%{name}-archives
 
 %files jmx
 %doc jbosstools-base/tests/features/org.jboss.tools.test.feature/epl-v10.html
 %{eclipse_dropins}/%{name}-jmx
-%{_mavenpomdir}/JPP-%{name}-jmx.pom
-%{_mavendepmapfragdir}/%{name}-jmx
 
 %files as
 %{eclipse_dropins}/%{name}-as
-%{_mavenpomdir}/JPP-%{name}-as.pom
-%{_mavendepmapfragdir}/%{name}-as
 
 %files jst
 %{eclipse_dropins}/%{name}-jst
-%{_mavenpomdir}/JPP-%{name}-jst.pom
-%{_mavendepmapfragdir}/%{name}-jst
 
 %files cdi
 %{eclipse_dropins}/%{name}-cdi
-%{_mavenpomdir}/JPP-%{name}-cdi.pom
-%{_mavendepmapfragdir}/%{name}-cdi
 
 %files ws
 %doc lgpl-2.1.txt
 %{eclipse_dropins}/%{name}-ws
-%{_mavenpomdir}/JPP-%{name}-ws.pom
-%{_mavendepmapfragdir}/%{name}-ws
 
 %files freemarker
 %doc lgpl-2.1.txt
 %{eclipse_dropins}/%{name}-freemarker
-%{_mavenpomdir}/JPP-%{name}-freemarker.pom
-%{_mavendepmapfragdir}/%{name}-freemarker
 
 %files runtime
 %{eclipse_dropins}/%{name}-runtime
-%{_mavenpomdir}/JPP-%{name}-runtime.pom
-%{_mavendepmapfragdir}/%{name}-runtime
-
-%files base
-%{_mavenpomdir}/JPP-%{name}-base.pom
-%{_mavendepmapfragdir}/%{name}-base
 
 %files foundation
 %{eclipse_dropins}/%{name}-foundation
-%{_mavenpomdir}/JPP-%{name}-foundation.pom
-%{_mavendepmapfragdir}/%{name}-foundation
 
 %files stacks
 %{eclipse_dropins}/%{name}-stacks
-%{_mavenpomdir}/JPP-%{name}-stacks.pom
-%{_mavendepmapfragdir}/%{name}-stacks
-
-%files javaee
-%{_mavenpomdir}/JPP-%{name}-javaee.all.pom
-%{_mavendepmapfragdir}/%{name}-javaee.all
-
-%files server
-%{_mavenpomdir}/JPP-%{name}-server.all.pom
-%{_mavendepmapfragdir}/%{name}-server.all
 
 %files openshift
 %{eclipse_dropins}/%{name}-openshift
-%{_mavenpomdir}/JPP-%{name}-openshift.pom
-%{_mavendepmapfragdir}/%{name}-openshift
 
 %changelog
+* Wed Jul 09 2014 Gerard Ryan <galileo at fedoraproject.org> - 4.2.0-0.1.Beta2
+- Update to 4.2.0.Beta2 for Eclipse Luna & F21
+
 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.1.1-4
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 
diff --git a/sources b/sources
index a953ac5..87127d7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-cb93fbf9512b0612546d7dfc0578b241  eclipse-jbosstools-4.1.1.Final.tar.xz
+60919a990d51fb20f4d9bfb85f63d846  eclipse-jbosstools-4.2.0.Beta2.tar.xz


More information about the scm-commits mailing list