diff --git a/eclipse-secondary-arches.patch b/eclipse-secondary-arches.patch new file mode 100644 index 0000000..5bb3ef5 --- /dev/null +++ b/eclipse-secondary-arches.patch @@ -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 @@ + bundles/org.eclipse.swt.gtk.linux.ppc64 + bundles/org.eclipse.swt.gtk.linux.s390 + bundles/org.eclipse.swt.gtk.linux.s390x ++ bundles/org.eclipse.swt.gtk.linux.arm + bundles/org.eclipse.swt.gtk.linux.x86 + bundles/org.eclipse.swt.gtk.linux.x86_64 + bundles/org.eclipse.swt.gtk.solaris.sparc +--- 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 @@ + bundles/org.eclipse.core.filesystem + bundles/org.eclipse.core.filesystem.hpux.ia64_32 + bundles/org.eclipse.core.filesystem.hpux.PA_RISC ++ bundles/org.eclipse.core.filesystem.linux.arm + bundles/org.eclipse.core.filesystem.linux.ppc ++ bundles/org.eclipse.core.filesystem.linux.ppc64 ++ bundles/org.eclipse.core.filesystem.linux.s390 ++ bundles/org.eclipse.core.filesystem.linux.s390x + bundles/org.eclipse.core.filesystem.linux.x86 + bundles/org.eclipse.core.filesystem.linux.x86_64 + bundles/org.eclipse.core.filesystem.macosx +--- 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 @@ + features/org.eclipse.cvs-feature + + ++ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.arm ++ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.ppc ++ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.ppc64 ++ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.s390 ++ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.s390x + bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86 + bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86_64 + bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86 +--- 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 @@ + bundles/org.eclipse.equinox.launcher.gtk.aix.ppc + bundles/org.eclipse.equinox.launcher.gtk.aix.ppc64 + bundles/org.eclipse.equinox.launcher.gtk.hpux.ia64_32 ++ bundles/org.eclipse.equinox.launcher.gtk.linux.arm + bundles/org.eclipse.equinox.launcher.gtk.linux.ppc + bundles/org.eclipse.equinox.launcher.gtk.linux.ppc64 + bundles/org.eclipse.equinox.launcher.gtk.linux.s390 +--- 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 @@ + x86_64 + + +- solaris ++ linux + gtk +- sparc ++ arm + + +- solaris +- gtk +- x86 +- +- +- hpux +- gtk +- ia64_32 +- +- +- aix ++ linux + gtk + ppc + +- +- aix +- gtk +- ppc64 +- + + + diff --git a/eclipse.spec b/eclipse.spec index b1aa32a..d4a7b78 100644 --- a/eclipse.spec +++ b/eclipse.spec @@ -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 @@ -53,7 +61,19 @@ Epoch: 1 %define _symlink() \ _f=`ls | grep -e "^%{1}"`; \ rm -rf ${_f} ; \ -ln -s %{_javadir}/%{2} ${_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 @@ -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 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 1:4.2.1-2 - Bump emf version to 2.8.1.