Support for secondary arches (arm, ppc, ppc64, x86, x86_64, s390,

s390x).
This commit is contained in:
Krzysztof Daniel 2012-10-19 08:08:58 +02:00
parent 63bd83c628
commit 7a9bc2d15d
2 changed files with 147 additions and 12 deletions

View File

@ -0,0 +1,84 @@
--- eclipse.platform.swt.binaries/pom.xml.bak 2012-10-18 11:29:03.000000000 +0200
+++ eclipse.platform.swt.binaries/pom.xml 2012-10-18 11:39:42.523524920 +0200
@@ -41,6 +41,7 @@
<module>bundles/org.eclipse.swt.gtk.linux.ppc64</module>
<module>bundles/org.eclipse.swt.gtk.linux.s390</module>
<module>bundles/org.eclipse.swt.gtk.linux.s390x</module>
+ <module>bundles/org.eclipse.swt.gtk.linux.arm</module>
<module>bundles/org.eclipse.swt.gtk.linux.x86</module>
<module>bundles/org.eclipse.swt.gtk.linux.x86_64</module>
<module>bundles/org.eclipse.swt.gtk.solaris.sparc</module>
--- eclipse.platform.resources/pom.xml.bak 2012-10-18 11:29:04.000000000 +0200
+++ eclipse.platform.resources/pom.xml 2012-10-18 11:41:23.976257777 +0200
@@ -31,7 +31,11 @@
<module>bundles/org.eclipse.core.filesystem</module>
<module>bundles/org.eclipse.core.filesystem.hpux.ia64_32</module>
<module>bundles/org.eclipse.core.filesystem.hpux.PA_RISC</module>
+ <module>bundles/org.eclipse.core.filesystem.linux.arm</module>
<module>bundles/org.eclipse.core.filesystem.linux.ppc</module>
+ <module>bundles/org.eclipse.core.filesystem.linux.ppc64</module>
+ <module>bundles/org.eclipse.core.filesystem.linux.s390</module>
+ <module>bundles/org.eclipse.core.filesystem.linux.s390x</module>
<module>bundles/org.eclipse.core.filesystem.linux.x86</module>
<module>bundles/org.eclipse.core.filesystem.linux.x86_64</module>
<module>bundles/org.eclipse.core.filesystem.macosx</module>
--- eclipse.platform.team/pom.xml.bak 2012-10-18 11:29:03.000000000 +0200
+++ eclipse.platform.team/pom.xml 2012-10-18 11:43:17.422081348 +0200
@@ -49,6 +49,11 @@
<module>features/org.eclipse.cvs-feature</module>
<!-- creatively located fragments -->
+ <module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.arm</module>
+ <module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.ppc</module>
+ <module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.ppc64</module>
+ <module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.s390</module>
+ <module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.s390x</module>
<module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86</module>
<module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86_64</module>
<module>bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86</module>
--- rt.equinox.framework/pom.xml.bak 2012-10-18 11:29:04.000000000 +0200
+++ rt.equinox.framework/pom.xml 2012-10-18 11:44:37.345691358 +0200
@@ -41,6 +41,7 @@
<module>bundles/org.eclipse.equinox.launcher.gtk.aix.ppc</module>
<module>bundles/org.eclipse.equinox.launcher.gtk.aix.ppc64</module>
<module>bundles/org.eclipse.equinox.launcher.gtk.hpux.ia64_32</module>
+ <module>bundles/org.eclipse.equinox.launcher.gtk.linux.arm</module>
<module>bundles/org.eclipse.equinox.launcher.gtk.linux.ppc</module>
<module>bundles/org.eclipse.equinox.launcher.gtk.linux.ppc64</module>
<module>bundles/org.eclipse.equinox.launcher.gtk.linux.s390</module>
--- eclipse-parent/pom.xml.bak 2012-10-18 13:32:10.000000000 +0200
+++ eclipse-parent/pom.xml 2012-10-18 13:35:25.830543677 +0200
@@ -138,30 +138,15 @@
<arch>x86_64</arch>
</environment>
<environment>
- <os>solaris</os>
+ <os>linux</os>
<ws>gtk</ws>
- <arch>sparc</arch>
+ <arch>arm</arch>
</environment>
<environment>
- <os>solaris</os>
- <ws>gtk</ws>
- <arch>x86</arch>
- </environment>
- <environment>
- <os>hpux</os>
- <ws>gtk</ws>
- <arch>ia64_32</arch>
- </environment>
- <environment>
- <os>aix</os>
+ <os>linux</os>
<ws>gtk</ws>
<arch>ppc</arch>
</environment>
- <environment>
- <os>aix</os>
- <ws>gtk</ws>
- <arch>ppc64</arch>
- </environment>
</environments>
</configuration>
</plugin>

