%{?scl:%scl_package eclipse} %{!?scl:%global pkg_name %{name}} # Set to 1 to build Eclipse without dependency to eclipse-pde # Some parts (help) will not be built, and second run will be required, # but this is a way to bootstrap Eclipse on secondary archs. %global bootstrap 0 Epoch: 1 %global eclipse_major 4 %global eclipse_minor 5 %global eclipse_micro 0 %global eb_commit 2775b93d3d9f147f5711c91bb3aa623f2582019d %global eclipse_tag I20150317-2000 %global eclipse_version %{eclipse_major}.%{eclipse_minor}.%{eclipse_micro} %global _jetty_version 9.2.9 %ifarch %{ix86} %define eclipse_arch x86 %endif %ifarch %{arm} %define eclipse_arch arm %endif %ifarch ppc64 ppc64p7 %define eclipse_arch ppc64 %endif %ifarch s390 s390x ppc x86_64 aarch64 ppc64le %define eclipse_arch %{_arch} %endif # See fedora-devel-java-list discussion in September 2008. # # Prevent brp-java-repack-jars from being run. %define __jar_repack %{nil} Summary: An open, extensible IDE Name: %{?scl_prefix}eclipse Version: %{eclipse_version} Release: 0.8.git201503172000%{?dist} License: EPL URL: http://www.eclipse.org/ # Tarball generated by calling ./get-eclipse.sh Source0: R4_platform-aggregator-%{eclipse_tag}.tar.xz Source1: http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.eclipse-build.git/snapshot/org.eclipse.linuxtools.eclipse-build-%{eb_commit}.tar.bz2 Patch1: %{pkg_name}-remove-w3c-smil-and-use-geronimo.patch # Eclipse should not include source for dependencies that are not supplied by this package # and should not include source for bundles that are not relevant to our platform Patch2: %{pkg_name}-no-source-for-dependencies.patch # This has too many dependencies. We will not build it. Patch3: %{pkg_name}-remove-weaving.patch # https://bugs.eclipse.org/bugs/show_bug.cgi?id=377515 Patch4: %{pkg_name}-p2-pick-up-renamed-jars.patch # Patch for this was contributed. Unlikely to be released. Patch5: %{pkg_name}-ignore-version-when-calculating-home.patch # CBI uses timestamps generated from the git commits. We don't have the repo, # just source, and we don't want additional dependencies. Patch6: %{pkg_name}-remove-jgit-provider.patch # This is for Fedora purposes to have working eclipse-pdebuild script. Patch7: %{pkg_name}-pdebuild-add-target.patch # Strict Fedora purpose, too. We can't build entire product, just base # and JDT and SDK as update sites, then we can assemble our own packages. # https://bugs.eclipse.org/bugs/show_bug.cgi?id=386670 Patch8: %{pkg_name}-change-build-packagings.patch Patch9: %{pkg_name}-test-support.patch Patch10: %{pkg_name}-secondary-arches.patch Patch11: %{pkg_name}-debug-symbols.patch Patch12: %{pkg_name}-fix-comaptibility-class.patch Patch15: %{pkg_name}-fix-startup-class-refresh.patch # https://bugs.eclipse.org/bugs/show_bug.cgi?id=408138 Patch16: %{pkg_name}-fix-dropins.patch Patch17: %{pkg_name}-bug-386377.patch # Port eclipse user assistance to latest version of lucene Patch19: %{pkg_name}-lucene-4.patch # Resolving the target platform requires too many changes, so don't use it Patch20: %{pkg_name}-no-target-platform.patch # org.mockito -> org.mockito.mockito-core Patch21: %{pkg_name}-mockito.patch Patch22: %{pkg_name}-policy-comparators.patch Patch23: %{pkg_name}-webkit2-support.patch Patch25: %{pkg_name}-support-symlink-bundles.patch # Feature plugin definitions lock onto version of plugin at build-time. # If plugin is external, updating it breaks the feature. (version changes) # Workaround : Change definition to a 'requirement' and list # the plugin in the top-level category so it still gets bundled. # Also makes the following BSN changes at the same time: # -com.sun.el # +javax.el # -org.apache.jasper.glassfish # +org.glassfish.web.javax.servlet.jsp # -javax.annotation # +org.apache.geronimo.specs.geronimo-annotation_1.1_spec # -org.w3c.dom.smil Patch26: %{pkg_name}-feature-plugins-to-category-ius.patch # Require hamcrest when using directly (cannot rely on junit reexporting it) Patch28: eclipse-direct-hamcrest-use.patch BuildRequires: rsync BuildRequires: make, gcc BuildRequires: gtk2-devel BuildRequires: gtk3-devel BuildRequires: glib2-devel BuildRequires: gcc-c++ BuildRequires: nspr-devel BuildRequires: libXtst-devel BuildRequires: mesa-libGL-devel BuildRequires: mesa-libGLU-devel BuildRequires: cairo >= 1.0 BuildRequires: unzip BuildRequires: desktop-file-utils BuildRequires: java-1.8.0-openjdk-devel BuildRequires: libXt-devel BuildRequires: webkitgtk-devel BuildRequires: webkitgtk4-devel BuildRequires: geronimo-annotation >= 1.0-7 BuildRequires: %{?scl_prefix}icu4j >= 1:54.1.1-2 BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf ant-commons-net BuildRequires: ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf BuildRequires: jsch >= 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: osgi(org.eclipse.jetty.util) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.server) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.http) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.continuation) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.io) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.security) >= %{_jetty_version} BuildRequires: osgi(org.eclipse.jetty.servlet) >= %{_jetty_version} BuildRequires: %{?scl_prefix}lucene-core >= 4.10.2 BuildRequires: %{?scl_prefix}lucene-analysis >= 4.10.2 BuildRequires: junit >= 4.10-5 BuildRequires: hamcrest >= 0:1.3-11 BuildRequires: sat4j >= 2.3.5-1 BuildRequires: objectweb-asm >= 5.0.3-1 BuildRequires: zip BuildRequires: sac >= 1.3-12 BuildRequires: batik-css >= 1.8-0.17 BuildRequires: xml-commons-apis >= 1.4.01-12 BuildRequires: atinject >= 1-18 BuildRequires: atinject-tck >= 1-18 BuildRequires: tycho >= 0.22 BuildRequires: tycho-extras >= 0.22 BuildRequires: eclipse-ecf-core >= 3.9.2-2 BuildRequires: eclipse-emf-core >= 1:2.10.2-1 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: xml-maven-plugin BuildRequires: httpcomponents-core >= 4.4-1 BuildRequires: httpcomponents-client >= 4.4-1 BuildRequires: libappstream-glib BuildRequires: mockito %if ! %{bootstrap} BuildRequires: eclipse-pde %endif BuildRequires: eclipse-license %description The Eclipse platform is designed for building integrated development environments (IDEs), server-side applications, desktop applications, and everything in between. %package swt Summary: SWT Library for GTK+ Requires: java >= 1:1.7.0 Requires: jpackage-utils Requires: gtk2 Requires: gtk3 Requires: webkitgtk Requires: webkitgtk4 %description swt SWT Library for GTK+. %package equinox-osgi Summary: Eclipse OSGi - Equinox Requires: java-headless >= 1:1.7.0 Requires: javapackages-tools Provides: osgi(system.bundle) = %{epoch}:%{eclipse_version} %description equinox-osgi Eclipse OSGi - Equinox %package platform Summary: Eclipse platform common files Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf ant-commons-net Requires: ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf 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: osgi(org.eclipse.jetty.util) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.server) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.http) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.continuation) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.io) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.security) >= %{_jetty_version} Requires: osgi(org.eclipse.jetty.servlet) >= %{_jetty_version} Requires: jsch >= 0.1.46-2 Requires: %{?scl_prefix}lucene-core >= 4.10.2 Requires: %{?scl_prefix}lucene-analysis >= 4.10.2 Requires: sat4j >= 2.3.5-1 Requires: sac >= 1.3-12 Requires: batik-css >= 1.8-0.17 Requires: xml-commons-apis >= 1.4.01-12 Requires: atinject >= 1-18 Requires: geronimo-annotation >= 1.0-7 Requires: eclipse-ecf-core >= 3.9.2-2 Requires: eclipse-emf-core >= 1:2.10.2-1 Requires: glassfish-jsp-api >= 2.2.1-4 Requires: glassfish-jsp >= 2.2.5 Requires: glassfish-servlet-api >= 3.1.0 Requires: %{?scl_prefix}icu4j >= 1:54.1.1-2 Requires: %{name}-swt = %{epoch}:%{eclipse_version}-%{release} Requires: %{name}-equinox-osgi = %{epoch}:%{eclipse_version}-%{release} Requires: httpcomponents-core >= 4.4-1 Requires: httpcomponents-client >= 4.4-1 %{?scl:Requires: %scl_runtime} Obsoletes: %{name}-rcp < 1:4.3.0 Provides: %{name}-rcp = 1:%{eclipse_version}-%{release} %description platform The Eclipse Platform is the base of all IDE plugins. This does not include the Java Development Tools or the Plugin Development Environment. %package jdt Summary: Eclipse Java Development Tools Requires: %{name}-platform = %{epoch}:%{eclipse_version}-%{release} Requires: junit >= 4.10-5 Requires: hamcrest-core >= 0:1.3-11 %description jdt Eclipse Java Development Tools. This package is required to use Eclipse for developing software written in the Java programming language. %package pde Summary: Eclipse Plugin Development Environment Provides: %{name} = %{epoch}:%{eclipse_version}-%{release} Requires: %{name}-platform = %{epoch}:%{eclipse_version}-%{release} Requires: %{name}-jdt = %{epoch}:%{eclipse_version}-%{release} Requires: objectweb-asm >= 5.0.3-1 # For PDE Build wrapper script + creating jars Requires: zip Requires: bash %description pde Eclipse Plugin Development Environment. This package is required for developing Eclipse plugins. %package p2-discovery Summary: Eclipse p2 Discovery Requires: %{name}-platform = %{epoch}:%{eclipse_version}-%{release} Obsoletes: %{name}-p2-discovery < 1:4.4.0 %description p2-discovery The p2 Discovery mechanism provides a simplified and branded front-end for the p2 provisioning platform. Discovery can be used as a tool to display and install from existing P2 repositories or as a framework to build branded installer UIs. %package tests Summary: Eclipse Tests Requires: %{name}-pde = %{epoch}:%{eclipse_version}-%{release} Requires: easymock3 Requires: mockito Requires: atinject-tck >= 1-18 %description tests Eclipse Tests. %prep %setup -q %{SOURCE0} -n R4_platform-aggregator-%{eclipse_tag} tar --strip-components=1 -xf %{SOURCE1} %patch1 %patch2 %patch3 %patch4 %patch5 %patch6 %patch7 %patch8 %patch9 %patch10 -p1 %patch11 %patch12 %patch15 %patch16 %patch17 %patch19 -p1 %patch20 %patch21 %patch22 %patch23 %patch25 %patch26 %patch28 # 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 %pom_disable_module rcp eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module rcp.sdk eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module rcp.config eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module sdk eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module equinox-sdk eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module equinox.starterkit.product eclipse.platform.releng.tychoeclipsebuilder %pom_disable_module bundles/org.eclipse.equinox.region.tests rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.weaving.sdk rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.cm.test rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.sdk rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.console.jaas.fragment rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.console.ssh rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.ip rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.transforms.xslt rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.transforms.hook rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.weaving.aspectj rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.weaving.caching.j9 rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.weaving.caching rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.weaving.hook rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.compendium.sdk rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.core.sdk rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.p2.sdk rt.equinox.p2 %pom_disable_module features/org.eclipse.equinox.server.p2 rt.equinox.bundles %pom_disable_module features/org.eclipse.equinox.serverside.sdk rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.p2.tests.reconciler.product rt.equinox.p2 # We don't need releng tools %pom_disable_module bundles/org.eclipse.releng.tests eclipse.platform.releng %pom_disable_module bundles/org.eclipse.releng.tools eclipse.platform.releng %pom_disable_module features/org.eclipse.releng.tools eclipse.platform.releng # 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 # Remove platform-specific stuff that we don't care about to reduce build time # (i.e., all bundles that are only applicable on non-linux platforms) for b in `ls eclipse.platform.swt.binaries/bundles | grep -P -e 'org.eclipse.swt\.(?!gtk\.linux)'` ; do module=$(grep ">bundles/$b<" eclipse.platform.swt.binaries/pom.xml || :) if [ -n "$module" ] ; then %pom_disable_module bundles/$b eclipse.platform.swt.binaries fi done for b in `ls rt.equinox.framework/bundles | grep -P -e 'org.eclipse.equinox.launcher\.(?!gtk\.linux)'` ; do module=$(grep ">bundles/$b<" rt.equinox.framework/pom.xml || :) if [ -n "$module" ] ; then %pom_disable_module bundles/$b rt.equinox.framework fi done %pom_disable_module org.eclipse.jdt.launching.macosx eclipse.jdt.debug %pom_disable_module org.eclipse.jdt.launching.ui.macosx eclipse.jdt.debug %pom_disable_module bundles/org.eclipse.equinox.security.macosx rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.security.win32.x86 rt.equinox.bundles %pom_disable_module bundles/org.eclipse.equinox.security.win32.x86_64 rt.equinox.bundles %pom_disable_module bundles/org.eclipse.compare.win32 eclipse.platform.team %pom_disable_module bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86 eclipse.platform.team %pom_disable_module bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86_64 eclipse.platform.team %pom_disable_module bundles/org.eclipse.e4.ui.workbench.renderers.swt.cocoa eclipse.platform.ui %pom_disable_module bundles/org.eclipse.ui.cocoa eclipse.platform.ui %pom_disable_module bundles/org.eclipse.ui.win32 eclipse.platform.ui %pom_disable_module bundles/org.eclipse.core.filesystem.hpux.ia64 eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem.macosx eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem.solaris.sparc eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem.win32.x86 eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem.win32.x86_64 eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem/fragments/org.eclipse.core.filesystem.aix.ppc eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.filesystem/fragments/org.eclipse.core.filesystem.aix.ppc64 eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.resources.win32.x86 eclipse.platform.resources %pom_disable_module bundles/org.eclipse.core.resources.win32.x86_64 eclipse.platform.resources %pom_disable_module examples/org.eclipse.swt.examples.ole.win32 eclipse.platform.swt # This part generates secondary fragments using primary fragments for dir in eclipse.platform.swt.binaries/bundles \ rt.equinox.framework/bundles rt.equinox.binaries ; do utils/ensure_arch.sh "$dir" x86 arm utils/ensure_arch.sh "$dir" x86_64 aarch64 done # Include some extra features with the product that some other projects may need at # build time as part of their target platform definitions sed -i -e '169i' \ eclipse.platform.releng.tychoeclipsebuilder/platform/platform.product # Don't mirror stuff to the repo that we haven't built %pom_xpath_remove "pom:execution[pom:id[text()='mirror-build-emf']]" \ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository %pom_xpath_remove "pom:execution[pom:id[text()='mirror-build-ecf']]" \ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository %pom_xpath_remove "pom:execution[pom:id[text()='mirror-org.eclipse.rcp']]" \ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository %pom_xpath_remove "pom:execution[pom:id[text()='mirror-org.eclipse.rcp.source']]" \ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository %pom_xpath_remove "pom:execution[pom:id[text()='mirror-org.eclipse.releng.tools']]" \ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository # Since Tycho 0.22.0 resources get copied into generated eclipse-repository. # We place some content in ${project.build.directory} and use that to place # it into some other assembled zip. # With 0.22.0 it will get placed also into the eclipse-repository zip. # Let's be careful where we place them to avoid duplication. %pom_xpath_remove "pom:resources" eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests %pom_remove_plugin :maven-resources-plugin eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests sed -i 's|\${project.build.directory}/resources|\${project.basedir}/src/main/resources|' eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/assembly/assembly.xml eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml # Remove the SWT build sections from every linux arch that is not currently being built # (this is not really necessary but further reduces the build time on arm by around 20 # minutes per architecture that we are not currently building, over 2.5 hours in total) for b in `ls eclipse.platform.swt.binaries/bundles | grep -P -e 'org.eclipse.swt.gtk.linux.(?!%{eclipse_arch})'` ; do %pom_xpath_remove "/pom:project/pom:build" eclipse.platform.swt.binaries/bundles/$b done # Don't set perms on files for platforms that aren't linux for f in \ rt.equinox.framework/features/org.eclipse.equinox.executable.feature/build.properties; do grep '^root\.linux\.gtk\.%{eclipse_arch}[.=]' $f > tmp sed -i -e '/^root\./d' $f && cat tmp >> $f done # Hack - this can go away once upstream grows arm and aarch64 support mkdir -p rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/%{eclipse_arch} #pdebuild script should point to dropins sed -i -e "s|@DATADIR@|%{_datadir}|g" eclipse.pde.build/org.eclipse.pde.build/templates/package-build/build.properties # Ensure that bundles with native artifacts are dir-shaped, so no *.so is extracted into user.home for f in `find eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.* -name MANIFEST.MF` ; do echo -e "Eclipse-BundleShape: dir\n\n" >> $f; done for f in `find eclipse.platform.resources/bundles/org.eclipse.core.filesystem.linux.* -name MANIFEST.MF` ; do echo -e "Eclipse-BundleShape: dir\n\n" >> $f; done for f in `find eclipse.platform.team/bundles/org.eclipse.core.net/fragments -name MANIFEST.MF` ; do echo -e "Eclipse-BundleShape: dir\n\n" >> $f; done #fake dependencies that don't exist in fedora ./dependencies/./fake_ant_dependency.sh .m2/p2/repo-sdk/plugins/org.apache.ant_* /usr/share/java /usr/bin -makejar %if %{bootstrap} # Use org.eclipse.tycho:org.eclipse.jdt.core (ecj) sed -i -e 's@>org.eclipse.jdt<@>org.eclipse.tycho<@' eclipse-platform-parent/pom.xml %endif # 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 # Use javax.servlet-api (Glassfish) instead of javax.servlet (Tomcat) find -name feature.xml | xargs sed -i -e 's|"javax.servlet"|"javax.servlet-api"|' %pom_remove_plugin org.mortbay.jetty:jetty-jspc-maven-plugin eclipse.platform.ua/org.eclipse.help.webapp sed -i -e 's@Dhelp.lucene.tokenizer=standard@XX:MaxPermSize=384M@g' eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml # Remove generated files not present during bootstrap build # org.eclipse.platform.doc.isv, org.eclipse.jdt.doc.isv, org.eclipse.pde.doc.user %if %{bootstrap} sed -i '18,47d' eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/assembly/assembly.xml %endif %build #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} export GTK_VERSION=3.0 %mvn_build -j -f -- \ %if %{bootstrap} -P !api-generation,!build-docs \ %endif -Declipse.javadoc=/usr/bin/javadoc -Dnative=gtk.linux.%{eclipse_arch} \ -Dtycho.local.keepTarget -Ddirector.running.env.only=true \ -Dfedora.p2.repos=`pwd`/.m2/p2/repo-sdk/plugins -DbuildType=Z #ant again dependencies/fake_ant_dependency.sh \ eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse/plugins/org.apache.ant_* \ /usr/share/java /usr/bin # JDT and PDE are built as update sites. # Initialize them and move into dropins. utils/move_JDT_PDE_to_dropins.sh \ eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/ \ `pwd`/eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/target/repository \ "jdt cvs equinox.p2.discovery.feature sdk" # Symlink necessary plugins that are provided by other packages dependencies/replace_platform_plugins_with_symlinks.sh \ eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse %{_javadir} pushd eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse #clean up rm -rf configuration/org.eclipse.core.runtime rm -rf configuration/org.eclipse.equinox.app rm -rf configuration/org.eclipse.update rm -rf configuration/org.eclipse.osgi rm -rf p2/org.eclipse.equinox.p2.core/cache/* # no icon needed rm -f icon.xpm # EMF and ECF are packaged separately rm -rf features/org.eclipse.emf.* plugins/org.eclipse.emf.* \ features/org.eclipse.ecf.* plugins/org.eclipse.ecf.* plugins/org.eclipse.ecf_* #delete all local repositories. We want to have only "original" by default. pushd p2/org.eclipse.equinox.p2.engine/.settings sed -i "/repositories\/file/d" *.prefs ../profileRegistry/SDKProfile.profile/.data/.settings/*.prefs sed -i "/repositories\/memory/d" *.prefs ../profileRegistry/SDKProfile.profile/.data/.settings/*.prefs popd # ini file adjustements sed -i "s|-Xms40m|-Xms128m|g" eclipse.ini sed -i "s|-Xmx512m|-Xmx1024m|g" eclipse.ini sed -i '1i-protect\nmaster' eclipse.ini # Use GTK3 by default on F22 or newer %if 0%{?fedora} >= 22 sed -i '5i--launcher.GTK_version\n3' eclipse.ini %else sed -i '5i--launcher.GTK_version\n2' eclipse.ini %endif # Temporary fix until https://bugs.eclipse.org/294877 is resolved cat >> eclipse.ini < -XX:CompileCommand=exclude,org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/CPPTemplates,instantiateTemplate -XX:CompileCommand=exclude,org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage,addBinding -XX:CompileCommand=exclude,org/python/pydev/editor/codecompletion/revisited/PythonPathHelper,isValidSourceFile -XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState -Dorg.eclipse.equinox.p2.reconciler.dropins.directory=%{_datadir}/eclipse/dropins -Declipse.p2.skipMovedInstallDetection=true EOF popd #eclipse %install # Some directories we need install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir} install -d -m 755 $RPM_BUILD_ROOT%{_jnidir} install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{pkg_name} install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/buildscripts install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{pkg_name}/dropins install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir} install -d -m 755 $RPM_BUILD_ROOT%{_bindir} # Install icons install -D eclipse.platform/platform/org.eclipse.platform/eclipse32.png \ $RPM_BUILD_ROOT/usr/share/icons/hicolor/32x32/apps/%{name}.png install -D eclipse.platform/platform/org.eclipse.platform/eclipse48.png \ $RPM_BUILD_ROOT/usr/share/icons/hicolor/48x48/apps/%{name}.png install -D eclipse.platform/platform/org.eclipse.platform/eclipse256.png \ $RPM_BUILD_ROOT/usr/share/icons/hicolor/256x256/apps/%{name}.png install -d $RPM_BUILD_ROOT/usr/share/pixmaps ln -s /usr/share/icons/hicolor/256x256/apps/%{name}.png \ $RPM_BUILD_ROOT/usr/share/pixmaps/%{name}.png # Install desktop file %{?scl: sed -i -e 's/Exec=eclipse/Exec=scl enable %{scl_name} eclipse/g' desktopintegration/eclipse.desktop} %{?scl: sed -i -e 's/Icon=eclipse/Icon=%{?scl_prefix}eclipse/g' desktopintegration/eclipse.desktop} %{?scl: sed -i -e 's/Name=Eclipse/Name=DTS Eclipse/g' desktopintegration/eclipse.desktop} install -m644 -D desktopintegration/eclipse.desktop $RPM_BUILD_ROOT/usr/share/applications/%{name}.desktop desktop-file-validate $RPM_BUILD_ROOT/usr/share/applications/%{name}.desktop # Install appstream appdata install -m644 -D desktopintegration/eclipse.appdata.xml $RPM_BUILD_ROOT%{_datadir}/appdata/eclipse.appdata.xml install -m644 -D desktopintegration/eclipse-jdt.metainfo.xml $RPM_BUILD_ROOT%{_datadir}/appdata/eclipse-jdt.metainfo.xml install -m644 -D desktopintegration/eclipse-pde.metainfo.xml $RPM_BUILD_ROOT%{_datadir}/appdata/eclipse-pde.metainfo.xml # Update the screenshot shown in the software center # # NOTE: It would be *awesome* if this file was pushed upstream. # # See http://people.freedesktop.org/~hughsient/appdata/#screenshots for more details. # appstream-util replace-screenshots $RPM_BUILD_ROOT%{_datadir}/appdata/eclipse.appdata.xml \ https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/eclipse/a.png ################################# ### Extraced from old build.xml # ################################# LOCAL_PWD=`pwd` #change the installation p2 files pushd eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse/p2/org.eclipse.equinox.p2.engine/profileRegistry/SDKProfile.profile/ for i in `ls | grep "profile.gz"` ; do \ echo $i ; \ gunzip $i ; \ sed -i -e "s@${LOCAL_PWD}/eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse@%{_libdir}/eclipse@g" *.profile ; \ gzip *.profile ; \ done popd #installation itself - copy it into right location rsync -vrpl eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse \ $RPM_BUILD_ROOT%{_libdir} #eclipse compiler install -m 755 jdtcompilatorscript/efj.sh $RPM_BUILD_ROOT%{_bindir}/efj TARGET_LAUNCHER=%{_libdir}/%{pkg_name}/plugins/`ls eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/%{eclipse_arch}/eclipse/plugins | grep launcher_[0-9]*` sed -i -e "s,@LAUNCHER@,${TARGET_LAUNCHER}," $RPM_BUILD_ROOT%{_bindir}/efj # Symlink eclipse binary pushd $RPM_BUILD_ROOT%{_bindir} ln -s %{_libdir}/%{pkg_name}/eclipse popd # SWT is a directory, but we need to provide jars for others that depend on it pushd $RPM_BUILD_ROOT/%{_libdir}/%{pkg_name}/plugins SWT_JAR=`ls | grep swt.gtk` (cd ${SWT_JAR} && zip -r "../../swt.jar" * ) popd # Symlink SWT jar pushd $RPM_BUILD_ROOT/%{_jnidir}/ ln -s %{_libdir}/%{pkg_name}/swt.jar popd # Symlink eclipse ini pushd $RPM_BUILD_ROOT/%{_sysconfdir}/ ln -s %{_libdir}/%{pkg_name}/eclipse.ini popd ################################# ### End of extraction # ################################# # List jars to be symlinked into javadir pushd $RPM_BUILD_ROOT%{_libdir}/eclipse/plugins EQUINOX_JARS=$(ls . | grep '^org.eclipse.equinox' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|') OSGI_JARS=$(ls . | grep '^org.eclipse.osgi' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|') popd # Symlink jars into javadir for J in $EQUINOX_JARS $OSGI_JARS core.contenttype core.jobs core.net core.runtime core.runtime.compatibility ; do pushd $RPM_BUILD_ROOT%{_javadir}/eclipse DIR=%{?scl:../../../../}../../../..%{_libdir}/eclipse [ -e "`ls $DIR/plugins/org.eclipse.${J}_*.jar`" ] && ln -s $DIR/plugins/org.eclipse.${J}_*.jar ${J}.jar popd # Install pom file if there is one if [ -e "externalpoms/org.eclipse.${J}.pom" ] ; then VER=$(echo $RPM_BUILD_ROOT%{_libdir}/eclipse/plugins/org.eclipse.${J}_*.jar | sed -e "s/.*${J}_\(.*\)\.jar/\1/") sed -i -e "s/@VERSION@/$VER/" externalpoms/org.eclipse.${J}.pom install -m 0644 externalpoms/org.eclipse.${J}.pom $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.eclipse-${J}.pom fi done # Install maven depmaps for OSGI jars %add_maven_depmap JPP.eclipse-osgi.pom %{pkg_name}/osgi.jar -a "org.eclipse:osgi,org.eclipse.tycho:org.eclipse.osgi" -f equinox-osgi %add_maven_depmap JPP.eclipse-osgi.compatibility.state.pom %{pkg_name}/osgi.compatibility.state.jar -a "org.eclipse.osgi:compatibility.state,org.eclipse.tycho:org.eclipse.osgi.compatibility.state" -f equinox-osgi %add_maven_depmap JPP.eclipse-osgi.services.pom %{pkg_name}/osgi.services.jar -a "org.eclipse.osgi:services" -f equinox-osgi %add_maven_depmap JPP.eclipse-osgi.util.pom %{pkg_name}/osgi.util.jar -a "org.eclipse.osgi:util" -f equinox-osgi %add_maven_depmap JPP.eclipse-equinox.http.servlet.pom %{pkg_name}/equinox.http.servlet.jar -a "org.eclipse.equinox.http:servlet" -f platform # Create a script that can be used to make a symlink tree of the # eclipse platform. cp -p pdebuildscripts/eclipse-copy-platform.sh copy-platform sed -i -e "s|@DATADIR@|%{_datadir}|g" copy-platform mv copy-platform $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/buildscripts # Install the PDE Build wrapper script. install -p -D -m0755 pdebuildscripts/eclipse-pdebuild.sh \ $RPM_BUILD_ROOT%{_bindir}/%{pkg_name}-pdebuild PDEBUILDVERSION=$(ls $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/dropins/sdk/plugins \ | grep org.eclipse.pde.build_ | sed 's/org.eclipse.pde.build_//') sed -i "s/@PDEBUILDVERSION@/$PDEBUILDVERSION/g" \ $RPM_BUILD_ROOT%{_bindir}/%{pkg_name}-pdebuild sed -i "s|@LIBDIR@|%{_libdir}|g" \ $RPM_BUILD_ROOT%{_bindir}/eclipse-pdebuild #fix pde permissions chmod a+x $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/dropins/sdk/plugins/org.eclipse.pde.build_*/templates/package-build/*.sh #replace pde reference sed -i "s@/usr/share/eclipse@%{libdir}/%{pkg_name}@" $RPM_BUILD_ROOT%{_libdir}/%{pkg_name}/dropins/sdk/plugins/org.eclipse.pde.build_*/templates/package-build/build.properties ############## # Tests ############## # Since Tycho 0.22.0 resources get copied into generated eclipse-repository. # We place some content in ${project.build.directory} and use that to place # it into some other assembled zip. # With 0.22.0 it will get placed also into the eclipse-repository zip. # Let's just exclude label.properties, and equinoxp2test.properties from # the second extraction to avoid the issue entirely. unzip eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/target/eclipse-junit-tests-bundle.zip -d $RPM_BUILD_ROOT/%{_javadir}/ unzip $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/eclipse-junit-tests-*.zip -d $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing -x label.properties equinoxp2tests.properties cp eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/scripts/JUNIT.XSL $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing cp eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/scripts/library.xml $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing cp utils/splitter.xsl $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing rm $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/eclipse-junit-tests-*.zip rm $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/runtests.bat pushd $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/plugins f=`ls | grep -e "^com.google.code.atinject.tck_"` rm -rf $f ln -s %{_javadir}/atinject-tck.jar ${f%.jar}.jar f=`ls | grep -e "^org.easymock_"` rm -rf $f ln -s %{_javadir}/easymock.jar ${f%.jar}.jar f=`ls | grep -e "^org.mockito.mockito-core_"` rm -rf $f ln -s %{_javadir}/mockito.jar ${f%.jar}.jar f=`ls | grep -e "^org.objenesis_"` rm -rf $f ln -s %{_javadir}/objenesis/objenesis.jar ${f%.jar}.jar for ham in core text library integration ; do f=`ls | grep -e "^org.hamcrest.${ham}_"` rm -rf $f ln -s %{_javadir}/hamcrest/${ham}.jar ${f%.jar}.jar done # These are already present in the platform rm -rf org.junit_* popd sed -i -e "s#@libdir@#%{_libdir}#" $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/runtests.sh sed -i -e "s#@USR@#%{?_scl_root}%{_usr}#" $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/runtests.sh touch $RPM_BUILD_ROOT%{_bindir}/%{pkg_name}-runEclipsePackageTests chmod a+x $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests echo '#!/bin/sh' >> $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests echo 'echo "results in /tmp/eclipse-tests-directory/results/"' >> $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests echo 'export testslocation="%{_javadir}/eclipse-testing/"' >> $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests echo "pushd %{_javadir}/eclipse-testing;./runtests.sh -os linux -ws gtk -arch %{eclipse_arch} ; popd;" >> $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runEclipsePackageTests # Package testbundle-to-eclipse-test cp -r testbundle-to-eclipse-test $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/testbundle pushd $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/testbundle # Set the proper paths for scripts sed -i 's|\.\+/\(gatherBundles\.sh\)|%{_javadir}/eclipse-testing/testbundle/\1|' prepRuntimeLocation.sh sed -i 's|\.\+/\(genRepo\.sh\)|%{_javadir}/eclipse-testing/testbundle/\1|' prepAllTestBundles.sh sed -i 's|\.\+/\(prepRuntimeLocation\.sh\)|%{_javadir}/eclipse-testing/testbundle/\1|' %{pkg_name}-runTestBundles sed -i 's|\.\+/\(prepAllTestBundles\.sh\)|%{_javadir}/eclipse-testing/testbundle/\1|' %{pkg_name}-runTestBundles 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} done mv $RPM_BUILD_ROOT/%{_javadir}/eclipse-testing/testbundle/%{pkg_name}-runTestBundles $RPM_BUILD_ROOT/%{_bindir}/%{pkg_name}-runTestBundles popd #fix so permissions find $RPM_BUILD_ROOT/%{_libdir}/eclipse -name *.so -exec chmod a+x {} \; %post platform touch --no-create /usr/share/icons/hicolor if [ -x /usr/bin/gtk-update-icon-cache ]; then gtk-update-icon-cache -q /usr/share/icons/hicolor fi %postun platform touch --no-create /usr/share/icons/hicolor if [ -x /usr/bin/gtk-update-icon-cache ]; then gtk-update-icon-cache -q /usr/share/icons/hicolor fi %files swt %{_libdir}/%{pkg_name}/eclipse.ini %{_libdir}/%{pkg_name}/plugins/org.eclipse.swt_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.swt.gtk.linux.* %{_libdir}/%{pkg_name}/swt.jar %{_jnidir}/swt.jar %files platform -f .mfiles-platform %{_bindir}/%{pkg_name} %{_libdir}/%{pkg_name}/.eclipseproduct %config %{_libdir}/%{pkg_name}/eclipse.ini %config %{_sysconfdir}/eclipse.ini /usr/share/applications/* /usr/share/pixmaps/* /usr/share/icons/*/*/apps/* %{_datadir}/appdata/eclipse.appdata.xml %{_libdir}/%{pkg_name}/eclipse %dir %{_libdir}/%{pkg_name}/configuration/ %dir %{_libdir}/%{pkg_name}/configuration/org.eclipse.equinox.simpleconfigurator/ %{_libdir}/%{pkg_name}/configuration/config.ini %{_libdir}/%{pkg_name}/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info %{_libdir}/%{pkg_name}/features/org.eclipse.core.runtime.feature_* %{_libdir}/%{pkg_name}/features/org.eclipse.e4.rcp_* %{_libdir}/%{pkg_name}/features/org.eclipse.equinox.core.feature_* %{_libdir}/%{pkg_name}/features/org.eclipse.platform_* %{_libdir}/%{pkg_name}/features/org.eclipse.rcp_* %{_libdir}/%{pkg_name}/plugins/com.ibm.icu_* %{_libdir}/%{pkg_name}/plugins/com.jcraft.jsch_* %{_libdir}/%{pkg_name}/plugins/javax.servlet-api_* %{_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.inject_*.jar %{_libdir}/%{pkg_name}/plugins/org.apache.ant_* %{_libdir}/%{pkg_name}/plugins/org.apache.batik.css_* %{_libdir}/%{pkg_name}/plugins/org.apache.batik.util.gui_* %{_libdir}/%{pkg_name}/plugins/org.apache.batik.util_* %{_libdir}/%{pkg_name}/plugins/org.apache.commons.codec_* %{_libdir}/%{pkg_name}/plugins/org.apache.httpcomponents.httpclient_* %{_libdir}/%{pkg_name}/plugins/org.apache.httpcomponents.httpcore_* %{_libdir}/%{pkg_name}/plugins/org.apache.commons.logging_* %{_libdir}/%{pkg_name}/plugins/org.apache.felix.gogo.command_* %{_libdir}/%{pkg_name}/plugins/org.apache.felix.gogo.runtime_* %{_libdir}/%{pkg_name}/plugins/org.apache.felix.gogo.shell_* %{_libdir}/%{pkg_name}/plugins/org.apache.geronimo.specs.geronimo-annotation_1.1_spec_* %{_libdir}/%{pkg_name}/plugins/org.glassfish.web.javax.servlet.jsp_* %{_libdir}/%{pkg_name}/plugins/org.apache.lucene.core_* %{_libdir}/%{pkg_name}/plugins/org.apache.lucene.analysis_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ant.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.compare_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.compare.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.externaltools_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.filebuffers_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.filesystem* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.net* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.resources_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.runtime.compatibility_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.runtime.compatibility.registry_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.variables_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.debug.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.debug.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.ds_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.event_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.http.jetty_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.http.registry_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.http.servlet_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.jsp.jasper_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.jsp.jasper.registry_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.help.base_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.help.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.help.webapp_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jdt.core.compiler.batch_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jface.text_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jsch.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jsch.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ltk.core.refactoring_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ltk.ui.refactoring_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.platform_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.platform.doc.user_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.search_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.team.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.team.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.text_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.browser_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.cheatsheets_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.console_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.editors_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.externaltools_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.forms_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.ide_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.ide.application_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.intro_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.intro.universal_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.monitoring_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.navigator_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.navigator.resources_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.net_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.views_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.views.properties.tabbed_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.workbench.texteditor_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.core.commands_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.core.contexts_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.core.di.extensions_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.core.di_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.core.services_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.bindings_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.css.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.css.swt.theme_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.css.swt_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.di_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.dialogs_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.model.workbench_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.services_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.widgets_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.workbench.addons.swt_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.workbench.renderers.swt_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.workbench.swt_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.workbench3_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.e4.ui.workbench_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.util_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.server_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.http_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.continuation_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.io_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.security_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jetty.servlet_* %{_libdir}/%{pkg_name}/features/org.eclipse.help_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.frameworkadmin_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.frameworkadmin.equinox_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.simpleconfigurator.manipulator_* %{_libdir}/%{pkg_name}/features/org.eclipse.equinox.p2.core.feature_* %{_libdir}/%{pkg_name}/features/org.eclipse.equinox.p2.extras.feature_* %{_libdir}/%{pkg_name}/features/org.eclipse.equinox.p2.rcp.feature_* %{_libdir}/%{pkg_name}/features/org.eclipse.equinox.p2.user.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.director_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.core_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.engine_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.jarprocessor_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.metadata_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.metadata.repository_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.artifact.repository_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.touchpoint.natives_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.console_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.operations_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.transport.ecf_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.ui.importexport_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.ui.sdk_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.updatechecker_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.garbagecollector_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.directorywatcher_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.publisher_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.publisher.eclipse_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.repository_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.repository.tools_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.reconciler.dropins_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.updatesite_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.security_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.security.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.extensionlocation_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.p2.director.app_* %{_libdir}/%{pkg_name}/plugins/org.sat4j.core_* %{_libdir}/%{pkg_name}/plugins/org.sat4j.pb_* %{_libdir}/%{pkg_name}/plugins/org.w3c.css.sac_* %{_libdir}/%{pkg_name}/plugins/org.w3c.dom.svg_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.commands_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.contenttype_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.databinding.beans_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.databinding.observable_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.databinding.property_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.databinding_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.expressions_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.jobs_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.core.runtime_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.app_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.bidi_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.common_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.concurrent_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.console_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.launcher.gtk.linux.*_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.launcher_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.preferences_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.registry_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.simpleconfigurator_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.equinox.util_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.help_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jface.databinding_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.jface_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.rcp_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.themes_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui.workbench_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.ui_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.update.configurator_* %{_libdir}/%{pkg_name}/readme %{_libdir}/%{pkg_name}/artifacts.xml %{_libdir}/%{pkg_name}/p2 %{_javadir}/%{pkg_name}/core* %{_javadir}/%{pkg_name}/equinox* %files jdt %{_bindir}/efj %{_datadir}/appdata/eclipse-jdt.metainfo.xml %{_libdir}/%{pkg_name}/dropins/jdt %files pde %{_bindir}/%{pkg_name}-pdebuild %{_datadir}/appdata/eclipse-pde.metainfo.xml %{_libdir}/%{pkg_name}/buildscripts %{_libdir}/%{pkg_name}/dropins/sdk %{_libdir}/%{pkg_name}/dropins/cvs %files p2-discovery %{_libdir}/%{pkg_name}/dropins/equinox.p2.discovery.feature %files tests %{_bindir}/%{pkg_name}-runEclipsePackageTests %{_bindir}/%{pkg_name}-runTestBundles %{_javadir}/%{pkg_name}-testing %files equinox-osgi -f .mfiles-equinox-osgi %dir %{_javadir}/%{pkg_name} %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.services_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.util_* %{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.compatibility.state_* %changelog * Mon Mar 30 2015 Richard Hughes - 1:4.5.0-0.8.git201503172000 - Use better AppData screenshots * Wed Mar 25 2015 Michael Simacek - 1:4.5.0-0.7.git201503172000 - Rebuild for jetty update * Thu Mar 19 2015 Mikolaj Izdebski - 1:4.5.0-0.6.git201503172000 - Rebuild for eclipse-ecf update * Tue Mar 17 2015 Mat Booth - 1:4.5.0-0.5.git201503172000 - Update to latest I-build * Wed Mar 04 2015 Mat Booth - 1:4.5.0-0.4.git201503030800 - Update to latest I-build - JDT requires only hamcrest-core - Rebuild for SR2 release of EMF * Wed Feb 25 2015 Mat Booth - 1:4.5.0-0.3.git201502240800 - Update to latest I-build - Require jetty 9.2.9 - Fix arm-build * Wed Feb 18 2015 Mat Booth - 1:4.5.0-0.2.git201502170800 - Update to latest I-build - Unbundle third party libs from tests subpackage rhbz#1150185 - Rebuild for new eclipse-ecf/httpcomponents * Fri Jan 30 2015 Mat Booth - 1:4.5.0-0.1.git201502100800 - Update to latest 4.5.0 I-build - Drop upstreamed jetty9/servlet and workspace picker patches - Drop upstreamed patches for bug 903537 and bug 444143 - Update eclipse-build snapshot for ant dependency - Ship missing features used by some other projects' target platform - Build with mvn_build macro - Some spec file clean-up * Fri Jan 23 2015 Michael Simacek - 1:4.4.1-17 - Rebuild against new jetty * Mon Jan 19 2015 Mat Booth - 1:4.4.1-16 - Rebuild for new eclipse-ecf/httpcomponents - Add patch to explicitly require hamcrest bundle from tests * Mon Jan 12 2015 Alexander Kurtakov 1:4.4.1-15 - Require newer batik with fixed obsoletes. * Wed Dec 10 2014 Alexander Kurtakov 1:4.4.1-14 - Rebuild for new eclipse-ecf. * Tue Dec 9 2014 Alexander Kurtakov 1:4.4.1-13 - Move to slimmer batik-css BR/R. * Sat Nov 29 2014 Roland Grunberg - 1:4.4.1-12 - Make changes necessary for Tycho 0.22.0. * Thu Nov 27 2014 Mat Booth - 1:4.4.1-11 - Update eclipse-build snapshot - Rebuild for ECF symlink changes * Wed Nov 19 2014 Mat Booth - 1:4.4.1-10 - Update eclipse-build snapshot - Rebuild for EMF and icu4j symlink changes - Don't own dirs owned by eclipse-filesystem * Tue Nov 18 2014 Mat Booth - 1:4.4.1-9 - Update dep on icu4j/ECF * Mon Nov 17 2014 Mat Booth - 1:4.4.1-8 - Increase max heap size to 1024m - But don't do this as a patch, it doesn't work - Fix build ID to always be lexigraphically higher that upstream * Wed Nov 12 2014 Mat Booth - 1:4.4.1-7 - Backport patch to make workspace selection dialog visible in the task manager - Tidy up SWT symlinks * Wed Oct 29 2014 Roland Grunberg - 1:4.4.1-6 - Change external plugin references to requirements. - List external plugin references in the top-level category. * Fri Oct 24 2014 Alexander Kurtakov 1:4.4.1-5 - Rebuild for latest lucene. * Mon Oct 20 2014 Roland Grunberg - 1:4.4.1-4 - Support loading symlinked bundles when location changes. * Wed Oct 01 2014 Mat Booth - 1:4.4.1-3 - Require latest EMF * Wed Oct 01 2014 Mat Booth - 1:4.4.1-2 - Fix s390 launcher build * Fri Sep 26 2014 Mat Booth - 1:4.4.1-1 - Update to Luna SR1 - Drop upstreamed patch and fix permissions on appdata files * Tue Sep 16 2014 Alexander Kurtakov 1:4.4.0-19 - Fix for autocomplete selection color. - Rebuild for latest jetty. * Tue Sep 09 2014 Mat Booth - 1:4.4.0-18 - Symlink more equinox and some core jars into javadir - Enables tycho to unbundle it's eclipse platform jars - Update dep on lucene * Sat Sep 6 2014 Alexander Kurtakov 1:4.4.0-17 - Rebuild for lucene update. * Thu Aug 28 2014 Roland Grunberg - 1:4.4.0-16 - Non-bootstrap build. * Wed Aug 27 2014 Roland Grunberg - 1:4.4.0-15 - Build Eclipse bootstrapped. * Tue Aug 26 2014 Sami Wagiaalla - 1:4.4.0-15 - Build agianst webkitgtk4. * Tue Aug 19 2014 Mat Booth - 1:4.4.0-14 - Rebuild against new ECF * Mon Aug 18 2014 Mat Booth - 1:4.4.0-13 - Drop custom buildId, to keep it lexographically greater than upstream's * Sat Aug 16 2014 Fedora Release Engineering - 1:4.4.0-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Mon Jul 28 2014 Sami Wagiaalla 1:4.4.0-11 - Add patch for webkit2 support. * Mon Jul 28 2014 Roland Grunberg - 1:4.4.0-10 - Provide org.eclipse.tycho:org.eclipse.osgi.compatibility.state. * Mon Jul 21 2014 Alexander Kurtakov 1:4.4.0-9 - Rebuild for new ecf and asm. * Wed Jul 16 2014 Mat Booth - 1:4.4.0-8 - Update eclipse-build snapshot - Tighten up deps on asm * Tue Jul 15 2014 Mat Booth - 1:4.4.0-7 - Add appstream addon metadata for JDT and PDE plugins - Only use GTK3 by default on F22 or newer, rhbz1118317 * Tue Jul 15 2014 Mat Booth - 1:4.4.0-6 - Backport fix for eclipse bz438992 - Only assemble products for current running target environment - Tidy up some unnecessary SCL bits * Tue Jul 08 2014 Mat Booth - 1:4.4.0-5 - Make GTK3 the default SWT implementation in eclipse.ini * Wed Jul 02 2014 Mat Booth - 1:4.4.0-4 - Package the equinox.p2.discovery feature, obsolete the separate package - Update e-b snapshot - BR/R: gogo-command >= 0.14 - Symlink mockito to system jar in testing package * Fri Jun 27 2014 Roland Grunberg - 1:4.4.0-3 - Fix sed delimeter when dealing with paths. * Thu Jun 26 2014 Roland Grunberg - 1:4.4.0-2 - Update eclipse-build with improvements to bundle testing. * Wed Jun 25 2014 Mat Booth - 1:4.4.0-1 - Update to final Luna release - Rebuild against newer dependencies * Tue Jun 24 2014 Alexander Kurtakov 1:4.4.0-0.31.git201406042000 - Non bootstrap build. * Tue Jun 24 2014 Alexander Kurtakov 1:4.4.0-0.30.git201406042000 - Bootstrap build for aarch64. * Fri Jun 13 2014 Michael Simacek - 1:4.4.0-0.29.git201406042000 - Rebuild against new jetty * Tue Jun 10 2014 Alexander Kurtakov 1:4.4.0-0.28.git201406042000 - Drop jdt mvn depmaps. * Thu Jun 05 2014 Mat Booth - 1:4.4.0-0.27.git201406042000 - Remove pre-built launcher binaries - Remove last uses of tomcat * Tue Jun 03 2014 Mat Booth - 1:4.4.0-0.26.git201406022000 - Update to latest I-build * Fri May 30 2014 Michael Simacek - 1:4.4.0-0.25.git201405252000 - Rebuild against new jetty * Tue May 27 2014 Alexander Kurtakov 1:4.4.0-0.24.git201405252000 - Pass eclipse.javadoc as param to mvn call to fix javadoc generation. * Tue May 27 2014 Alexander Kurtakov 1:4.4.0-0.23.git201405252000 - Update to latest I-build. * Fri May 23 2014 Alexander Kurtakov 1:4.4.0-0.22.git201405112000 - Rebuild for new lucene/junit metadata. * Wed May 21 2014 Alexander Kurtakov 1:4.4.0-0.21.git201405112000 - Drop tomcat BR/Rs. * Wed May 21 2014 Alexander Kurtakov 1:4.4.0-0.20.git201405112000 - Drop cglib dep. - Apply jetty 9 patch unconditionally. * Mon May 19 2014 Mat Booth - 1:4.4.0-0.19.git201405112000 - Drop unnecessary BRs - Update e-b snapshot for new felix-gogo-* jar locations * Mon May 12 2014 Alexander Kurtakov 1:4.4.0-0.18.git201405112000 - Update to latest I-build. - Move pre-luna changelog to separate file. * Wed May 07 2014 Mat Booth - 1:4.4.0-0.17.git201405062000 - Update to latest I-build of Luna 4.4.0 - New e-b snapshot for updated gnome appdata - Rebuilt for new dependency versions. * Thu May 01 2014 Mat Booth - 1:4.4.0-0.16.git201405010200 - Update to latest I-build of Luna 4.4.0 * Mon Apr 28 2014 Mat Booth - 1:4.4.0-0.15.git201404280800 - Don't mirror emf and ecf into the final p2 repository * Mon Apr 28 2014 Mat Booth - 1:4.4.0-0.14.git201404280800 - Update to latest I-build of Luna 4.4.0 * Thu Apr 24 2014 Mat Booth - 1:4.4.0-0.13.git201404220800 - Drop the use of custom jdtpde repository build from e-b - Don't use a custom product ID - Add BR on mockito - Fix pixmaps directory ownership * Tue Apr 22 2014 Mat Booth - 1:4.4.0-0.12.git201404220800 - Update to latest I-build of Luna 4.4.0 - Enable Java 8 specific bundles - Rebuild for updated lucene dependency * Tue Apr 15 2014 Mat Booth - 1:4.4.0-0.11.git201404150800 - Update to latest I-build of Luna 4.4.0 - Fix missing copy resource step on ppc64le - Don't build bundles that are only applicable on non-linux platforms * Thu Apr 10 2014 Mat Booth - 1:4.4.0-0.10.git201404081645 - Drop unnecessary BR on GConf2-devel - Drop unneeded patch: fix-swt-build-in-rawhide * Thu Apr 10 2014 Mat Booth - 1:4.4.0-0.9.git201404081645 - Make globbing work on arches that don't have platform specific fragments. * Tue Apr 08 2014 Mat Booth - 1:4.4.0-0.8.git201404081645 - Update to latest I-build of Luna 4.4.0 - Don't unnecessarily create platform specific fragments for o.e.core.net and o.e.core.filesystem. - Accomodate for ppc64le architecture. - Drop upstreamed patch: objectweb-asm * Thu Apr 03 2014 Mat Booth - 1:4.4.0-0.7.git201404011500 - Fix symlinking junit when it is a directory. * Thu Apr 03 2014 Mat Booth - 1:4.4.0-0.6.git201404011500 - Non-bootstrap build. * Wed Apr 02 2014 Mat Booth - 1:4.4.0-0.5.git201404011500 - Add patch for org.ojectweb.asm -> org.ojectweb.asm.all * Wed Apr 02 2014 Mat Booth - 1:4.4.0-0.4.git201404011500 - Move secondary-arch fragment generation into e-b. * Wed Apr 02 2014 Mat Booth - 1:4.4.0-0.3.git201404011500 - Update eclipse-build snapshot * Tue Apr 01 2014 Mat Booth - 1:4.4.0-0.2.git201404011500 - Update to latest I-build of Luna 4.4.0 - Require objectweb-asm >= 5.0.1 * Mon Mar 24 2014 Mat Booth - 1:4.4.0-0.1.M6 - Update to M6 pre-release of Luna 4.4.0 - Bootstrap build - Drop upstreamed patches: do-not-run-as-root, bug-408505, bug-404448, osgi-unpack-sources - Add patch to use mockito-core 1.9