diff --git a/eclipse-disable-jdt-annotation-java8.patch b/eclipse-disable-jdt-annotation-java8.patch new file mode 100644 index 0000000..7ae2749 --- /dev/null +++ b/eclipse-disable-jdt-annotation-java8.patch @@ -0,0 +1,16 @@ +--- eclipse.jdt/org.eclipse.jdt-feature/feature.xml.old 2014-05-19 15:24:30.868884801 -0400 ++++ eclipse.jdt/org.eclipse.jdt-feature/feature.xml 2014-05-19 15:24:42.186567987 -0400 +@@ -85,13 +85,6 @@ + unpack="false"/> + + +- +- = 0:0.1.46-2 BuildRequires: apache-commons-el >= 1.0-22 BuildRequires: apache-commons-logging BuildRequires: apache-commons-codec >= 1.6-2 -BuildRequires: felix-gogo-command >= 0.14.0-2 -BuildRequires: felix-gogo-shell >= 0.10.0-3 +BuildRequires: %{?scl_prefix}felix-gogo-command >= 0.14.0-2 +BuildRequires: %{?scl_prefix}felix-gogo-shell >= 0.10.0-3 BuildRequires: osgi(org.eclipse.jetty.util) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.server) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.http) >= %{_jetty_version} @@ -150,29 +151,30 @@ BuildRequires: %{?scl_prefix}lucene-core >= 4.8.1-3 BuildRequires: %{?scl_prefix}lucene-analysis >= 4.8.1-3 BuildRequires: junit >= 4.10-5 BuildRequires: hamcrest >= 0:1.1-11 -BuildRequires: %{?scl_prefix}sat4j >= 2.3.5-1 +BuildRequires: sat4j >= 2.3.5-1 BuildRequires: %{?scl_prefix}objectweb-asm >= 5.0.1-1 BuildRequires: zip BuildRequires: sac >= 1.3-12 -BuildRequires: batik >= 1.8 +BuildRequires: %{?scl_prefix}batik >= 1.8 BuildRequires: xml-commons-apis >= 1.4.01-12 BuildRequires: atinject >= 1-6 -BuildRequires: tycho >= 0.19 -BuildRequires: tycho-extras >= 0.19 -BuildRequires: eclipse-ecf-core >= 3.8.1-1 -BuildRequires: eclipse-emf-core >= 1:2.10.0-1 +BuildRequires: %{?scl_prefix}tycho >= 0.20 +BuildRequires: %{?scl_prefix}tycho-extras >= 0.20 +BuildRequires: %{?scl_prefix}eclipse-ecf-core >= 3.8.1-1 +BuildRequires: %{?scl_prefix}eclipse-emf-core >= 1:2.10.0-1 +BuildRequires: tomcat-el-2.2-api BuildRequires: glassfish-jsp-api >= 2.2.1-4 BuildRequires: glassfish-jsp >= 2.2.5 BuildRequires: glassfish-servlet-api >= 3.1.0 -BuildRequires: cbi-plugins +BuildRequires: %{?scl_prefix}cbi-plugins BuildRequires: xml-maven-plugin BuildRequires: httpcomponents-core BuildRequires: httpcomponents-client BuildRequires: mockito %if ! %{bootstrap} -BuildRequires: eclipse-pde -%endif -BuildRequires: eclipse-license +BuildRequires: %{?scl_prefix}eclipse-pde +%endif +BuildRequires: %{?scl_prefix}eclipse-license %description The Eclipse platform is designed for building integrated development @@ -209,8 +211,8 @@ Requires: ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant Requires: apache-commons-el >= 1.0-23 Requires: apache-commons-logging Requires: apache-commons-codec >= 1.6-2 -Requires: felix-gogo-command >= 0.14.0-2 -Requires: felix-gogo-shell >= 0.10.0-3 +Requires: %{?scl_prefix}felix-gogo-command >= 0.14.0-2 +Requires: %{?scl_prefix}felix-gogo-shell >= 0.10.0-3 Requires: osgi(org.eclipse.jetty.util) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.server) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.http) >= %{_jetty_version} @@ -221,14 +223,15 @@ Requires: osgi(org.eclipse.jetty.servlet) >= %{_jetty_version} Requires: jsch >= 0.1.46-2 Requires: %{?scl_prefix}lucene-core >= 4.8.1-3 Requires: %{?scl_prefix}lucene-analysis >= 4.8.1-3 -Requires: %{?scl_prefix}sat4j >= 2.3.5-1 +Requires: sat4j >= 2.3.5-1 Requires: sac >= 1.3-12 Requires: xml-commons-apis >= 1.4.01-12 -Requires: batik >= 1.8 +Requires: %{?scl_prefix}batik >= 1.8 Requires: atinject >= 1-6 Requires: geronimo-annotation >= 1.0-7 -Requires: eclipse-ecf-core >= 3.8.1-1 -Requires: eclipse-emf-core >= 1:2.10.0-1 +Requires: %{?scl_prefix}eclipse-ecf-core >= 3.8.1-1 +Requires: %{?scl_prefix}eclipse-emf-core >= 1:2.10.0-1 +Requires: tomcat-el-2.2-api Requires: glassfish-jsp-api >= 2.2.1-4 Requires: glassfish-jsp >= 2.2.5 Requires: glassfish-servlet-api >= 3.1.0 @@ -321,6 +324,7 @@ tar --strip-components=1 -xf %{SOURCE1} %patch20 %patch21 %patch22 +%patch23 #Disable as many things as possible to make the build faster. We care only for Eclipse. %pom_disable_module platform.sdk eclipse.platform.releng.tychoeclipsebuilder @@ -356,6 +360,9 @@ tar --strip-components=1 -xf %{SOURCE1} %pom_disable_module bundles/org.eclipse.releng.tools eclipse.platform.releng %pom_disable_module features/org.eclipse.releng.tools eclipse.platform.releng +# Disable java 8 bits for now +%pom_disable_module org.eclipse.jdt.annotation eclipse.jdt.core + # We don't need support for Eclipse 2.x style plugins %pom_disable_module features/org.eclipse.osgi.compatibility.plugins.feature rt.equinox.framework %pom_disable_module bundles/org.eclipse.osgi.compatibility.plugins rt.equinox.framework @@ -452,8 +459,6 @@ done cp -r %{_javadir}/eclipse-license/eclipse/features/* .m2/p2/repo-sdk/features/ cp -r %{_javadir}/emf/eclipse/features/* .m2/p2/repo-sdk/features/ cp -r %{_javadir}/ecf/eclipse/features/* .m2/p2/repo-sdk/features/ -%{?scl: cp %{_javadir}/ecf/eclipse/plugins/* .m2/p2/repo-sdk/plugins} -%{?scl: cp %{_javadir}/*sat4j* .m2/p2/repo-sdk/plugins} %if ! %{bootstrap} cp -rf %{_libdir}/eclipse/dropins/sdk/plugins/org.eclipse.pde.build_* .m2/p2/repo-sdk/plugins/ cp -rf %{_libdir}/eclipse/dropins/sdk/plugins/org.eclipse.pde.core_* .m2/p2/repo-sdk/plugins/ @@ -465,10 +470,12 @@ sed -i -e 's@>org.eclipse.jdt<@>org.eclipse.tycho<@' eclipse-platform-parent/pom # Allow usage of javax.servlet.jsp 2.3. sed -i '/javax\.servlet\.jsp/ s/2\.3/2\.4/' rt.equinox.bundles/bundles/org.eclipse.equinox.jsp.jasper/META-INF/MANIFEST.MF -# Use com.sun.el.java.el (Glassfish) instead of javax.el (Tomcat) -sed -i 's/javax\.el/com\.sun\.el\.javax\.el/' \ - eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml \ - eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml +# Force usage of javax.servlet 3.1 +sed -i '/javax.servlet/ s/2\.4\.0/3\.1\.0/' eclipse.platform.ua/org.eclipse.help.webapp/META-INF/MANIFEST.MF + +# Tomcat provides javax.el +sed -i 's/com\.sun\.el\.javax\.el/javax\.el/' dependencies/replace_platform_plugins_with_symlinks.sh +sed -i 's/glassfish-el\.jar/tomcat-el-api\.jar/' dependencies/replace_platform_plugins_with_symlinks.sh # Bump javax.servlet Import-Package statements sed -i '/javax\.servlet/ s/3\.1/3\.2/' rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/META-INF/MANIFEST.MF @@ -478,7 +485,17 @@ sed -i '/javax\.servlet/ s/3\.1/3\.2/' rt.equinox.bundles/bundles/org.eclipse.eq sed -i -e 's@Dhelp.lucene.tokenizer=standard@XX:MaxPermSize=384M@g' eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml +%if %{bootstrap} +# Not sure why this is needed yet... +mkdir -p .m2/org/eclipse/tycho/tycho-bundles-external/0.20.0 +mkdir -p .m2/org/eclipse/tycho/tycho-standalone-p2-director/0.20.0 +cp %{_javadir}/tycho/tycho-bundles-external.zip .m2/org/eclipse/tycho/tycho-bundles-external/0.20.0/tycho-bundles-external-0.20.0.zip +cp %{_javadir}/tycho/tycho-standalone-p2-director.zip .m2/org/eclipse/tycho/tycho-standalone-p2-director/0.20.0/tycho-standalone-p2-director-0.20.0.zip +%endif + %build +%{?scl:scl enable %{scl} - << "EOF"} +set -x #This is the lowest value where the build succeeds. 512m is not enough. export MAVEN_OPTS="-Xmx1000m -XX:MaxPermSize=256m -XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}" export JAVA_HOME=%{java_home} @@ -492,6 +509,7 @@ xmvn -o clean verify \ -Dmaven.test.skip=true -Dnative=gtk.linux.%{eclipse_arch} \ -Dtycho.local.keepTarget -DbuildId=`echo "%{release}" | tr -d "."` \ -Dtargets=install +%{?scl:EOF} #symlink necessary plugins (that are provided by other packages) dependencies/replace_platform_plugins_with_symlinks.sh \ @@ -560,7 +578,7 @@ cat >> eclipse.ini <> $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests @@ -739,7 +757,7 @@ sed -i 's|\.\+/\(prepAllTestBundles\.sh\)|%{_javadir}/eclipse-testing/testbundle sed -i 's|cp swtbot-library.xml alltest.xml updateTestBundleXML.sh target/|cp %{_javadir}/eclipse-testing/testbundle/{swtbot-library.xml,alltest.xml,updateTestBundleXML.sh} target/|' prepRuntimeLocation.sh for file in genRepo.sh gatherBundles.sh ;do - sed -i 's|scl_root=|scl_root=%{_scl_root}|' ${file} + sed -i 's|scl_root=|scl_root=%{?_scl_root}|' ${file} done mv $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/testbundle/%{pkg_name}-runTestBundles $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runTestBundles @@ -803,7 +821,7 @@ fi %{_libdir}/%{pkg_name}/plugins/javax.servlet_* %{_libdir}/%{pkg_name}/plugins/javax.servlet.jsp_* %{_libdir}/%{pkg_name}/plugins/javax.xml_* -%{_libdir}/%{pkg_name}/plugins/com.sun.el.javax.el_* +%{_libdir}/%{pkg_name}/plugins/javax.el_* %{_libdir}/%{pkg_name}/plugins/javax.inject_*.jar %{_libdir}/%{pkg_name}/plugins/org.apache.ant_* %{_libdir}/%{pkg_name}/plugins/org.apache.batik.css_* @@ -1016,6 +1034,9 @@ fi %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.compatibility.state_* %changelog +* Wed Jul 09 2014 Mat Booth - 1:4.4.0-5.1 +- Bootstrap into SCL + * Tue Jul 08 2014 Mat Booth - 1:4.4.0-5 - Make GTK3 the default SWT implementation in eclipse.ini