View File

@ -15,19 +15,27 @@ Epoch: 1
%global installation_loc %{_libdir}/%{name}
%ifarch %{ix86}
%define eclipse_arch x86
%endif
%ifarch x86_64
%define eclipse_arch x86_64
%endif
%ifarch %{arm}
%define eclipse_arch arm
%else %ifarch %{power64}
%endif
%ifarch %{power64}
%define eclipse_arch ppc64
%else %ifarch %{sparc}
%define eclipse_arch sparc
%else %ifarch x86_64
%define eclipse_arch x86_64
%else %ifarch %{ix86}
%define eclipse_arch %{arch}
%endif %endif %endif %endif %endif
%endif
%ifarch ppc
%define eclipse_arch ppc
%endif
%ifarch s390x
%define eclipse_arch s390x
%endif
%ifarch s390
%define eclipse_arch s390
%endif
# Set this flag to 1 if you want to build Eclipse without dependency to eclipse-pde
@ -55,6 +63,18 @@ _f=`ls | grep -e "^%{1}"`; \
rm -rf ${_f} ; \
ln -s %{_javadir}/%{2} ${_f}
#Usage
# _secondary baseArch targetArch
%define _secondary() \
_f=`ls | grep -e "%{1}$"`; \
if [ -d ${_f/%{2}/%{3}/} ]; then \
echo "fragment ${_f/%{2}/%{3}/} already exists" \
else cp -r ${_f} ${_f/%{2}/%{3}/} ; \
find ${_f/%{2}/%{3}/} -type f -exec sed -i -e "s/%{2}/%{3}/g" {} \\; \
fi;
Summary: An open, extensible IDE
Name: eclipse
Version: %{eclipse_version}
@ -212,6 +232,9 @@ Patch33: %{name}-build-internal-jdt-debug-jar.patch
Patch34: %{name}-fix-linkageerrors-in-ui.patch
Patch35: %{name}-secondary-arches.patch
BuildRequires: ant >= 1.8.3
BuildRequires: rsync
BuildRequires: jpackage-utils >= 0:1.5, make, gcc
@ -438,6 +461,7 @@ tar --strip-components=1 -xf %{SOURCE1}
%patch32
%patch33
%patch34
%patch35
#p2.inf should be qualified (asked in the newsgroup and waiting for an answer)
#http://dev.eclipse.org/mhonarc/lists/cbi-dev/msg00777.html
@ -519,6 +543,32 @@ sed -i -e "s@ org.eclipse.jgit;bundle-version=\"1.3.0\";resolution:=optional,@ o
# without git we are not able to compile those classes.
rm eclipse.platform.releng/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/*
pushd eclipse.platform.swt.binaries/bundles
%_secondary gtk.linux.x86 x86 arm
find . -name build.xml -exec sed -i -e "s/make_xulrunner//g" {} \;
find . -name build.xml -exec sed -i -e "s/make_mozilla//g" {} \;
find . -name build.xml -exec sed -i -e "s/make_xpcominit//g" {} \;
popd
pushd eclipse.platform.resources/bundles
%_secondary linux.x86 x86 arm
%_secondary linux.x86_64 x86_64 ppc64
%_secondary linux.x86 x86 s390
%_secondary linux.x86_64 x86_64 s390x
popd
pushd eclipse.platform.team/bundles/org.eclipse.core.net/fragments
%_secondary linux.x86 x86 arm
%_secondary linux.x86 x86 ppc
%_secondary linux.x86_64 x86_64 ppc64
%_secondary linux.x86 x86 s390
%_secondary linux.x86_64 x86_64 s390x
popd
pushd rt.equinox.framework/bundles
%_secondary gtk.linux.x86 x86 arm
popd
pushd rt.equinox.binaries
%_secondary gtk.linux.x86 x86 arm
popd
%build
export MAVEN_OPTS=-Xmx2048m
@ -1360,7 +1410,8 @@ rm -rf %{_bindir}/efj/
%changelog
* Fri Oct 5 2012 Krzysztof Daniel <kdaniel@redhat.com> 1:4.2.1-3
- Add ability to exclude platform-pde from build .
- Bootstrap build.
- Support for secondary architectures.
* Tue Oct 2 2012 Krzysztof Daniel <kdaniel@redhat.com> 1:4.2.1-2
- Bump emf version to 2.8.1.