diff --git a/eclipse-fix-compatibility-class.patch b/eclipse-fix-compatibility-class.patch
new file mode 100644
index 0000000..d2b3359
--- /dev/null
+++ b/eclipse-fix-compatibility-class.patch
@@ -0,0 +1,52 @@
+--- eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility.registry/pom.xml.bak 2012-07-25 17:28:30.000000000 +0200
++++ eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility.registry/pom.xml 2012-07-30 15:48:17.936540760 +0200
+@@ -23,4 +23,49 @@
+ org.eclipse.core.runtime.compatibility.registry
+ 3.5.100-SNAPSHOT
+ eclipse-plugin
++
++
++
++
++ maven-antrun-plugin
++ 1.7
++
++
++ natives
++ process-resources
++
++
++
++
++
++
++ run
++
++
++
++
++
++ bsf
++ bsf
++ 2.4.0
++
++
++ rhino
++ js
++ 1.7R2
++
++
++ org.apache.ant
++ ant-apache-bsf
++ 1.8.3
++
++
++ org.apache.ant
++ ant-nodeps
++ 1.8.1
++
++
++
++
++
+
diff --git a/eclipse-fix-debug-ui.patch b/eclipse-fix-debug-ui.patch
new file mode 100644
index 0000000..02d9ba4
--- /dev/null
+++ b/eclipse-fix-debug-ui.patch
@@ -0,0 +1,22 @@
+--- eclipse.platform.debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsComparator.java.bak 2012-07-30 14:27:39.000000000 +0200
++++ eclipse.platform.debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsComparator.java 2012-07-30 14:28:00.277726901 +0200
+@@ -182,7 +182,7 @@
+ }
+ int cmp;
+ if (num1 instanceof Long && num2 instanceof Long) {
+- cmp = ((Long)num1).compareTo(num2);
++ cmp = ((Long)num1).compareTo((Long)num2);
+ } else {
+ cmp = Double.compare(num1.doubleValue(), num2.doubleValue());
+ }
+--- eclipse.platform.debug/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java.bak 2012-07-25 17:26:39.000000000 +0200
++++ eclipse.platform.debug/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java 2012-07-30 15:09:46.416687878 +0200
+@@ -853,7 +853,7 @@
+ */
+ private boolean isEnabled(Object element) {
+ if (element instanceof ICommand) {
+- Boolean enabled= (Boolean)((ICommand) element).getArguments().get(COMMAND_ENABLED);
++ Boolean enabled= (Boolean)(Object)((ICommand) element).getArguments().get(COMMAND_ENABLED);
+ if (enabled != null) {
+ return enabled.booleanValue();
+ }
diff --git a/eclipse-no-source-for-dependencies.patch b/eclipse-no-source-for-dependencies.patch
index bd6e919..5348d7a 100644
--- a/eclipse-no-source-for-dependencies.patch
+++ b/eclipse-no-source-for-dependencies.patch
@@ -440,3 +440,18 @@
+
+
++
++
++
++
++
++
+
+
+
diff --git a/eclipse.spec b/eclipse.spec
index f98838f..ad52c53 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -71,6 +71,9 @@ Patch9: %{name}-fix-master-ecf.patch
Patch10: %{name}-fix-master-equinox.patch
#services
Patch11: %{name}-osgi-unpack-sources.patch
+Patch12: %{name}-fix-debug-ui.patch
+Patch13: %{name}-fix-compatibility-class.patch
+
BuildRequires: ant >= 1.8.3
BuildRequires: rsync
@@ -257,6 +260,8 @@ developing Eclipse plugins.
%patch9
%patch10
%patch11
+%patch12
+%patch13
#https://bugs.eclipse.org/bugs/show_bug.cgi?id=386040
%pom_disable_module bundles/org.eclipse.equinox.http.jetty5 rt.equinox.bundles .
@@ -306,6 +311,8 @@ find . -name *.jar -exec rm -f {} \;
find . -name *.class -exec rm -f {} \;
find . -name *.so -exec rm -f {} \;
+
+find . -name build.properties -exec sed -i -e "s/javacTarget=jsr14/javacTarget=1.5/" {} \;
#popd
%build