Compare commits

...

11 Commits

Author SHA1 Message Date
openeuler-ci-bot
b95ff1562c
!33 同步22.09修改解决编译失败
From: @wk333 
Reviewed-by: @cherry530 
Signed-off-by: @cherry530
2022-10-31 06:20:13 +00:00
wk333
b970fd7be2 Sync 22.09 branch for fix build error 2022-10-31 09:46:32 +08:00
openeuler-ci-bot
7eb44fa0f6
!30 [sync] PR-28: Fix CVE-2020-27225
From: @openeuler-sync-bot 
Reviewed-by: @wangchong1995924 
Signed-off-by: @wangchong1995924
2022-08-17 06:10:57 +00:00
wk333
7e49835058 Fix CVE-2020-27225
(cherry picked from commit 05f63e425418b33e79b312b3da1174fe92af5e84)
2022-08-17 09:32:06 +08:00
openeuler-ci-bot
dd0ef6646b
!27 [sync] PR-16: 解决eclipse编译失败
From: @openeuler-sync-bot 
Reviewed-by: @wangchong1995924 
Signed-off-by: @wangchong1995924
2022-08-17 01:22:31 +00:00
starlet-dx
2df424ffc5 Fix build error in org.eclipse.test.
(cherry picked from commit 07893f9ee9a6306b0b6f4764fecca7d6f8a8999f)
2022-07-14 16:39:01 +08:00
openeuler-ci-bot
ff810a71ad !15 fix build error caused by GCC upgrade to 10
From: @lipingEmmaSiguyi
Reviewed-by: @small_leek,@wangchong1995924
Signed-off-by: @wangchong1995924
2021-08-03 11:28:45 +00:00
Li Ping
71bd7cda3e add org-eclipse-swt.patch and update eclipse.spec 2021-08-02 21:43:19 +08:00
openeuler-ci-bot
462e01cff3 !8 modify the bootstrap parameter to 1
Merge pull request !8 from lyn/master
2020-08-25 11:17:35 +08:00
lyn1001
3b9bb62b3f modify the bootstrap parameter to 1 2020-08-25 10:23:01 +08:00
openeuler-ci-bot
b5091595ec !7 update to 4.11-1
Merge pull request !7 from lyn/master
2020-08-21 15:15:04 +08:00
8 changed files with 539 additions and 1531 deletions

767
11111
View File

@ -1,767 +0,0 @@
Name: eclipse
Epoch: 1
Version: 4.11
Release: 1
Summary: An open, extensible IDE
License: EPL-2.0
URL: http://www.eclipse.org/
Source0: http://download.eclipse.org/eclipse/downloads/drops4/S-4.11RC2-201903070500/eclipse-platform-sources-4.11RC2.tar.xz
Source1: http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.eclipse-build.git/snapshot/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz
Patch0: eclipse-no-source-for-dependencies.patch
Patch1: eclipse-p2-pick-up-renamed-jars.patch
Patch2: eclipse-ignore-version-when-calculating-home.patch
Patch3: explicit-hamcrest.patch
Patch4: eclipse-secondary-arches.patch
Patch5: eclipse-debug-symbols.patch
Patch12: eclipse-fix-dropins.patch
Patch13: eclipse-feature-plugins-to-category-ius.patch
Patch15: eclipse-support-symlink-bundles.patch
Patch20: eclipse-fix-tests.patch
Patch21: eclipse-adjust-droplets.patch
Patch22: eclipse-pde-tp-support-droplets.patch
Patch24: eclipse-disable-uses-constraints.patch
Patch26: eclipse-make-droplets-runnable.patch
Patch27: eclipse-disable-droplets-in-dropins.patch
Patch28: prefer_x11_backend.patch
Patch29: fix_ant_build.patch
Patch30: eclipse-hide-droplets-from-install-wizard.patch
ExcludeArch: s390 armv3l armv4b armv4l armv4tl armv5tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl armv8l armv8hl armv8hnl armv8hcnl i386 i486 i586 i686 pentium3 pentium4 athlon geode
BuildRequires: maven-local tycho tycho-extras cbi-plugins maven-antrun-plugin
BuildRequires: maven-assembly-plugin maven-dependency-plugin maven-enforcer-plugin
BuildRequires: maven-install-plugin maven-shade-plugin xml-maven-plugin rhino
BuildRequires: sonatype-oss-parent rsync make, gcc zip, unzip desktop-file-utils
BuildRequires: pkgconfig(glib-2.0) pkgconfig(gio-2.0) pkgconfig(nspr) pkgconfig(glu)
BuildRequires: pkgconfig(gl) pkgconfig(cairo) pkgconfig(xt) pkgconfig(xtst)
BuildRequires: pkgconfig(libsecret-1) pkgconfig(gtk+-2.0) pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(webkit2gtk-4.0) icu4j >= 1:63.1 ant >= 1.10.5
BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf
BuildRequires: ant-commons-net ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf ant-xz ant-junit5
BuildRequires: jsch >= 0:0.1.46 apache-commons-el >= 1.0 apache-commons-logging
BuildRequires: apache-commons-codec apache-commons-jxpath apache-commons-fileupload
BuildRequires: apache-sshd osgi(org.apache.felix.gogo.shell) >= 1.1.0
BuildRequires: osgi(org.apache.felix.gogo.command) >= 1.0.2
BuildRequires: osgi(org.apache.felix.gogo.runtime) >= 1.1.0
BuildRequires: osgi(org.apache.felix.scr) >= 2.1.14
BuildRequires: osgi(org.eclipse.jetty.util) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.server) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.http) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.continuation) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.io) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.security) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.servlet) >= 9.4.15
BuildRequires: lucene-core >= 7.7.0 lucene-analysis >= 7.7.0
BuildRequires: lucene-queryparser >= 7.7.0
BuildRequires: lucene-analyzers-smartcn >= 7.7.0 junit >= 4.12 junit5 >= 5.4.0
BuildRequires: apiguardian hamcrest sat4j objectweb-asm >= 7.0 sac batik >= 1.10
BuildRequires: batik-css >= 1.10 xmlgraphics-commons >= 2.2 xml-commons-apis atinject
BuildRequires: eclipse-ecf-core >= 3.14.4 eclipse-emf-core >= 1:2.16.0 eclipse-license2
BuildRequires: glassfish-annotation-api glassfish-el-api >= 3.0.1 glassfish-el >= 3.0.1
BuildRequires: glassfish-jsp-api >= 2.2.1 glassfish-jsp >= 2.2.5
BuildRequires: glassfish-servlet-api >= 3.1.0 httpcomponents-core httpcomponents-client jsoup
BuildRequires: xz-java mockito >= 2.23.9 osgi(osgi.annotation)
%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-headless >= 1:1.8.0 javapackages-tools gtk3 webkitgtk4
%description swt
SWT Library for GTK+.
%package equinox-osgi
Summary: Eclipse OSGi - Equinox
Requires: java-headless >= 1:1.8.0 javapackages-tools
Provides: osgi(system.bundle) = 1:4.11
%description equinox-osgi
Eclipse OSGi - Equinox
%package platform
Summary: Eclipse platform common files
Recommends: eclipse-abrt
Recommends: eclipse-usage
Requires: ant >= 1.10.5
Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf
Requires: ant-commons-net ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf ant-xz ant-junit5
Requires: jsch >= 0.1.46-2 apache-commons-el >= 1.0 apache-commons-logging
Requires: apache-commons-codec apache-commons-jxpath
Requires: osgi(org.apache.felix.gogo.shell) >= 1.1.0
Requires: osgi(org.apache.felix.gogo.command) >= 1.0.2
Requires: osgi(org.apache.felix.gogo.runtime) >= 1.1.0
Requires: osgi(org.apache.felix.scr) >= 2.1.14
Requires: osgi(org.eclipse.jetty.util) >= 9.4.15
Requires: osgi(org.eclipse.jetty.server) >= 9.4.15
Requires: osgi(org.eclipse.jetty.http) >= 9.4.15
Requires: osgi(org.eclipse.jetty.continuation) >= 9.4.15
Requires: osgi(org.eclipse.jetty.io) >= 9.4.15
Requires: osgi(org.eclipse.jetty.security) >= 9.4.15
Requires: osgi(org.eclipse.jetty.servlet) >= 9.4.15
Requires: lucene-core >= 7.7.0 lucene-analysis >= 7.7.0
Requires: lucene-queryparser >= 7.7.0
Requires: lucene-analyzers-smartcn >= 7.7.0 sat4j sac batik >= 1.10
Requires: batik-css >= 1.10 xmlgraphics-commons >= 2.2 xml-commons-apis atinject
Requires: eclipse-ecf-core >= 3.14.4 eclipse-emf-core >= 1:2.16.0
Requires: glassfish-annotation-api glassfish-el-api >= 3.0.1 glassfish-el >= 3.0.1
Requires: glassfish-jsp-api >= 2.2.1 glassfish-jsp >= 2.2.5
Requires: glassfish-servlet-api >= 3.1.0 icu4j >= 1:63.1
Requires: eclipse-swt = 1:4.11-1
Requires: eclipse-equinox-osgi = 1:4.11-1 httpcomponents-core
Requires: httpcomponents-client osgi(org.tukaani.xz)
Provides: eclipse-nls = 4.11-1
Obsoletes: eclipse-nls < 4.11-1
%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
BuildArch: noarch
Provides: eclipse = 1:4.11-1
Requires: eclipse-platform = 1:4.11-1 junit >= 4.12 junit5 >= 5.4.0
Requires: osgi(org.hamcrest.core)
Obsoletes: eclipse-recommenders <= 2.5.4
%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
Requires: eclipse-platform = 1:4.11-1
Requires: eclipse-jdt = 1:4.11-1 objectweb-asm >= 7.0
%description pde
Eclipse Plugin Development Environment. This package is required for
developing Eclipse plugins.
%package p2-discovery
Summary: Eclipse p2 Discovery
BuildArch: noarch
Requires: eclipse-platform = 1:4.11-1
%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 contributor-tools
Summary: Tools for Eclipse Contributors
Requires: eclipse-platform = 1:4.11-1 easymock hamcrest
Requires: mockito >= 2.23.9
%description contributor-tools
This package contains tools specifically for Eclipse contributors. It includes
SWT tools, E4 tools, Rel-Eng tools and Eclipse Test frameworks.
%package tests
Summary: Eclipse Tests
Requires: eclipse-contributor-tools = 1:4.11-1
%description tests
Eclipse Tests.
%prep
%setup -T -c
tar --strip-components=1 -xf /root/rpmbuild/SOURCES/eclipse-platform-sources-4.11RC2.tar.xz
tar --strip-components=1 -xf /root/rpmbuild/SOURCES/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz
find . ! -path "*/JCL/*" ! -name "rtstubs*.jar" ! -name "java10api.jar" ! -name "j9stubs.jar" \
-type f -name *.jar -delete
find . -type f -name *.class -delete
find . -type f -name *.so -delete
find . -type f -name *.dll -delete
find . -type f -name *.jnilib -delete
rm -rf rt.equinox.binaries/org.eclipse.equinox.executable/{bin,contributed}/
%patch0
%patch1
%patch2
%patch3
%patch4 -p1
%patch5
%patch12
%patch13 -p1
%patch15
%patch20
%patch21
%patch22
%patch24
%patch26
%patch27
%patch29
%patch30 -p1
rm eclipse.platform.swt/tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/accessibility/Bug543949_ComponentExtentsTest.py
%pom_remove_dep :tycho-buildtimestamp-jgit eclipse-platform-parent
%pom_remove_dep :tycho-sourceref-jgit eclipse-platform-parent
%pom_xpath_remove 'pom:configuration/pom:timestampProvider' eclipse-platform-parent
%pom_xpath_remove 'pom:configuration/pom:sourceReferences' eclipse-platform-parent
%pom_xpath_remove "pom:configuration/pom:target" eclipse-platform-parent
%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 eclipse.platform.repository eclipse.platform.releng.tychoeclipsebuilder
%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.console.ssh.tests rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.console.tests 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.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
%pom_disable_module bundles/org.eclipse.equinox.p2.artifact.optimizers rt.equinox.p2
%pom_disable_module bundles/org.eclipse.equinox.p2.tests.optimizers rt.equinox.p2
%pom_disable_module bundles/org.eclipse.equinox.p2.artifact.processors rt.equinox.p2
%pom_disable_module org.eclipse.jdt.annotation_v1 eclipse.jdt.core
%pom_xpath_remove "plugin[@version='1.1.400.qualifier']" eclipse.jdt/org.eclipse.jdt-feature/feature.xml
sed -i -e '/org\.eclipse\.jdt\.annotation;bundle-version="\[1\.1\.0,2\.0\.0)"/d' \
eclipse.jdt.core/org.eclipse.jdt.core.tests.{model,builder,compiler}/META-INF/MANIFEST.MF \
eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/META-INF/MANIFEST.MF \
eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF
sed -i -e 's/javax.annotation/javax.annotation-api/' eclipse.jdt.core/org.eclipse.jdt.core.tests.compiler/META-INF/MANIFEST.MF
%pom_disable_module bundles/org.eclipse.sdk.examples eclipse.platform.releng
%pom_disable_module features/org.eclipse.sdk.examples-feature eclipse.platform.releng
%pom_disable_module examples/org.eclipse.swt.examples.ole.win32 eclipse.platform.swt
%pom_disable_module bundles/org.eclipse.equinox.http.servletbridge rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.servletbridge rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.servletbridge.template rt.equinox.bundles
%pom_disable_module ui/org.eclipse.pde.ui.tests.smartimport eclipse.pde.ui
%pom_remove_plugin :maven-enforcer-plugin eclipse-platform-parent
rm -rf eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.{aarch64,s390x}
rm -rf rt.equinox.framework/bundles/org.eclipse.equinox.launcher.gtk.linux.{aarch64,s390x}
for dir in rt.equinox.binaries rt.equinox.framework/bundles eclipse.platform.swt.binaries/bundles ; do
utils/ensure_arch.sh "$dir" x86_64 aarch64 s390x
done
TYCHO_ENV="<environment><os>linux</os><ws>gtk</ws><arch>aarch64</arch></environment>"
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse-platform-parent
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk
for b in `ls eclipse.platform.swt.binaries/bundles | grep -P -e 'org.eclipse.swt\.(?!gtk\.linux.aarch64$)'` ; do
module=$(grep ">bundles/$b<" eclipse.platform.swt.binaries/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b eclipse.platform.swt.binaries
%pom_xpath_inject "pom:excludes" "<plugin id='$b'/>" eclipse.platform.ui/features/org.eclipse.e4.rcp
fi
done
for b in `ls rt.equinox.framework/bundles | grep -P -e 'org.eclipse.equinox.launcher\.(?!gtk\.linux.aarch64$)'` ; do
module=$(grep ">bundles/$b<" rt.equinox.framework/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b rt.equinox.framework
%pom_xpath_remove -f "plugin[@id='$b']" rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml
fi
done
for b in `(cd rt.equinox.bundles/bundles && ls -d *{macosx,win32,linux}*) | grep -P -e 'org.eclipse.equinox.security\.(?!linux\.aarch64$)'` ; do
module=$(grep ">bundles/$b<" rt.equinox.bundles/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b rt.equinox.bundles
%pom_xpath_remove -f "plugin[@id='$b']" rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml
fi
done
for b in `ls eclipse.platform.team/bundles/org.eclipse.core.net/fragments/ | grep -P -e 'org.eclipse.core.net\.(?!linux.aarch64$)'` ; do
%pom_disable_module bundles/org.eclipse.core.net/fragments/$b eclipse.platform.team
done
for b in `ls eclipse.platform.resources/bundles/ | grep -P -e 'org.eclipse.core.filesystem\.(?!linux\.aarch64$)'` ; do
module=$(grep ">bundles/$b<" eclipse.platform.resources/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b eclipse.platform.resources
%pom_xpath_remove -f "plugin[@id='$b']" eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml
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.compare.win32 eclipse.platform.team
%pom_disable_module org.eclipse.e4.ui.workbench.renderers.swt.cocoa eclipse.platform.ui/bundles
%pom_disable_module org.eclipse.ui.cocoa eclipse.platform.ui/bundles
%pom_disable_module org.eclipse.ui.win32 eclipse.platform.ui/bundles
%pom_disable_module bundles/org.eclipse.core.resources.win32.x86_64 eclipse.platform.resources
for f in eclipse.jdt/org.eclipse.jdt-feature/feature.xml \
eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml \
eclipse.platform.releng/features/org.eclipse.rcp/feature.xml \
eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml ; do
%pom_xpath_remove -f "plugin[@os='macosx']" $f
%pom_xpath_remove -f "plugin[@os='win32']" $f
%pom_xpath_remove -f "plugin[@ws='win32']" $f
for arch in x86 x86_64 arm aarch64 ppc64le s390x ; do
if [ "$arch" != "aarch64" ] ; then
%pom_xpath_remove -f "plugin[@arch='$arch']" $f
fi
done
done
%pom_disable_module tests/org.eclipse.swt.tests.fragments.feature eclipse.platform.swt
%pom_xpath_remove "pom:dependency-resolution" eclipse.platform.swt/tests/org.eclipse.swt.tests{,.gtk}
%pom_disable_module eclipse.platform.ui.tools
%pom_disable_module features/org.eclipse.releng.tools eclipse.platform.releng
%pom_disable_module bundles/org.eclipse.releng.tools eclipse.platform.releng
%pom_disable_module bundles/org.eclipse.releng.tests eclipse.platform.releng
%pom_xpath_remove "plugin[@id='org.eclipse.releng.tests']" \
eclipse.platform.releng/features/org.eclipse.sdk.tests/feature.xml
sed -i -e '/<features>/a<feature id="org.eclipse.core.runtime.feature"/>' \
eclipse.platform.releng.tychoeclipsebuilder/platform/platform.product
sed -i -e '/org.eclipse.ui.themes/i<plugin id="org.eclipse.jdt.core.compiler.batch" download-size="0" install-size="0" version="0.0.0" unpack="false"/>' \
eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
sed -i -e '/<\/excludes>/i<plugin id="org.eclipse.jdt.core.compiler.batch"/>' \
eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml
%pom_xpath_remove "plugin[@id='org.eclipse.core.tests.harness']" eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
%pom_xpath_set "pom:plugin[pom:artifactId = 'tycho-packaging-plugin']/pom:configuration/pom:archive/pom:addMavenDescriptor" "true" eclipse-platform-parent
for f in rt.equinox.framework/features/org.eclipse.equinox.executable.feature/build.properties; do
grep '^root\.linux\.gtk\.aarch64[.=]' $f > tmp
sed -i -e '/^root\./d' $f && cat tmp >> $f
done
mkdir -p rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/aarch64
for f in eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.*/META-INF/MANIFEST.MF \
eclipse.platform.resources/bundles/org.eclipse.core.filesystem.linux.*/META-INF/MANIFEST.MF \
eclipse.platform.team/bundles/org.eclipse.core.net.linux.*/META-INF/MANIFEST.MF ; do
echo -e "Eclipse-BundleShape: dir\n\n" >> $f;
done
%pom_xpath_inject "pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='tycho-compiler-plugin']/pom:dependencies" \
"<dependency><groupId>org.eclipse</groupId><artifactId>java10api</artifactId><version>10</version></dependency>" eclipse-platform-parent
dependencies/fake_ant_dependency.sh
sed -i '/javax\.servlet\.jsp/ s/2\.3/2\.4/' rt.equinox.bundles/bundles/org.eclipse.equinox.jsp.jasper/META-INF/MANIFEST.MF
find -name feature.xml | xargs sed -i -e 's|"javax.servlet"|"javax.servlet-api"|'
sed -i -e "2iRequire-Bundle: javax.servlet-api" rt.equinox.bundles/bundles/org.eclipse.equinox.http.{jetty,servlet}/META-INF/MANIFEST.MF
sed -i -e '/org.apache.felix.service.command/s/;status=provisional//' rt.equinox.bundles/bundles/org.eclipse.equinox.console{,.ssh}/META-INF/MANIFEST.MF
%pom_remove_plugin org.eclipse.jetty:jetty-jspc-maven-plugin eclipse.platform.ua/org.eclipse.help.webapp
sed -i '22,51d' eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/assembly/assembly.xml
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi/osgi/
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.services/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.util/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/osgi/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.coordinator/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.log.stream/osgi/
%mvn_package "::pom::" __noinstall
%mvn_package ":*tests*" tests
%mvn_package ":org.eclipse.equinox.frameworkadmin.test" tests
%mvn_package ":org.eclipse.equinox.p2.installer" tests
%mvn_package ":org.eclipse.jface.examples.databinding" tests
%mvn_package ":org.eclipse.pde.tools.versioning" tests
%mvn_package ":org.eclipse.update.core" tests
%mvn_package "org.eclipse.test:org.eclipse.test" contributor-tools
%mvn_package ":*examples*" __noinstall
%mvn_package "::jar:sources{,-feature}:" sdk
%mvn_package ":org.eclipse.jdt.doc.isv" sdk
%mvn_package ":org.eclipse.platform.doc.isv" sdk
%mvn_package ":org.eclipse.equinox.executable" sdk
%mvn_package "org.eclipse.jdt{,.feature}:" jdt
%mvn_package ":org.eclipse.ant.{launching,ui}" jdt
%mvn_package ":org.eclipse.equinox.p2.discovery.{feature,compatibility}" p2-discovery
%mvn_package ":org.eclipse.equinox.p2{,.ui}.discovery" p2-discovery
%mvn_package ":org.eclipse.e4{,.core}.tools*" contributor-tools
%mvn_package ":org.eclipse.releng.tools" contributor-tools
%mvn_package ":org.eclipse.swt.tools*" contributor-tools
%mvn_package "org.eclipse.test{,.feature}:" contributor-tools
%mvn_package ":org.eclipse.ant.optional.junit" contributor-tools
%mvn_package "org.eclipse.cvs{,.feature}:" cvs
%mvn_package "org.eclipse.team:org.eclipse.team.cvs*" cvs
%mvn_package "org.eclipse.pde{,.ui,.feature}:" pde
%mvn_package "org.eclipse.ui:org.eclipse.ui.{views.log,trace}" pde
%mvn_package "org.eclipse.sdk{,.feature}:" sdk
%mvn_package ":" __noinstall
%build
export CFLAGS="-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/openEuler/openEuler-hardened-cc1 -fasynchronous-unwind-tables -fstack-clash-protection"
export LDFLAGS="-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/openEuler/openEuler-hardened-ld"
export M_CFLAGS="$CFLAGS"
export M_ARCH="$LDFLAGS"
export MAVEN_OPTS="-Xmx1024m -XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}"
export JAVA_HOME=/usr/lib/jvm/java
sed -i -e '/createSourcesJar/d' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml
(cd eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent && xmvn -e -o -B clean verify)
mv eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/target/javaagent-shaded.jar \
eclipse.jdt.debug/org.eclipse.jdt.launching/lib
QUALIFIER=$(date -u -d"$(stat --format=%y /root/rpmbuild/SOURCES/eclipse-platform-sources-4.11RC2.tar.xz)" +v%Y%m%d-%H%M)
%mvn_build -j -f -- -e -DforceContextQualifier=$QUALIFIER \
-P !api-generation,!build-docs \
-Declipse.javadoc=/usr/bin/javadoc -Dnative=gtk.linux.aarch64 \
-Dtycho.local.keepTarget \
-Dfedora.p2.repos=$(pwd)/.m2/p2/repo-sdk/plugins -DbuildType=X
product="eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64"
dependencies/fake_ant_dependency.sh $product/eclipse/plugins/org.apache.ant_*
dependencies/replace_platform_plugins_with_symlinks.sh $product/eclipse /usr/share/java /usr/lib/java
pushd $product/eclipse
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/*
rm -f icon.xpm
rm -rf features/org.eclipse.emf.* plugins/org.eclipse.emf.* \
features/org.eclipse.ecf.* plugins/org.eclipse.ecf.* plugins/org.eclipse.ecf_*
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
sed -i "s|-Xms40m|-Xms512m|g" eclipse.ini
sed -i "s|-Xmx512m|-Xmx1024m|g" eclipse.ini
sed -i '1i-protect\nroot' eclipse.ini
cat >> eclipse.ini <<EOF
-Dorg.eclipse.swt.browser.UseWebKitGTK=true
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
-XX:CompileCommand=exclude,org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding,<init>
-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=/usr/share/eclipse/dropins
-Dp2.fragments=/usr/lib/eclipse/droplets,/usr/share/eclipse/droplets
-Declipse.p2.skipMovedInstallDetection=true
-Dosgi.resolver.usesMode=ignore
EOF
popd #eclipse
%package debuginfo
Summary: Debug information for package eclipse
Group: Development/Debug
AutoReq: 0
AutoProv: 1
%description debuginfo
This package provides debug information for package eclipse.
Debug information is useful when developing applications that use this
package or when debugging this package.
%files debuginfo -f debugfiles.list
%package debugsource
Summary: Debug sources for package eclipse
Group: Development/Debug
AutoReqProv: 0
%description debugsource
This package provides debug sources for package eclipse.
Debug sources are useful when developing applications that use this
package or when debugging this package.
%files debugsource -f debugsourcefiles.list
%install
%mvn_install
install -d -m 755 $RPM_BUILD_ROOT/etc
install -d -m 755 $RPM_BUILD_ROOT/usr/lib/java
install -d -m 755 $RPM_BUILD_ROOT/usr/share/java/eclipse
install -d -m 755 $RPM_BUILD_ROOT/usr/share/maven-poms
install -d -m 755 $RPM_BUILD_ROOT/usr/bin
install -D eclipse.platform/platform/org.eclipse.platform/eclipse32.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/32x32/apps/eclipse.png
install -D eclipse.platform/platform/org.eclipse.platform/eclipse48.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/48x48/apps/eclipse.png
install -D eclipse.platform/platform/org.eclipse.platform/eclipse256.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/256x256/apps/eclipse.png
install -d $RPM_BUILD_ROOT/usr/share/pixmaps
ln -s /usr/share/icons/hicolor/256x256/apps/eclipse.png \
$RPM_BUILD_ROOT/usr/share/pixmaps/eclipse.png
sed -i -e 's/Exec=eclipse/Exec= eclipse/g' desktopintegration/eclipse.desktop
sed -i -e 's/Name=Eclipse/Name=Eclipse/g' desktopintegration/eclipse.desktop
sed -i -e 's/Icon=eclipse/Icon=eclipse/g' desktopintegration/eclipse.desktop
install -m644 -D desktopintegration/eclipse.desktop $RPM_BUILD_ROOT/usr/share/applications/eclipse.desktop
desktop-file-validate $RPM_BUILD_ROOT/usr/share/applications/eclipse.desktop
install -m644 -D desktopintegration/eclipse.appdata.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse.appdata.xml
install -m644 -D desktopintegration/eclipse-jdt.metainfo.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse-jdt.metainfo.xml
install -m644 -D desktopintegration/eclipse-pde.metainfo.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse-pde.metainfo.xml
LOCAL_PWD=`pwd`
pushd eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64/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/aarch64/eclipse@/usr/lib/eclipse@g" *.profile ; \
gzip *.profile ; \
done
popd
rsync -vrpl eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64/eclipse \
/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/bin
ln -s /usr/lib/eclipse/eclipse
popd
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64//etc/
ln -s /usr/lib/eclipse/eclipse.ini
popd
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins
EQUINOX_JARS=$(ls . | grep -P '^org.eclipse.equinox(?!.*\.ui[\._])' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|')
OSGI_JARS=$(ls . | grep '^org.eclipse.osgi' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|')
popd
location=/usr/lib/eclipse/plugins
while [ "$location" != "/" ] ; do
location=$(dirname $location)
updir="$updir../"
done
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/share/java/eclipse
for J in $EQUINOX_JARS core.contenttype core.jobs core.net core.runtime ; do
DIR=$updir/usr/lib/eclipse/plugins
if [ "$J" != "equinox.http.servlet" ] ; then
[ -e "`ls $DIR/org.eclipse.${J}_*.jar`" ] && ln -s $DIR/org.eclipse.${J}_*.jar ${J}.jar
fi
done
popd
rm -rf .xmvn/ .xmvn-reactor
%mvn_package "org.eclipse.osgi:" equinox-osgi
%mvn_package "org.eclipse.equinox.http:" platform
%mvn_package "org.eclipse.swt:" swt
for J in $OSGI_JARS ; do
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.${J}_*.jar
VER=$(echo $JAR | sed -e "s/.*${J}_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.osgi:$J:jar:$VER" $JAR
if [ "$J" = "osgi" ] ; then
%mvn_alias "org.eclipse.osgi:$J" "org.eclipse.osgi:org.eclipse.$J" "org.eclipse.tycho:org.eclipse.$J" "org.eclipse:$J"
else
%mvn_alias "org.eclipse.osgi:$J" "org.eclipse.osgi:org.eclipse.$J" "org.eclipse.tycho:org.eclipse.$J"
fi
done
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.equinox.http.servlet_*.jar
VER=$(echo $JAR | sed -e "s/.*_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.equinox.http:equinox.http.servlet:jar:$VER" $JAR
%mvn_alias "org.eclipse.equinox.http:equinox.http.servlet" "org.eclipse.equinox.http:servlet"
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.swt_*.jar
VER=$(echo $JAR | sed -e "s/.*_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.swt:org.eclipse.swt:jar:$VER" ./eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.aarch64/target/org.eclipse.swt.gtk.linux.aarch64-*-SNAPSHOT.jar
%mvn_alias "org.eclipse.swt:org.eclipse.swt" "org.eclipse.swt:swt"
%mvn_file "org.eclipse.swt:org.eclipse.swt" swt
%mvn_install
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64//usr/lib/eclipse/
ln -s $(abs2rel /usr/lib/java/swt.jar /usr/lib/eclipse)
popd
unzip eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/target/eclipse-junit-tests-bundle.zip \
-d $RPM_BUILD_ROOT//usr/share/ -x eclipse-testing/runtests.bat eclipse-testing/runtestsmac.sh
cp utils/splitter.xsl $RPM_BUILD_ROOT//usr/share/eclipse-testing
rm $RPM_BUILD_ROOT//usr/share/eclipse-testing/eclipse-junit-tests-*.zip
sed -i '/org.eclipse.equinox.p2.reconciler.test/ d' $RPM_BUILD_ROOT//usr/share/eclipse-testing/equinoxp2tests.properties
cp -r testbundle-to-eclipse-test $RPM_BUILD_ROOT//usr/share/eclipse-testing/testbundle
mv $RPM_BUILD_ROOT//usr/share/eclipse-testing/testbundle/eclipse-runTestBundles $RPM_BUILD_ROOT//usr/bin/eclipse-runTestBundles
find $RPM_BUILD_ROOT//usr/lib/eclipse -name *.so -exec chmod a+x {} \;
install -d -m 755 /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/.pkgs
echo "4.11-1" > /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/.pkgs/Distro
%files swt -f .mfiles-swt
/usr/lib/eclipse/plugins/org.eclipse.swt_*
/usr/lib/eclipse/plugins/org.eclipse.swt.gtk.linux.*
/usr/lib/eclipse/swt.jar
/usr/lib/java/swt.jar
%files platform -f .mfiles-platform
/usr/bin/eclipse
/usr/lib/eclipse/eclipse
/usr/lib/eclipse/.eclipseproduct
/usr/lib/eclipse/.pkgs
%config /usr/lib/eclipse/eclipse.ini
%config /etc/eclipse.ini
/usr/share/applications/*
/usr/share/pixmaps/*
/usr/share/icons/*/*/apps/*
/usr/share/appdata/eclipse.appdata.xml
%dir /usr/lib/eclipse/configuration/
%dir /usr/lib/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/
/usr/lib/eclipse/configuration/config.ini
/usr/lib/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info
/usr/lib/eclipse/features/org.eclipse.core.runtime.feature_*
/usr/lib/eclipse/features/org.eclipse.e4.rcp_*
/usr/lib/eclipse/features/org.eclipse.equinox.core.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.core.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.extras.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.rcp.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.user.ui_*
/usr/lib/eclipse/features/org.eclipse.help_*
/usr/lib/eclipse/features/org.eclipse.platform_*
/usr/lib/eclipse/features/org.eclipse.rcp_*
/usr/lib/eclipse/plugins/com.ibm.icu_*
/usr/lib/eclipse/plugins/com.jcraft.jsch_*
/usr/lib/eclipse/plugins/com.sun.el.javax.el_*
/usr/lib/eclipse/plugins/javax.*
/usr/lib/eclipse/plugins/org.apache.*
/usr/lib/eclipse/plugins/org.eclipse.ant.core_*
/usr/lib/eclipse/plugins/org.eclipse.compare_*
/usr/lib/eclipse/plugins/org.eclipse.compare.core_*
/usr/lib/eclipse/plugins/org.eclipse.core.commands_*
/usr/lib/eclipse/plugins/org.eclipse.core.contenttype_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.beans_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.observable_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.property_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding_*
/usr/lib/eclipse/plugins/org.eclipse.core.expressions_*
/usr/lib/eclipse/plugins/org.eclipse.core.externaltools_*
/usr/lib/eclipse/plugins/org.eclipse.core.filebuffers_*
/usr/lib/eclipse/plugins/org.eclipse.core.filesystem*
/usr/lib/eclipse/plugins/org.eclipse.core.jobs_*
/usr/lib/eclipse/plugins/org.eclipse.core.net*
/usr/lib/eclipse/plugins/org.eclipse.core.resources_*
/usr/lib/eclipse/plugins/org.eclipse.core.runtime_*
/usr/lib/eclipse/plugins/org.eclipse.core.variables_*
/usr/lib/eclipse/plugins/org.eclipse.debug.core_*
/usr/lib/eclipse/plugins/org.eclipse.debug.ui_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.commands_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.contexts_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.annotations_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.extensions_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.extensions.supplier_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.services_*
/usr/lib/eclipse/plugins/org.eclipse.e4.emf.xpath_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.bindings_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.core_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.swt.theme_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.di_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.dialogs_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.model.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.services_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.swt.gtk_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.widgets_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench3_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.addons.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.renderers.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.swt_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.app_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.bidi_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.common_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.concurrent_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.console_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.ds_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.event_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.frameworkadmin_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.frameworkadmin.equinox_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.jetty_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.servlet_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.jsp.jasper_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.jsp.jasper.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.launcher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.launcher.gtk.linux.*_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.artifact.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.console_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.core_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.director_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.director.app_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.directorywatcher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.engine_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.extensionlocation_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.garbagecollector_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.jarprocessor_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.metadata_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.metadata.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.operations_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.publisher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.publisher.eclipse_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.reconciler.dropins_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.repository.tools_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.natives_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.transport.ecf_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.importexport_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.updatechecker_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.updatesite_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.preferences_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.security*
/usr/lib/eclipse/plugins/org.eclipse.equinox.simpleconfigurator_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.simpleconfigurator.manipulator_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.util_*
/usr/lib/eclipse/plugins/org.eclipse.help_*
/usr/lib/eclipse/plugins/org.eclipse.help.base_*
/usr/lib/eclipse/plugins/org.eclipse.help.ui_*
/usr/lib/eclipse/plugins/org.eclipse.help.webapp_*
/usr/lib/eclipse/plugins/org.eclipse.jdt.core.compiler.batch_*
/usr/lib/eclipse/plugins/org.eclipse.jetty.*
/usr/lib/eclipse/plugins/org.eclipse.jface_*
/usr/lib/eclipse/plugins/org.eclipse.jface.databinding_*
/usr/lib/eclipse/plugins/org.eclipse.jface.text_*
/usr/lib/eclipse/plugins/org.eclipse.jsch.core_*
/usr/lib/eclipse/plugins/org.eclipse.jsch.ui_*
/usr/lib/eclipse/plugins/org.eclipse.ltk.core.refactoring_*
/usr/lib/eclipse/plugins/org.eclipse.ltk.ui.refactoring_*
/usr/lib/eclipse/plugins/org.eclipse.platform_*
/usr/lib/eclipse/plugins/org.eclipse.platform.doc.user_*
/usr/lib/eclipse/plugins/org.eclipse.rcp_*
/usr/lib/eclipse/plugins/org.eclipse.search_*
/usr/lib/eclipse/plugins/org.eclipse.team.core_*
/usr/lib/eclipse/plugins/org.eclipse.team.genericeditor.diff.extension_*
/usr/lib/eclipse/plugins/org.eclipse.team.ui_*
/usr/lib/eclipse/plugins/org.eclipse.text_*
/usr/lib/eclipse/plugins/org.eclipse.ui_*
/usr/lib/eclipse/plugins/org.eclipse.ui.browser_*
/usr/lib/eclipse/plugins/org.eclipse.ui.cheatsheets_*
/usr/lib/eclipse/plugins/org.eclipse.ui.console_*
/usr/lib/eclipse/plugins/org.eclipse.ui.editors_*
/usr/lib/eclipse/plugins/org.eclipse.ui.externaltools_*
/usr/lib/eclipse/plugins/org.eclipse.ui.forms_*
/usr/lib/eclipse/plugins/org.eclipse.ui.genericeditor_*
/usr/lib/eclipse/plugins/org.eclipse.ui.ide_*
/usr/lib/eclipse/plugins/org.eclipse.ui.ide.application_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro.quicklinks_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro.universal_*
/usr/lib/eclipse/plugins/org.eclipse.ui.monitoring_*
/usr/lib/eclipse/plugins/org.eclipse.ui.navigator_*
/usr/lib/eclipse/plugins/org.eclipse.ui.navigator.resources_*
/usr/lib/eclipse/plugins/org.eclipse.ui.net_*
/usr/lib/eclipse/plugins/org.eclipse.ui.themes_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views.log_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views.properties.tabbed_*
/usr/lib/eclipse/plugins/org.eclipse.ui.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.ui.workbench.texteditor_*
/usr/lib/eclipse/plugins/org.eclipse.update.configurator_*
/usr/lib/eclipse/plugins/org.eclipse.urischeme_*
/usr/lib/eclipse/plugins/org.glassfish.web.javax.servlet.jsp_*
/usr/lib/eclipse/plugins/org.kxml2_*
/usr/lib/eclipse/plugins/org.sat4j.core_*
/usr/lib/eclipse/plugins/org.sat4j.pb_*
/usr/lib/eclipse/plugins/org.tukaani.xz_*
/usr/lib/eclipse/plugins/org.w3c.css.sac_*
/usr/lib/eclipse/plugins/org.w3c.dom.svg_*
/usr/lib/eclipse/plugins/org.xmlpull_*
%doc /usr/lib/eclipse/readme
/usr/lib/eclipse/artifacts.xml
/usr/lib/eclipse/p2
/usr/share/java/eclipse/core*
/usr/share/java/eclipse/equinox*
%files jdt -f .mfiles-jdt
/usr/share/appdata/eclipse-jdt.metainfo.xml
%files pde -f .mfiles-pde -f .mfiles-cvs -f .mfiles-sdk
/usr/share/appdata/eclipse-pde.metainfo.xml
%files p2-discovery -f .mfiles-p2-discovery
%files contributor-tools -f .mfiles-contributor-tools
%files tests -f .mfiles-tests
/usr/bin/eclipse-runTestBundles
/usr/share/eclipse-testing
%files equinox-osgi -f .mfiles-equinox-osgi
/usr/lib/eclipse/plugins/org.eclipse.osgi_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.compatibility.state_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.services_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.util_*
%changelog
* Tue Aug 18 2020 yanan li <liyanan032@huawei.com> - 1:4.11-1
- upgrade to 4.11-1
* Fri Nov 22 2019 sunguoshuai <sunguoshuai@huawei.com> - 1:4.9.0-3
- Package init.

759
2222
View File

@ -1,759 +0,0 @@
Name: eclipse
Epoch: 1
Version: 4.11
Release: 1
Summary: An open, extensible IDE
License: EPL-2.0
URL: http://www.eclipse.org/
Source0: http://download.eclipse.org/eclipse/downloads/drops4/S-4.11RC2-201903070500/eclipse-platform-sources-4.11RC2.tar.xz
Source1: http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.eclipse-build.git/snapshot/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz
Patch0: eclipse-no-source-for-dependencies.patch
Patch1: eclipse-p2-pick-up-renamed-jars.patch
Patch2: eclipse-ignore-version-when-calculating-home.patch
Patch3: explicit-hamcrest.patch
Patch4: eclipse-secondary-arches.patch
Patch5: eclipse-debug-symbols.patch
Patch12: eclipse-fix-dropins.patch
Patch13: eclipse-feature-plugins-to-category-ius.patch
Patch15: eclipse-support-symlink-bundles.patch
Patch20: eclipse-fix-tests.patch
Patch21: eclipse-adjust-droplets.patch
Patch22: eclipse-pde-tp-support-droplets.patch
Patch24: eclipse-disable-uses-constraints.patch
Patch26: eclipse-make-droplets-runnable.patch
Patch27: eclipse-disable-droplets-in-dropins.patch
Patch28: prefer_x11_backend.patch
Patch29: fix_ant_build.patch
Patch30: eclipse-hide-droplets-from-install-wizard.patch
ExcludeArch: s390 armv3l armv4b armv4l armv4tl armv5tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl armv8l armv8hl armv8hnl armv8hcnl i386 i486 i586 i686 pentium3 pentium4 athlon geode
BuildRequires: maven-local tycho tycho-extras cbi-plugins maven-antrun-plugin
BuildRequires: maven-assembly-plugin maven-dependency-plugin maven-enforcer-plugin
BuildRequires: maven-install-plugin maven-shade-plugin xml-maven-plugin rhino
BuildRequires: sonatype-oss-parent rsync make, gcc zip, unzip desktop-file-utils
BuildRequires: pkgconfig(glib-2.0) pkgconfig(gio-2.0) pkgconfig(nspr) pkgconfig(glu)
BuildRequires: pkgconfig(gl) pkgconfig(cairo) pkgconfig(xt) pkgconfig(xtst)
BuildRequires: pkgconfig(libsecret-1) pkgconfig(gtk+-2.0) pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(webkit2gtk-4.0) icu4j >= 1:63.1 ant >= 1.10.5
BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf
BuildRequires: ant-commons-net ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf ant-xz ant-junit5
BuildRequires: jsch >= 0:0.1.46 apache-commons-el >= 1.0 apache-commons-logging
BuildRequires: apache-commons-codec apache-commons-jxpath apache-commons-fileupload
BuildRequires: apache-sshd osgi(org.apache.felix.gogo.shell) >= 1.1.0
BuildRequires: osgi(org.apache.felix.gogo.command) >= 1.0.2
BuildRequires: osgi(org.apache.felix.gogo.runtime) >= 1.1.0
BuildRequires: osgi(org.apache.felix.scr) >= 2.1.14
BuildRequires: osgi(org.eclipse.jetty.util) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.server) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.http) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.continuation) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.io) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.security) >= 9.4.15
BuildRequires: osgi(org.eclipse.jetty.servlet) >= 9.4.15
BuildRequires: lucene-core >= 7.7.0 lucene-analysis >= 7.7.0
BuildRequires: lucene-queryparser >= 7.7.0
BuildRequires: lucene-analyzers-smartcn >= 7.7.0 junit >= 4.12 junit5 >= 5.4.0
BuildRequires: apiguardian hamcrest sat4j objectweb-asm >= 7.0 sac batik >= 1.10
BuildRequires: batik-css >= 1.10 xmlgraphics-commons >= 2.2 xml-commons-apis atinject
BuildRequires: eclipse-ecf-core >= 3.14.4 eclipse-emf-core >= 1:2.16.0 eclipse-license2
BuildRequires: glassfish-annotation-api glassfish-el-api >= 3.0.1 glassfish-el >= 3.0.1
BuildRequires: glassfish-jsp-api >= 2.2.1 glassfish-jsp >= 2.2.5
BuildRequires: glassfish-servlet-api >= 3.1.0 httpcomponents-core httpcomponents-client jsoup
BuildRequires: xz-java mockito >= 2.23.9 osgi(osgi.annotation)
BuildRequires: eclipse-pde eclipse-egit eclipse-emf-runtime eclipse-jgit
%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-headless >= 1:1.8.0 javapackages-tools gtk3 webkitgtk4
%description swt
SWT Library for GTK+.
%package equinox-osgi
Summary: Eclipse OSGi - Equinox
Requires: java-headless >= 1:1.8.0 javapackages-tools
Provides: osgi(system.bundle) = 1:4.11
%description equinox-osgi
Eclipse OSGi - Equinox
%package platform
Summary: Eclipse platform common files
Recommends: eclipse-abrt
Recommends: eclipse-usage
Requires: ant >= 1.10.5
Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging ant-apache-bsf
Requires: ant-commons-net ant-javamail ant-jdepend ant-junit ant-swing ant-jsch ant-testutil ant-apache-xalan2 ant-jmf ant-xz ant-junit5
Requires: jsch >= 0.1.46-2 apache-commons-el >= 1.0 apache-commons-logging
Requires: apache-commons-codec apache-commons-jxpath
Requires: osgi(org.apache.felix.gogo.shell) >= 1.1.0
Requires: osgi(org.apache.felix.gogo.command) >= 1.0.2
Requires: osgi(org.apache.felix.gogo.runtime) >= 1.1.0
Requires: osgi(org.apache.felix.scr) >= 2.1.14
Requires: osgi(org.eclipse.jetty.util) >= 9.4.15
Requires: osgi(org.eclipse.jetty.server) >= 9.4.15
Requires: osgi(org.eclipse.jetty.http) >= 9.4.15
Requires: osgi(org.eclipse.jetty.continuation) >= 9.4.15
Requires: osgi(org.eclipse.jetty.io) >= 9.4.15
Requires: osgi(org.eclipse.jetty.security) >= 9.4.15
Requires: osgi(org.eclipse.jetty.servlet) >= 9.4.15
Requires: lucene-core >= 7.7.0 lucene-analysis >= 7.7.0
Requires: lucene-queryparser >= 7.7.0
Requires: lucene-analyzers-smartcn >= 7.7.0 sat4j sac batik >= 1.10
Requires: batik-css >= 1.10 xmlgraphics-commons >= 2.2 xml-commons-apis atinject
Requires: eclipse-ecf-core >= 3.14.4 eclipse-emf-core >= 1:2.16.0
Requires: glassfish-annotation-api glassfish-el-api >= 3.0.1 glassfish-el >= 3.0.1
Requires: glassfish-jsp-api >= 2.2.1 glassfish-jsp >= 2.2.5
Requires: glassfish-servlet-api >= 3.1.0 icu4j >= 1:63.1
Requires: eclipse-swt = 1:4.11-1
Requires: eclipse-equinox-osgi = 1:4.11-1 httpcomponents-core
Requires: httpcomponents-client osgi(org.tukaani.xz)
Provides: eclipse-nls = 4.11-1
Obsoletes: eclipse-nls < 4.11-1
%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
BuildArch: noarch
Provides: eclipse = 1:4.11-1
Requires: eclipse-platform = 1:4.11-1 junit >= 4.12 junit5 >= 5.4.0
Requires: osgi(org.hamcrest.core)
Obsoletes: eclipse-recommenders <= 2.5.4
%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
Requires: eclipse-platform = 1:4.11-1
Requires: eclipse-jdt = 1:4.11-1 objectweb-asm >= 7.0
%description pde
Eclipse Plugin Development Environment. This package is required for
developing Eclipse plugins.
%package p2-discovery
Summary: Eclipse p2 Discovery
BuildArch: noarch
Requires: eclipse-platform = 1:4.11-1
%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 contributor-tools
Summary: Tools for Eclipse Contributors
Requires: eclipse-platform = 1:4.11-1 easymock hamcrest
Requires: mockito >= 2.23.9
%description contributor-tools
This package contains tools specifically for Eclipse contributors. It includes
SWT tools, E4 tools, Rel-Eng tools and Eclipse Test frameworks.
%package tests
Summary: Eclipse Tests
Requires: eclipse-contributor-tools = 1:4.11-1
%description tests
Eclipse Tests.
%prep
%setup -T -c
tar --strip-components=1 -xf /root/rpmbuild/SOURCES/eclipse-platform-sources-4.11RC2.tar.xz
tar --strip-components=1 -xf /root/rpmbuild/SOURCES/org.eclipse.linuxtools.eclipse-build-c985e357223668b4bc1fb76ea6b9e0c12829b7e8.tar.xz
find . ! -path "*/JCL/*" ! -name "rtstubs*.jar" ! -name "java10api.jar" ! -name "j9stubs.jar" \
-type f -name *.jar -delete
find . -type f -name *.class -delete
find . -type f -name *.so -delete
find . -type f -name *.dll -delete
find . -type f -name *.jnilib -delete
rm -rf rt.equinox.binaries/org.eclipse.equinox.executable/{bin,contributed}/
%patch0
%patch1
%patch2
%patch3
%patch4 -p1
%patch5
%patch12
%patch13 -p1
%patch15
%patch20
%patch21
%patch22
%patch24
%patch26
%patch27
%patch29
%patch30 -p1
rm eclipse.platform.swt/tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/accessibility/Bug543949_ComponentExtentsTest.py
%pom_remove_dep :tycho-buildtimestamp-jgit eclipse-platform-parent
%pom_remove_dep :tycho-sourceref-jgit eclipse-platform-parent
%pom_xpath_remove 'pom:configuration/pom:timestampProvider' eclipse-platform-parent
%pom_xpath_remove 'pom:configuration/pom:sourceReferences' eclipse-platform-parent
%pom_xpath_remove "pom:configuration/pom:target" eclipse-platform-parent
%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 eclipse.platform.repository eclipse.platform.releng.tychoeclipsebuilder
%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.console.ssh.tests rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.console.tests 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.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
%pom_disable_module bundles/org.eclipse.equinox.p2.artifact.optimizers rt.equinox.p2
%pom_disable_module bundles/org.eclipse.equinox.p2.tests.optimizers rt.equinox.p2
%pom_disable_module bundles/org.eclipse.equinox.p2.artifact.processors rt.equinox.p2
%pom_disable_module org.eclipse.jdt.annotation_v1 eclipse.jdt.core
%pom_xpath_remove "plugin[@version='1.1.400.qualifier']" eclipse.jdt/org.eclipse.jdt-feature/feature.xml
sed -i -e '/org\.eclipse\.jdt\.annotation;bundle-version="\[1\.1\.0,2\.0\.0)"/d' \
eclipse.jdt.core/org.eclipse.jdt.core.tests.{model,builder,compiler}/META-INF/MANIFEST.MF \
eclipse.jdt.core/org.eclipse.jdt.apt.pluggable.tests/META-INF/MANIFEST.MF \
eclipse.jdt.ui/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF
sed -i -e 's/javax.annotation/javax.annotation-api/' eclipse.jdt.core/org.eclipse.jdt.core.tests.compiler/META-INF/MANIFEST.MF
%pom_disable_module bundles/org.eclipse.sdk.examples eclipse.platform.releng
%pom_disable_module features/org.eclipse.sdk.examples-feature eclipse.platform.releng
%pom_disable_module examples/org.eclipse.swt.examples.ole.win32 eclipse.platform.swt
%pom_disable_module bundles/org.eclipse.equinox.http.servletbridge rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.servletbridge rt.equinox.bundles
%pom_disable_module bundles/org.eclipse.equinox.servletbridge.template rt.equinox.bundles
%pom_disable_module ui/org.eclipse.pde.ui.tests.smartimport eclipse.pde.ui
%pom_remove_plugin :maven-enforcer-plugin eclipse-platform-parent
rm -rf eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.{aarch64,s390x}
rm -rf rt.equinox.framework/bundles/org.eclipse.equinox.launcher.gtk.linux.{aarch64,s390x}
for dir in rt.equinox.binaries rt.equinox.framework/bundles eclipse.platform.swt.binaries/bundles ; do
utils/ensure_arch.sh "$dir" x86_64 aarch64 s390x
done
TYCHO_ENV="<environment><os>linux</os><ws>gtk</ws><arch>aarch64</arch></environment>"
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse-platform-parent
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV" eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk
for b in `ls eclipse.platform.swt.binaries/bundles | grep -P -e 'org.eclipse.swt\.(?!gtk\.linux.aarch64$)'` ; do
module=$(grep ">bundles/$b<" eclipse.platform.swt.binaries/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b eclipse.platform.swt.binaries
%pom_xpath_inject "pom:excludes" "<plugin id='$b'/>" eclipse.platform.ui/features/org.eclipse.e4.rcp
fi
done
for b in `ls rt.equinox.framework/bundles | grep -P -e 'org.eclipse.equinox.launcher\.(?!gtk\.linux.aarch64$)'` ; do
module=$(grep ">bundles/$b<" rt.equinox.framework/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b rt.equinox.framework
%pom_xpath_remove -f "plugin[@id='$b']" rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml
fi
done
for b in `(cd rt.equinox.bundles/bundles && ls -d *{macosx,win32,linux}*) | grep -P -e 'org.eclipse.equinox.security\.(?!linux\.aarch64$)'` ; do
module=$(grep ">bundles/$b<" rt.equinox.bundles/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b rt.equinox.bundles
%pom_xpath_remove -f "plugin[@id='$b']" rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml
fi
done
for b in `ls eclipse.platform.team/bundles/org.eclipse.core.net/fragments/ | grep -P -e 'org.eclipse.core.net\.(?!linux.aarch64$)'` ; do
%pom_disable_module bundles/org.eclipse.core.net/fragments/$b eclipse.platform.team
done
for b in `ls eclipse.platform.resources/bundles/ | grep -P -e 'org.eclipse.core.filesystem\.(?!linux\.aarch64$)'` ; do
module=$(grep ">bundles/$b<" eclipse.platform.resources/pom.xml || :)
if [ -n "$module" ] ; then
%pom_disable_module bundles/$b eclipse.platform.resources
%pom_xpath_remove -f "plugin[@id='$b']" eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml
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.compare.win32 eclipse.platform.team
%pom_disable_module org.eclipse.e4.ui.workbench.renderers.swt.cocoa eclipse.platform.ui/bundles
%pom_disable_module org.eclipse.ui.cocoa eclipse.platform.ui/bundles
%pom_disable_module org.eclipse.ui.win32 eclipse.platform.ui/bundles
%pom_disable_module bundles/org.eclipse.core.resources.win32.x86_64 eclipse.platform.resources
for f in eclipse.jdt/org.eclipse.jdt-feature/feature.xml \
eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml \
eclipse.platform.releng/features/org.eclipse.rcp/feature.xml \
eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml ; do
%pom_xpath_remove -f "plugin[@os='macosx']" $f
%pom_xpath_remove -f "plugin[@os='win32']" $f
%pom_xpath_remove -f "plugin[@ws='win32']" $f
for arch in x86 x86_64 arm aarch64 ppc64le s390x ; do
if [ "$arch" != "aarch64" ] ; then
%pom_xpath_remove -f "plugin[@arch='$arch']" $f
fi
done
done
%pom_disable_module tests/org.eclipse.swt.tests.fragments.feature eclipse.platform.swt
%pom_xpath_remove "pom:dependency-resolution" eclipse.platform.swt/tests/org.eclipse.swt.tests{,.gtk}
sed -i -e '/<features>/a<feature id="org.eclipse.core.runtime.feature"/>' \
eclipse.platform.releng.tychoeclipsebuilder/platform/platform.product
sed -i -e '/org.eclipse.ui.themes/i<plugin id="org.eclipse.jdt.core.compiler.batch" download-size="0" install-size="0" version="0.0.0" unpack="false"/>' \
eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
sed -i -e '/<\/excludes>/i<plugin id="org.eclipse.jdt.core.compiler.batch"/>' \
eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml
%pom_xpath_remove "plugin[@id='org.eclipse.core.tests.harness']" eclipse.platform.releng/features/org.eclipse.test-feature/feature.xml
%pom_xpath_set "pom:plugin[pom:artifactId = 'tycho-packaging-plugin']/pom:configuration/pom:archive/pom:addMavenDescriptor" "true" eclipse-platform-parent
for f in rt.equinox.framework/features/org.eclipse.equinox.executable.feature/build.properties; do
grep '^root\.linux\.gtk\.aarch64[.=]' $f > tmp
sed -i -e '/^root\./d' $f && cat tmp >> $f
done
mkdir -p rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/aarch64
for f in eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.*/META-INF/MANIFEST.MF \
eclipse.platform.resources/bundles/org.eclipse.core.filesystem.linux.*/META-INF/MANIFEST.MF \
eclipse.platform.team/bundles/org.eclipse.core.net.linux.*/META-INF/MANIFEST.MF ; do
echo -e "Eclipse-BundleShape: dir\n\n" >> $f;
done
%pom_xpath_inject "pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='tycho-compiler-plugin']/pom:dependencies" \
"<dependency><groupId>org.eclipse</groupId><artifactId>java10api</artifactId><version>10</version></dependency>" eclipse-platform-parent
dependencies/fake_ant_dependency.sh
sed -i '/javax\.servlet\.jsp/ s/2\.3/2\.4/' rt.equinox.bundles/bundles/org.eclipse.equinox.jsp.jasper/META-INF/MANIFEST.MF
find -name feature.xml | xargs sed -i -e 's|"javax.servlet"|"javax.servlet-api"|'
sed -i -e "2iRequire-Bundle: javax.servlet-api" rt.equinox.bundles/bundles/org.eclipse.equinox.http.{jetty,servlet}/META-INF/MANIFEST.MF
sed -i -e '/org.apache.felix.service.command/s/;status=provisional//' rt.equinox.bundles/bundles/org.eclipse.equinox.console{,.ssh}/META-INF/MANIFEST.MF
%pom_remove_plugin org.eclipse.jetty:jetty-jspc-maven-plugin eclipse.platform.ua/org.eclipse.help.webapp
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi/osgi/
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.services/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.util/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/osgi/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.coordinator/lib/
ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.log.stream/osgi/
%mvn_package "::pom::" __noinstall
%mvn_package ":*tests*" tests
%mvn_package ":org.eclipse.equinox.frameworkadmin.test" tests
%mvn_package ":org.eclipse.equinox.p2.installer" tests
%mvn_package ":org.eclipse.jface.examples.databinding" tests
%mvn_package ":org.eclipse.pde.tools.versioning" tests
%mvn_package ":org.eclipse.update.core" tests
%mvn_package "org.eclipse.test:org.eclipse.test" contributor-tools
%mvn_package ":*examples*" __noinstall
%mvn_package "::jar:sources{,-feature}:" sdk
%mvn_package ":org.eclipse.jdt.doc.isv" sdk
%mvn_package ":org.eclipse.platform.doc.isv" sdk
%mvn_package ":org.eclipse.equinox.executable" sdk
%mvn_package "org.eclipse.jdt{,.feature}:" jdt
%mvn_package ":org.eclipse.ant.{launching,ui}" jdt
%mvn_package ":org.eclipse.equinox.p2.discovery.{feature,compatibility}" p2-discovery
%mvn_package ":org.eclipse.equinox.p2{,.ui}.discovery" p2-discovery
%mvn_package ":org.eclipse.e4{,.core}.tools*" contributor-tools
%mvn_package ":org.eclipse.releng.tools" contributor-tools
%mvn_package ":org.eclipse.swt.tools*" contributor-tools
%mvn_package "org.eclipse.test{,.feature}:" contributor-tools
%mvn_package ":org.eclipse.ant.optional.junit" contributor-tools
%mvn_package "org.eclipse.cvs{,.feature}:" cvs
%mvn_package "org.eclipse.team:org.eclipse.team.cvs*" cvs
%mvn_package "org.eclipse.pde{,.ui,.feature}:" pde
%mvn_package "org.eclipse.ui:org.eclipse.ui.{views.log,trace}" pde
%mvn_package "org.eclipse.sdk{,.feature}:" sdk
%mvn_package ":" __noinstall
%build
export CFLAGS="-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/openEuler/openEuler-hardened-cc1 -fasynchronous-unwind-tables -fstack-clash-protection"
export LDFLAGS="-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/openEuler/openEuler-hardened-ld"
export M_CFLAGS="$CFLAGS"
export M_ARCH="$LDFLAGS"
export MAVEN_OPTS="-Xmx1024m -XX:CompileCommand=exclude,org/eclipse/tycho/core/osgitools/EquinoxResolver,newState ${MAVEN_OPTS}"
export JAVA_HOME=/usr/lib/jvm/java
sed -i -e '/createSourcesJar/d' eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml
(cd eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent && xmvn -e -o -B clean verify)
mv eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/target/javaagent-shaded.jar \
eclipse.jdt.debug/org.eclipse.jdt.launching/lib
QUALIFIER=$(date -u -d"$(stat --format=%y /root/rpmbuild/SOURCES/eclipse-platform-sources-4.11RC2.tar.xz)" +v%Y%m%d-%H%M)
%mvn_build -j -f -- -e -DforceContextQualifier=$QUALIFIER \
-Declipse.javadoc=/usr/bin/javadoc -Dnative=gtk.linux.aarch64 \
-Dtycho.local.keepTarget \
-Dfedora.p2.repos=$(pwd)/.m2/p2/repo-sdk/plugins -DbuildType=X
product="eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64"
dependencies/fake_ant_dependency.sh $product/eclipse/plugins/org.apache.ant_*
dependencies/replace_platform_plugins_with_symlinks.sh $product/eclipse /usr/share/java /usr/lib/java
pushd $product/eclipse
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/*
rm -f icon.xpm
rm -rf features/org.eclipse.emf.* plugins/org.eclipse.emf.* \
features/org.eclipse.ecf.* plugins/org.eclipse.ecf.* plugins/org.eclipse.ecf_*
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
sed -i "s|-Xms40m|-Xms512m|g" eclipse.ini
sed -i "s|-Xmx512m|-Xmx1024m|g" eclipse.ini
sed -i '1i-protect\nroot' eclipse.ini
cat >> eclipse.ini <<EOF
-Dorg.eclipse.swt.browser.UseWebKitGTK=true
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
-XX:CompileCommand=exclude,org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding,<init>
-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=/usr/share/eclipse/dropins
-Dp2.fragments=/usr/lib/eclipse/droplets,/usr/share/eclipse/droplets
-Declipse.p2.skipMovedInstallDetection=true
-Dosgi.resolver.usesMode=ignore
EOF
popd #eclipse
%package debuginfo
Summary: Debug information for package eclipse
Group: Development/Debug
AutoReq: 0
AutoProv: 1
%description debuginfo
This package provides debug information for package eclipse.
Debug information is useful when developing applications that use this
package or when debugging this package.
%files debuginfo -f debugfiles.list
%package debugsource
Summary: Debug sources for package eclipse
Group: Development/Debug
AutoReqProv: 0
%description debugsource
This package provides debug sources for package eclipse.
Debug sources are useful when developing applications that use this
package or when debugging this package.
%files debugsource -f debugsourcefiles.list
%install
%mvn_install
install -d -m 755 $RPM_BUILD_ROOT/etc
install -d -m 755 $RPM_BUILD_ROOT/usr/lib/java
install -d -m 755 $RPM_BUILD_ROOT/usr/share/java/eclipse
install -d -m 755 $RPM_BUILD_ROOT/usr/share/maven-poms
install -d -m 755 $RPM_BUILD_ROOT/usr/bin
install -D eclipse.platform/platform/org.eclipse.platform/eclipse32.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/32x32/apps/eclipse.png
install -D eclipse.platform/platform/org.eclipse.platform/eclipse48.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/48x48/apps/eclipse.png
install -D eclipse.platform/platform/org.eclipse.platform/eclipse256.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/256x256/apps/eclipse.png
install -d $RPM_BUILD_ROOT/usr/share/pixmaps
ln -s /usr/share/icons/hicolor/256x256/apps/eclipse.png \
$RPM_BUILD_ROOT/usr/share/pixmaps/eclipse.png
sed -i -e 's/Exec=eclipse/Exec= eclipse/g' desktopintegration/eclipse.desktop
sed -i -e 's/Name=Eclipse/Name=Eclipse/g' desktopintegration/eclipse.desktop
sed -i -e 's/Icon=eclipse/Icon=eclipse/g' desktopintegration/eclipse.desktop
install -m644 -D desktopintegration/eclipse.desktop $RPM_BUILD_ROOT/usr/share/applications/eclipse.desktop
desktop-file-validate $RPM_BUILD_ROOT/usr/share/applications/eclipse.desktop
install -m644 -D desktopintegration/eclipse.appdata.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse.appdata.xml
install -m644 -D desktopintegration/eclipse-jdt.metainfo.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse-jdt.metainfo.xml
install -m644 -D desktopintegration/eclipse-pde.metainfo.xml $RPM_BUILD_ROOT/usr/share/appdata/eclipse-pde.metainfo.xml
LOCAL_PWD=`pwd`
pushd eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64/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/aarch64/eclipse@/usr/lib/eclipse@g" *.profile ; \
gzip *.profile ; \
done
popd
rsync -vrpl eclipse.platform.releng.tychoeclipsebuilder/platform/target/products/org.eclipse.platform.ide/linux/gtk/aarch64/eclipse \
/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/bin
ln -s /usr/lib/eclipse/eclipse
popd
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64//etc/
ln -s /usr/lib/eclipse/eclipse.ini
popd
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins
EQUINOX_JARS=$(ls . | grep -P '^org.eclipse.equinox(?!.*\.ui[\._])' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|')
OSGI_JARS=$(ls . | grep '^org.eclipse.osgi' | sed -e 's|^org\.eclipse\.\(.*\)_.*|\1|')
popd
location=/usr/lib/eclipse/plugins
while [ "$location" != "/" ] ; do
location=$(dirname $location)
updir="$updir../"
done
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/share/java/eclipse
for J in $EQUINOX_JARS core.contenttype core.jobs core.net core.runtime ; do
DIR=$updir/usr/lib/eclipse/plugins
if [ "$J" != "equinox.http.servlet" ] ; then
[ -e "`ls $DIR/org.eclipse.${J}_*.jar`" ] && ln -s $DIR/org.eclipse.${J}_*.jar ${J}.jar
fi
done
popd
rm -rf .xmvn/ .xmvn-reactor
%mvn_package "org.eclipse.osgi:" equinox-osgi
%mvn_package "org.eclipse.equinox.http:" platform
%mvn_package "org.eclipse.swt:" swt
for J in $OSGI_JARS ; do
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.${J}_*.jar
VER=$(echo $JAR | sed -e "s/.*${J}_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.osgi:$J:jar:$VER" $JAR
if [ "$J" = "osgi" ] ; then
%mvn_alias "org.eclipse.osgi:$J" "org.eclipse.osgi:org.eclipse.$J" "org.eclipse.tycho:org.eclipse.$J" "org.eclipse:$J"
else
%mvn_alias "org.eclipse.osgi:$J" "org.eclipse.osgi:org.eclipse.$J" "org.eclipse.tycho:org.eclipse.$J"
fi
done
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.equinox.http.servlet_*.jar
VER=$(echo $JAR | sed -e "s/.*_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.equinox.http:equinox.http.servlet:jar:$VER" $JAR
%mvn_alias "org.eclipse.equinox.http:equinox.http.servlet" "org.eclipse.equinox.http:servlet"
JAR=/root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/plugins/org.eclipse.swt_*.jar
VER=$(echo $JAR | sed -e "s/.*_\(.*\)\.jar/\1/")
%mvn_artifact "org.eclipse.swt:org.eclipse.swt:jar:$VER" ./eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.aarch64/target/org.eclipse.swt.gtk.linux.aarch64-*-SNAPSHOT.jar
%mvn_alias "org.eclipse.swt:org.eclipse.swt" "org.eclipse.swt:swt"
%mvn_file "org.eclipse.swt:org.eclipse.swt" swt
%mvn_install
pushd /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64//usr/lib/eclipse/
ln -s $(abs2rel /usr/lib/java/swt.jar /usr/lib/eclipse)
popd
unzip eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/target/eclipse-junit-tests-bundle.zip \
-d $RPM_BUILD_ROOT//usr/share/ -x eclipse-testing/runtests.bat eclipse-testing/runtestsmac.sh
cp utils/splitter.xsl $RPM_BUILD_ROOT//usr/share/eclipse-testing
rm $RPM_BUILD_ROOT//usr/share/eclipse-testing/eclipse-junit-tests-*.zip
sed -i '/org.eclipse.equinox.p2.reconciler.test/ d' $RPM_BUILD_ROOT//usr/share/eclipse-testing/equinoxp2tests.properties
cp -r testbundle-to-eclipse-test $RPM_BUILD_ROOT//usr/share/eclipse-testing/testbundle
mv $RPM_BUILD_ROOT//usr/share/eclipse-testing/testbundle/eclipse-runTestBundles $RPM_BUILD_ROOT//usr/bin/eclipse-runTestBundles
find $RPM_BUILD_ROOT//usr/lib/eclipse -name *.so -exec chmod a+x {} \;
install -d -m 755 /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/.pkgs
echo "4.11-1" > /root/rpmbuild/BUILDROOT/eclipse-4.11-1.aarch64/usr/lib/eclipse/.pkgs/Distro
%files swt -f .mfiles-swt
/usr/lib/eclipse/plugins/org.eclipse.swt_*
/usr/lib/eclipse/plugins/org.eclipse.swt.gtk.linux.*
/usr/lib/eclipse/swt.jar
/usr/lib/java/swt.jar
%files platform -f .mfiles-platform
/usr/bin/eclipse
/usr/lib/eclipse/eclipse
/usr/lib/eclipse/.eclipseproduct
/usr/lib/eclipse/.pkgs
%config /usr/lib/eclipse/eclipse.ini
%config /etc/eclipse.ini
/usr/share/applications/*
/usr/share/pixmaps/*
/usr/share/icons/*/*/apps/*
/usr/share/appdata/eclipse.appdata.xml
%dir /usr/lib/eclipse/configuration/
%dir /usr/lib/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/
/usr/lib/eclipse/configuration/config.ini
/usr/lib/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info
/usr/lib/eclipse/features/org.eclipse.core.runtime.feature_*
/usr/lib/eclipse/features/org.eclipse.e4.rcp_*
/usr/lib/eclipse/features/org.eclipse.equinox.core.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.core.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.extras.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.rcp.feature_*
/usr/lib/eclipse/features/org.eclipse.equinox.p2.user.ui_*
/usr/lib/eclipse/features/org.eclipse.help_*
/usr/lib/eclipse/features/org.eclipse.platform_*
/usr/lib/eclipse/features/org.eclipse.rcp_*
/usr/lib/eclipse/plugins/com.ibm.icu_*
/usr/lib/eclipse/plugins/com.jcraft.jsch_*
/usr/lib/eclipse/plugins/com.sun.el.javax.el_*
/usr/lib/eclipse/plugins/javax.*
/usr/lib/eclipse/plugins/org.apache.*
/usr/lib/eclipse/plugins/org.eclipse.ant.core_*
/usr/lib/eclipse/plugins/org.eclipse.compare_*
/usr/lib/eclipse/plugins/org.eclipse.compare.core_*
/usr/lib/eclipse/plugins/org.eclipse.core.commands_*
/usr/lib/eclipse/plugins/org.eclipse.core.contenttype_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.beans_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.observable_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding.property_*
/usr/lib/eclipse/plugins/org.eclipse.core.databinding_*
/usr/lib/eclipse/plugins/org.eclipse.core.expressions_*
/usr/lib/eclipse/plugins/org.eclipse.core.externaltools_*
/usr/lib/eclipse/plugins/org.eclipse.core.filebuffers_*
/usr/lib/eclipse/plugins/org.eclipse.core.filesystem*
/usr/lib/eclipse/plugins/org.eclipse.core.jobs_*
/usr/lib/eclipse/plugins/org.eclipse.core.net*
/usr/lib/eclipse/plugins/org.eclipse.core.resources_*
/usr/lib/eclipse/plugins/org.eclipse.core.runtime_*
/usr/lib/eclipse/plugins/org.eclipse.core.variables_*
/usr/lib/eclipse/plugins/org.eclipse.debug.core_*
/usr/lib/eclipse/plugins/org.eclipse.debug.ui_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.commands_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.contexts_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.annotations_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.extensions_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.di.extensions.supplier_*
/usr/lib/eclipse/plugins/org.eclipse.e4.core.services_*
/usr/lib/eclipse/plugins/org.eclipse.e4.emf.xpath_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.bindings_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.core_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.css.swt.theme_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.di_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.dialogs_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.model.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.services_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.swt.gtk_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.widgets_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench3_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.addons.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.renderers.swt_*
/usr/lib/eclipse/plugins/org.eclipse.e4.ui.workbench.swt_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.app_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.bidi_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.common_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.concurrent_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.console_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.ds_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.event_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.frameworkadmin_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.frameworkadmin.equinox_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.jetty_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.http.servlet_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.jsp.jasper_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.jsp.jasper.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.launcher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.launcher.gtk.linux.*_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.artifact.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.console_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.core_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.director_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.director.app_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.directorywatcher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.engine_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.extensionlocation_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.garbagecollector_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.jarprocessor_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.metadata_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.metadata.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.operations_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.publisher_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.publisher.eclipse_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.reconciler.dropins_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.repository_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.repository.tools_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.natives_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.transport.ecf_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.importexport_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.updatechecker_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.p2.updatesite_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.preferences_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.registry_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.security*
/usr/lib/eclipse/plugins/org.eclipse.equinox.simpleconfigurator_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.simpleconfigurator.manipulator_*
/usr/lib/eclipse/plugins/org.eclipse.equinox.util_*
/usr/lib/eclipse/plugins/org.eclipse.help_*
/usr/lib/eclipse/plugins/org.eclipse.help.base_*
/usr/lib/eclipse/plugins/org.eclipse.help.ui_*
/usr/lib/eclipse/plugins/org.eclipse.help.webapp_*
/usr/lib/eclipse/plugins/org.eclipse.jdt.core.compiler.batch_*
/usr/lib/eclipse/plugins/org.eclipse.jetty.*
/usr/lib/eclipse/plugins/org.eclipse.jface_*
/usr/lib/eclipse/plugins/org.eclipse.jface.databinding_*
/usr/lib/eclipse/plugins/org.eclipse.jface.text_*
/usr/lib/eclipse/plugins/org.eclipse.jsch.core_*
/usr/lib/eclipse/plugins/org.eclipse.jsch.ui_*
/usr/lib/eclipse/plugins/org.eclipse.ltk.core.refactoring_*
/usr/lib/eclipse/plugins/org.eclipse.ltk.ui.refactoring_*
/usr/lib/eclipse/plugins/org.eclipse.platform_*
/usr/lib/eclipse/plugins/org.eclipse.platform.doc.user_*
/usr/lib/eclipse/plugins/org.eclipse.rcp_*
/usr/lib/eclipse/plugins/org.eclipse.search_*
/usr/lib/eclipse/plugins/org.eclipse.team.core_*
/usr/lib/eclipse/plugins/org.eclipse.team.genericeditor.diff.extension_*
/usr/lib/eclipse/plugins/org.eclipse.team.ui_*
/usr/lib/eclipse/plugins/org.eclipse.text_*
/usr/lib/eclipse/plugins/org.eclipse.ui_*
/usr/lib/eclipse/plugins/org.eclipse.ui.browser_*
/usr/lib/eclipse/plugins/org.eclipse.ui.cheatsheets_*
/usr/lib/eclipse/plugins/org.eclipse.ui.console_*
/usr/lib/eclipse/plugins/org.eclipse.ui.editors_*
/usr/lib/eclipse/plugins/org.eclipse.ui.externaltools_*
/usr/lib/eclipse/plugins/org.eclipse.ui.forms_*
/usr/lib/eclipse/plugins/org.eclipse.ui.genericeditor_*
/usr/lib/eclipse/plugins/org.eclipse.ui.ide_*
/usr/lib/eclipse/plugins/org.eclipse.ui.ide.application_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro.quicklinks_*
/usr/lib/eclipse/plugins/org.eclipse.ui.intro.universal_*
/usr/lib/eclipse/plugins/org.eclipse.ui.monitoring_*
/usr/lib/eclipse/plugins/org.eclipse.ui.navigator_*
/usr/lib/eclipse/plugins/org.eclipse.ui.navigator.resources_*
/usr/lib/eclipse/plugins/org.eclipse.ui.net_*
/usr/lib/eclipse/plugins/org.eclipse.ui.themes_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views.log_*
/usr/lib/eclipse/plugins/org.eclipse.ui.views.properties.tabbed_*
/usr/lib/eclipse/plugins/org.eclipse.ui.workbench_*
/usr/lib/eclipse/plugins/org.eclipse.ui.workbench.texteditor_*
/usr/lib/eclipse/plugins/org.eclipse.update.configurator_*
/usr/lib/eclipse/plugins/org.eclipse.urischeme_*
/usr/lib/eclipse/plugins/org.glassfish.web.javax.servlet.jsp_*
/usr/lib/eclipse/plugins/org.kxml2_*
/usr/lib/eclipse/plugins/org.sat4j.core_*
/usr/lib/eclipse/plugins/org.sat4j.pb_*
/usr/lib/eclipse/plugins/org.tukaani.xz_*
/usr/lib/eclipse/plugins/org.w3c.css.sac_*
/usr/lib/eclipse/plugins/org.w3c.dom.svg_*
/usr/lib/eclipse/plugins/org.xmlpull_*
%doc /usr/lib/eclipse/readme
/usr/lib/eclipse/artifacts.xml
/usr/lib/eclipse/p2
/usr/share/java/eclipse/core*
/usr/share/java/eclipse/equinox*
%files jdt -f .mfiles-jdt
/usr/share/appdata/eclipse-jdt.metainfo.xml
%files pde -f .mfiles-pde -f .mfiles-cvs -f .mfiles-sdk
/usr/share/appdata/eclipse-pde.metainfo.xml
%files p2-discovery -f .mfiles-p2-discovery
%files contributor-tools -f .mfiles-contributor-tools
%files tests -f .mfiles-tests
/usr/bin/eclipse-runTestBundles
/usr/share/eclipse-testing
%files equinox-osgi -f .mfiles-equinox-osgi
/usr/lib/eclipse/plugins/org.eclipse.osgi_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.compatibility.state_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.services_*
/usr/lib/eclipse/plugins/org.eclipse.osgi.util_*
%changelog
* Tue Aug 18 2020 yanan li <liyanan032@huawei.com> - 1:4.11-1
- upgrade to 4.11-1
* Fri Nov 22 2019 sunguoshuai <sunguoshuai@huawei.com> - 1:4.9.0-3
- Package init.

View File

@ -0,0 +1,50 @@
From 7955cc64a07f38c57f45c9ce79d53031c4502c23 Mon Sep 17 00:00:00 2001
From: Sravan Kumar Lakkimsetti
Date: Wed, 28 Apr 2021 12:23:23 +0530
Subject: Bug 573206 - I20210428-0040 - BUILD FAILED with compilation failure
in org.eclipse.test
Update to Ant 1.10.10
Change-Id: I5273072f05d1080b2df61e8c839b4292d1b63c48
Signed-off-by: Sravan Kumar Lakkimsetti <sravankumarl@in.ibm.com>
Reviewed-on:https://git.eclipse.org/r/c/platform/eclipse.platform.releng/+/179905
---
.../src/org/eclipse/test/LegacyXmlResultFormatter.java | 9 ++++++++-
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/eclipse.platform.releng/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java b/eclipse.platform.releng/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java
index e7011aae4..99676ef77 100644
--- a/eclipse.platform.releng/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java
+++ b/eclipse.platform.releng/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2018 Red Hat Inc. and others.
+ * Copyright (c) 2021 Red Hat Inc. and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -64,6 +64,8 @@ public class LegacyXmlResultFormatter extends AbstractJUnitResultFormatter {
final AtomicLong numTestsSkipped = new AtomicLong(0);
final AtomicLong numTestsAborted = new AtomicLong(0);
+ private boolean useLegacyReportingName = false;
+
@Override
public void testPlanExecutionStarted(final TestPlan plan) {
@@ -156,6 +158,11 @@ public class LegacyXmlResultFormatter extends AbstractJUnitResultFormatter {
this.startedAt = startedAt;
}
}
+ @Override
+ public void setUseLegacyReportingName(final boolean useLegacyReportingName) {
+ this.useLegacyReportingName = useLegacyReportingName;
+ }
+
private final class XMLReportWriter {
--
2.30.0

354
CVE-2020-27225.patch Normal file
View File

@ -0,0 +1,354 @@
From 28aac2514656c669ffa16acb996c77def3d4a8d4 Mon Sep 17 00:00:00 2001
From: Andrew Johnson
Date: Tue, 16 Feb 2021 21:40:49 +0000
Subject: 569855: Fix for Eclipse live help. - Use tokens - Backport to
R4_11_maintenance branch
Change-Id: I09cee753dc24d55a2704b80ae13d392d233aac0d
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=569855
Signed-off-by: Andrew Johnson <andrew_johnson@uk.ibm.com>(cherry picked from commit 90661664f30d4e1225e4a68b179c6ee110cd7f75)
Also-by: Niraj Modi <niraj.modi@in.ibm.com>
---
org.eclipse.help.base/META-INF/MANIFEST.MF | 2 +-
org.eclipse.help.base/pom.xml | 2 +-
.../eclipse/help/internal/base/BaseHelpSystem.java | 29 ++++++++++++-
.../eclipse/help/internal/base/HelpDisplay.java | 10 ++++-
org.eclipse.help.webapp/META-INF/MANIFEST.MF | 2 +-
org.eclipse.help.webapp/advanced/livehelp_js.jsp | 12 +++++-
org.eclipse.help.webapp/index.jsp | 32 ++++++++++++---
org.eclipse.help.webapp/pom.xml | 2 +-
.../help/internal/webapp/data/LayoutData.java | 7 +++-
.../internal/webapp/servlet/LiveHelpServlet.java | 48 +++++++++++++++++++++-
10 files changed, 129 insertions(+), 17 deletions(-)
diff --git a/org.eclipse.help.base/META-INF/MANIFEST.MF b/org.eclipse.help.base/META-INF/MANIFEST.MF
index 4ad860070..398a6829a 100644
--- a/org.eclipse.help.base/META-INF/MANIFEST.MF
+++ b/org.eclipse.help.base/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %help_base_plugin_name
Bundle-SymbolicName: org.eclipse.help.base; singleton:=true
-Bundle-Version: 4.2.500.qualifier
+Bundle-Version: 4.2.501.qualifier
Bundle-Activator: org.eclipse.help.internal.base.HelpBasePlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/org.eclipse.help.base/pom.xml b/org.eclipse.help.base/pom.xml
index b90d899f6..36f5145e9 100644
--- a/org.eclipse.help.base/pom.xml
+++ b/org.eclipse.help.base/pom.xml
@@ -18,7 +18,7 @@
</parent>
<groupId>org.eclipse.help</groupId>
<artifactId>org.eclipse.help.base</artifactId>
- <version>4.2.500-SNAPSHOT</version>
+ <version>4.2.501-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
<defaultSigning-excludeInnerJars>true</defaultSigning-excludeInnerJars>
diff --git a/org.eclipse.help.base/src/org/eclipse/help/internal/base/BaseHelpSystem.java b/org.eclipse.help.base/src/org/eclipse/help/internal/base/BaseHelpSystem.java
index 2ea5bf807..f9f09ae7a 100644
--- a/org.eclipse.help.base/src/org/eclipse/help/internal/base/BaseHelpSystem.java
+++ b/org.eclipse.help.base/src/org/eclipse/help/internal/base/BaseHelpSystem.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
+ * Copyright (c) 2000, 2021 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -15,6 +15,7 @@ package org.eclipse.help.internal.base;
import java.net.MalformedURLException;
import java.net.URL;
+
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProduct;
import org.eclipse.core.runtime.IStatus;
@@ -59,6 +60,7 @@ public final class BaseHelpSystem {
private IBrowser browser;
private IBrowser internalBrowser;
private HelpDisplay helpDisplay = null;
+ private String liveHelpToken = null;
private BaseHelpSystem() {
super();
@@ -350,4 +352,29 @@ public final class BaseHelpSystem {
}
}
+ /**
+ * Check supplied token against stored token. Clears the stored token if
+ * successful.
+ *
+ * @param helpSessionToken
+ * @return true if match successful
+ */
+ public boolean matchOnceLiveHelpToken(String helpSessionToken) {
+ /*
+ * @FIXME - should we use a constant time comparison, and store/compare a
+ * cryptographic hash?
+ */
+ if (liveHelpToken != null && liveHelpToken.equals(helpSessionToken)) {
+ // Enforce one-time use.
+ liveHelpToken = null;
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ public void setLiveHelpToken(String helpSessionToken) {
+ liveHelpToken = helpSessionToken;
+ }
+
}
diff --git a/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpDisplay.java b/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpDisplay.java
index 28ebfd10d..33a0e08fd 100644
--- a/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpDisplay.java
+++ b/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpDisplay.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
+ * Copyright (c) 2000, 2021 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -15,6 +15,8 @@ package org.eclipse.help.internal.base;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.UUID;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IConfigurationElement;
@@ -196,6 +198,12 @@ public class HelpDisplay {
String topic = helpURL.substring("topic=".length()); //$NON-NLS-1$
helpURL = getHelpDisplay().getHelpForTopic( topic, WebappManager.getHost(), WebappManager.getPort());
}
+ String basehelp = getBaseURL();
+ if (BaseHelpSystem.getMode() != BaseHelpSystem.MODE_INFOCENTER && helpURL.startsWith(basehelp)) {
+ String sessid = UUID.randomUUID().toString();
+ BaseHelpSystem.getInstance().setLiveHelpToken(sessid);
+ helpURL += (helpURL.indexOf('?') < 0 ? '?' : '&') + "token=" + sessid; //$NON-NLS-1$
+ }
BaseHelpSystem.getHelpBrowser(forceExternal)
.displayURL(helpURL);
diff --git a/org.eclipse.help.webapp/META-INF/MANIFEST.MF b/org.eclipse.help.webapp/META-INF/MANIFEST.MF
index 0c85d674e..c943158a6 100644
--- a/org.eclipse.help.webapp/META-INF/MANIFEST.MF
+++ b/org.eclipse.help.webapp/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %help_webapp_plugin_name
Bundle-SymbolicName: org.eclipse.help.webapp;singleton:=true
-Bundle-Version: 3.9.400.qualifier
+Bundle-Version: 3.9.401.qualifier
Bundle-Activator: org.eclipse.help.internal.webapp.HelpWebappPlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/org.eclipse.help.webapp/advanced/livehelp_js.jsp b/org.eclipse.help.webapp/advanced/livehelp_js.jsp
index 23362f89e..6d04945d6 100644
--- a/org.eclipse.help.webapp/advanced/livehelp_js.jsp
+++ b/org.eclipse.help.webapp/advanced/livehelp_js.jsp
@@ -1,5 +1,5 @@
<%--
- Copyright (c) 2000, 2018 IBM Corporation and others.
+ Copyright (c) 2000, 2021 IBM Corporation and others.
This program and the accompanying materials
are made available under the terms of the Eclipse Public License 2.0
@@ -47,7 +47,15 @@ function liveActionInternal(topHelpWindow, pluginId, className, argument)
url=url.substring(0, i+1);
var encodedArg=encodeURIComponent(argument);
url=url+"livehelp/?pluginID="+pluginId+"&class="+className+"&arg="+encodedArg+"&nocaching="+Math.random();
-
+ <%
+ Object token = request.getSession().getAttribute("LSESSION"); //$NON-NLS-1$
+ // Validate token to protect against XSS
+ if (token instanceof String && ((String)token).matches("[a-z0-9-]{36}")) {//$NON-NLS-1$) {
+ %>
+ url=url+"&token=<%=token%>";
+ <%
+ }
+ %>
// we need to find the toolbar frame.
// to do: cleanup this, including the location of the hidden livehelp frame.
var toolbarFrame = topHelpWindow.HelpFrame.ContentFrame.ContentToolbarFrame;
diff --git a/org.eclipse.help.webapp/index.jsp b/org.eclipse.help.webapp/index.jsp
index 34d3e14ee..76b6564c1 100644
--- a/org.eclipse.help.webapp/index.jsp
+++ b/org.eclipse.help.webapp/index.jsp
@@ -1,5 +1,5 @@
<%--
- Copyright (c) 2000, 2011 IBM Corporation and others.
+ Copyright (c) 2000, 2021 IBM Corporation and others.
This program and the accompanying materials
are made available under the terms of the Eclipse Public License 2.0
@@ -12,9 +12,11 @@
IBM Corporation - initial API and implementation
--%>
<%@ page import="org.eclipse.help.internal.webapp.data.*" errorPage="/advanced/err.jsp" contentType="text/html; charset=UTF-8"%>
+<%@ page import="java.util.UUID" %>
+<%@ page import="org.eclipse.help.internal.base.BaseHelpSystem" %>
<%
request.setCharacterEncoding("UTF-8");
- ServerState.webappStarted(application,request, response);
+ ServerState.webappStarted(application,request, response);
// Read the scope parameter
RequestScope.setScopeFromRequest(request, response);
LayoutData data = new LayoutData(application,request, response);
@@ -38,9 +40,27 @@
</body>
</html>
<%
- }else if(data.isAdvancedUI()){
- request.getRequestDispatcher("/advanced/index.jsp" + data.getQuery()).forward(request, response);
- }else{
- request.getRequestDispatcher("/basic/index.jsp" + data.getQuery()).forward(request, response);
+ } else {
+ // For live help
+ String token = request.getParameter("token"); //$NON-NLS-1$
+ if (token != null && token.matches("[a-z0-9-]{36}")) { //$NON-NLS-1$
+ if (BaseHelpSystem.getInstance().matchOnceLiveHelpToken(token)) {
+ // Only one session can grab this
+ if (request.getSession().getAttribute("XSESSION") == null) { //$NON-NLS-1$
+ String token2 = UUID.randomUUID().toString();
+ request.getSession().setAttribute("XSESSION", token2); //$NON-NLS-1$
+ int port = request.getLocalPort();
+ response.addHeader("Set-Cookie", "XSESSION-" + port + "=" + token2 + "; HttpOnly; SameSite=Strict"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ String token3 = UUID.randomUUID().toString();
+ request.getSession().setAttribute("LSESSION", token3); //$NON-NLS-1$
+ }
+ }
+ }
+
+ if(data.isAdvancedUI()){
+ request.getRequestDispatcher("/advanced/index.jsp" + data.getQuery()).forward(request, response);
+ } else { // legacy UI
+ request.getRequestDispatcher("/basic/index.jsp" + data.getQuery()).forward(request, response);
+ }
}
%>
diff --git a/org.eclipse.help.webapp/pom.xml b/org.eclipse.help.webapp/pom.xml
index 51e7cc9e7..e02982e8c 100644
--- a/org.eclipse.help.webapp/pom.xml
+++ b/org.eclipse.help.webapp/pom.xml
@@ -18,7 +18,7 @@
</parent>
<groupId>org.eclipse.help</groupId>
<artifactId>org.eclipse.help.webapp</artifactId>
- <version>3.9.400-SNAPSHOT</version>
+ <version>3.9.401-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<build>
<plugins>
diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/data/LayoutData.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/data/LayoutData.java
index d5183e1ab..49a45423b 100644
--- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/data/LayoutData.java
+++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/data/LayoutData.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
+ * Copyright (c) 2000, 2021 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -46,6 +46,11 @@ public class LayoutData extends RequestData {
// initialize the query string
String qs = request.getQueryString();
+ // Remove any live help token
+ if (qs != null) {
+ qs = qs.replaceFirst("^token=[a-z0-9-]{36}", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ qs = qs.replaceFirst("&token=[a-z0-9-]{36}", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ }
if (qs != null && qs.length() > 0)
query = "?" + qs; //$NON-NLS-1$
}
diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/LiveHelpServlet.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/LiveHelpServlet.java
index ded00b1c1..a2959a6a8 100644
--- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/LiveHelpServlet.java
+++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/LiveHelpServlet.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
+ * Copyright (c) 2000, 2021 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -14,8 +14,8 @@
package org.eclipse.help.internal.webapp.servlet;
import java.io.IOException;
-
import javax.servlet.ServletException;
+import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -51,6 +51,45 @@ public class LiveHelpServlet extends HttpServlet {
return;
}
req.setCharacterEncoding("UTF-8"); //$NON-NLS-1$
+ String sessionid = req.getSession().getId();
+ Cookie cookies[] = req.getCookies();
+ boolean jsessOK = false;
+ boolean xsessOK = false;
+ boolean lsessOK = false;
+ // Unique session ID per help server
+ int port = req.getLocalPort();
+ String xsessname = "XSESSION-" + port; //$NON-NLS-1$
+ if (cookies != null) {
+ for (Cookie cookie : cookies) {
+ if (cookie.getName().equals("JSESSIONID")) {//$NON-NLS-1$
+ if (sessionid.length() >= 30 &&
+ cookie.getValue().startsWith(sessionid)) {
+ jsessOK = true;
+ }
+ }
+ if (cookie.getName().equals(xsessname)) {
+ if (cookie.getValue().equals(req.getSession().getAttribute("XSESSION"))) { //$NON-NLS-1$
+ xsessOK = true;
+ }
+ }
+ }
+ }
+ String token = req.getParameter("token"); //$NON-NLS-1$
+ if (token != null && token.equals(req.getSession().getAttribute("LSESSION"))) { //$NON-NLS-1$
+ lsessOK = true;
+ }
+ if (!jsessOK) {
+ resp.sendError(HttpServletResponse.SC_FORBIDDEN, "JSESSIONID"); //$NON-NLS-1$
+ return;
+ }
+ if (!lsessOK) {
+ resp.sendError(HttpServletResponse.SC_FORBIDDEN, "token"); //$NON-NLS-1$
+ return;
+ }
+ if (!xsessOK) {
+ resp.sendError(HttpServletResponse.SC_FORBIDDEN, xsessname);
+ return;
+ }
String pluginID = req.getParameter("pluginID"); //$NON-NLS-1$
if (pluginID == null)
return;
@@ -59,6 +98,11 @@ public class LiveHelpServlet extends HttpServlet {
return;
String arg = req.getParameter("arg"); //$NON-NLS-1$
BaseHelpSystem.runLiveHelp(pluginID, className, arg);
+ /*
+ * @FIXME Should runLiveHelp return an error if the plugin/class is wrong
+ * so a SC_BAD_REQUEST can be returned? Or does this reveal too much?
+ */
+ resp.setStatus(HttpServletResponse.SC_ACCEPTED);
}
/**
*
--
cgit v1.2.3

View File

@ -11,7 +11,7 @@
Name: eclipse
Epoch: 1
Version: 4.11
Release: 2
Release: 6
Summary: An open, extensible IDE
License: EPL-2.0
URL: http://www.eclipse.org/
@ -35,6 +35,13 @@ Patch27: eclipse-disable-droplets-in-dropins.patch
Patch28: prefer_x11_backend.patch
Patch29: fix_ant_build.patch
Patch30: eclipse-hide-droplets-from-install-wizard.patch
Patch31: org-eclipse-swt.patch
Patch32: BUILD-FAILED-with-compilation-failure-in-org-eclipse-test.patch
# https://git.eclipse.org/c/platform/eclipse.platform.ua.git/commit/?id=28aac2514656c669ffa16acb996c77def3d4a8d4
Patch33: CVE-2020-27225.patch
Patch34: fix-objectweb-asm-version-to-increase.patch
#Patch from: https://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=3cf23b7d8b0fc4e57f18118cb6fc92a8e6de0490
Patch35: fixed-compilation-error.patch
ExcludeArch: s390 %{arm} %{ix86}
BuildRequires: maven-local tycho tycho-extras cbi-plugins maven-antrun-plugin
BuildRequires: maven-assembly-plugin maven-dependency-plugin maven-enforcer-plugin
@ -65,9 +72,9 @@ BuildRequires: lucene-analyzers-smartcn >= %{_lucene_version} junit >= 4.1
BuildRequires: apiguardian hamcrest sat4j objectweb-asm >= 7.0 sac batik >= 1.10
BuildRequires: batik-css >= 1.10 xmlgraphics-commons >= 2.2 xml-commons-apis atinject
BuildRequires: eclipse-ecf-core >= 3.14.4 eclipse-emf-core >= 1:2.16.0 eclipse-license2
BuildRequires: glassfish-annotation-api glassfish-el-api >= 3.0.1 glassfish-el >= 3.0.1
BuildRequires: glassfish-jsp-api >= 2.2.1 glassfish-jsp >= 2.2.5
BuildRequires: glassfish-servlet-api >= 3.1.0 httpcomponents-core httpcomponents-client jsoup
BuildRequires: glassfish-annotation-api glassfish-el-api > 3.0.1 glassfish-el > 3.0.1
BuildRequires: glassfish-jsp-api <= 2.3.3 glassfish-jsp <= 2.3.3
BuildRequires: glassfish-servlet-api <= 3.1.0 httpcomponents-core httpcomponents-client jsoup
BuildRequires: xz-java mockito >= 2.23.9 osgi(osgi.annotation)
%if ! %{bootstrap}
BuildRequires: eclipse-pde eclipse-egit eclipse-emf-runtime eclipse-jgit
@ -201,6 +208,13 @@ rm -rf rt.equinox.binaries/org.eclipse.equinox.executable/{bin,contributed}/
%endif
%patch29
%patch30 -p1
%patch31
%patch32 -p1
pushd eclipse.platform.ua
%patch33 -p1
popd
%patch34 -p1
%patch35 -p1
rm eclipse.platform.swt/tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/accessibility/Bug543949_ComponentExtentsTest.py
%pom_remove_dep :tycho-buildtimestamp-jgit eclipse-platform-parent
%pom_remove_dep :tycho-sourceref-jgit eclipse-platform-parent
@ -384,6 +398,7 @@ ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.
%mvn_package "org.eclipse.ui:org.eclipse.ui.{views.log,trace}" pde
%mvn_package "org.eclipse.sdk{,.feature}:" sdk
%mvn_package ":" __noinstall
sed -i 's/-O -g -Wall -fPIC/-O -g -Wall -fPIC -pie -Wl,-z,relro -Wl,-z,now -fstack-protector-strong/g' eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library/build.sh
%build
export CFLAGS="%{optflags}"
@ -567,7 +582,7 @@ echo "%{version}-%{release}" > %{buildroot}%{_eclipsedir}/.pkgs/Distro%{?dist}
%{_eclipsedir}/features/org.eclipse.rcp_*
%{_eclipsedir}/plugins/com.ibm.icu_*
%{_eclipsedir}/plugins/com.jcraft.jsch_*
%{_eclipsedir}/plugins/com.sun.el.javax.el_*
%{_eclipsedir}/plugins/jakarta.el-api_*
%{_eclipsedir}/plugins/javax.*
%{_eclipsedir}/plugins/org.apache.*
%{_eclipsedir}/plugins/org.eclipse.ant.core_*
@ -743,6 +758,20 @@ echo "%{version}-%{release}" > %{buildroot}%{_eclipsedir}/.pkgs/Distro%{?dist}
%{_eclipsedir}/plugins/org.eclipse.osgi.util_*
%changelog
* Fri Oct 28 2022 wangkai <wangkai385@h-partners.com> - 1:4.11-6
- Fix objectweb.asm version limit
- Add security compile options pie, relro and -fstack-protector-strong
- Add glassfish-jsp and glassfish-servlet-api and glassfish-el-api version limit
* Thu Jul 14 2022 wangkai <wangkai385@h-partners.com> - 1:4.11-5
- Fix CVE-2020-27225
* Wed Feb 16 2022 yaoxin <yaoxin30@huawei.com> - 1:4.11-4
- Fix build error in org.eclipse.test.
* Sat Jul 31 2021 liping<liping136@huawei.com> - 1:4.11-3
- fix by upgrade to GCC-10
* Tue Aug 25 2020 yanan li <liyanan032@huawei.com> - 1:4.11-2
- modify the bootstrap parameter to 1

View File

@ -0,0 +1,65 @@
From 80c753b73258d29a51eead88e0aa6169e1560822 Mon Sep 17 00:00:00 2001
From: baizg1107 <preloyalwhite@163.com>
Date: Tue, 14 Jun 2022 11:47:31 +0800
Subject: [PATCH] fix objectweb-asm version to increase
---
.../org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF | 4 ++--
.../apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF | 4 ++--
.../features/org.eclipse.help-feature/feature.xml | 3 +--
3 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
index d8e329ec8..8fb77a70f 100644
--- a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
+++ b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
@@ -22,9 +22,9 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.jdt.core.tests.builder;bundle-version="[3.8.0,4.0.0)",
org.eclipse.jdt.core.tests.compiler;bundle-version="[3.8.0,4.0.0)",
org.eclipse.ant.core,
- org.objectweb.asm;bundle-version="[6.0.0,8.0.0)",
+ org.objectweb.asm;bundle-version="[6.0.0,10.0.0)",
org.eclipse.jface;bundle-version="3.8.0",
- org.objectweb.asm.tree;bundle-version="[6.0.0,8.0.0)"
+ org.objectweb.asm.tree;bundle-version="[6.0.0,10.0.0)"
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Export-Package: org.eclipse.pde.api.tools.anttasks.tests,
org.eclipse.pde.api.tools.apiusescan.tests,
diff --git a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
index b3028afde..d593b9347 100644
--- a/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
+++ b/eclipse.pde.ui/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
@@ -14,12 +14,12 @@ Require-Bundle: org.eclipse.osgi;bundle-version="[3.4.0,4.0.0)",
org.eclipse.text;bundle-version="[3.4.0,4.0.0)",
org.eclipse.core.filebuffers;bundle-version="[3.4.0,4.0.0)",
org.eclipse.ant.core;bundle-version="[3.1.300,4.0.0)",
- org.objectweb.asm;bundle-version="[6.0.0,8.0.0)",
+ org.objectweb.asm;bundle-version="[6.0.0,10.0.0)",
org.eclipse.team.core;bundle-version="[3.4.0,4.0.0)",
org.eclipse.core.filesystem;bundle-version="[1.2.0,2.0.0)",
org.eclipse.equinox.frameworkadmin;bundle-version="[2.0.0,3.0.0)",
org.eclipse.core.variables;bundle-version="[3.2.0,4.0.0)",
- org.objectweb.asm.tree;bundle-version="[6.0.0,8.0.0)"
+ org.objectweb.asm.tree;bundle-version="[6.0.0,10.0.0)"
Export-Package: org.eclipse.pde.api.tools.internal;x-friends:="org.eclipse.pde.api.tools.tests,org.eclipse.pde.api.tools.ui,org.eclipse.pde.api.tools.generator",
org.eclipse.pde.api.tools.internal.builder;x-friends:="org.eclipse.pde.api.tools.ui,org.eclipse.pde.api.tools.tests",
org.eclipse.pde.api.tools.internal.comparator;x-friends:="org.eclipse.pde.api.tools.ui,org.eclipse.pde.api.tools.tests",
diff --git a/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml
index d834f93a4..3480b3ba6 100644
--- a/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml
+++ b/eclipse.platform.releng/features/org.eclipse.help-feature/feature.xml
@@ -93,10 +93,9 @@
unpack="false"/>
<requires>
- <import plugin="javax.el-api" />
+ <import plugin="jakarta.el-api" />
<import plugin="javax.servlet-api" />
<import plugin="javax.servlet.jsp" />
- <import plugin="com.sun.el.javax.el" />
<import plugin="org.apache.commons.logging" />
<import plugin="org.glassfish.web.javax.servlet.jsp" />
<import plugin="org.apache.lucene.analyzers-common" />
--
2.27.0

View File

@ -0,0 +1,25 @@
From 4403040e9ca286d234c3029e19453c0cb8f7d875 Mon Sep 17 00:00:00 2001
From: chen-jan <chen_aka_jan@163.com>
Date: Mon, 23 May 2022 06:50:59 +0000
Subject: [PATCH] test.patch
---
.../src/org/eclipse/jface/resource/ImageDescriptor.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/resource/ImageDescriptor.java b/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/resource/ImageDescriptor.java
index afc0eb49d..4622f4e53 100644
--- a/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/resource/ImageDescriptor.java
+++ b/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/resource/ImageDescriptor.java
@@ -290,7 +290,7 @@ public abstract class ImageDescriptor extends DeviceResourceDescriptor {
* this fails.
*/
try {
- return new Image(device, this::getImageData);
+ return new Image(device, (ImageDataProvider) this::getImageData);
} catch (IllegalArgumentException | SWTException e) {
if (returnMissingImageOnError) {
try {
--
2.30.0

11
org-eclipse-swt.patch Normal file
View File

@ -0,0 +1,11 @@
--- "eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h.org" 2021-08-02 13:18:59.832947231 +0800
+++ "eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h" 2021-08-02 13:19:34.425509217 +0800
@@ -105,7 +105,7 @@
glong g_utf8_offset_to_utf16_offset(const gchar*, glong);
// Cached JVM pointer: see bug 521487.
-JavaVM *cached_jvm;
+extern JavaVM *cached_jvm;
#define SWT_TYPE_FIXED (swt_fixed_get_type ())
#define SWT_FIXED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWT_TYPE_FIXED, SwtFixed))