Index: Makefile =================================================================== --- /dev/null +++ Makefile @@ -0,0 +1 @@ +include ../Makefile.common Index: disable_archs.sh =================================================================== --- /dev/null +++ disable_archs.sh @@ -0,0 +1,106 @@ +# This script tries to mimic what Fedora does in eclipse.spec, that is to disable the +# compilation of unneeded platforms and architectures, to save build time. In order to +# follow Solus' standards, this script won't butcher source files directly in packge.yml +# but it will have to be run manually to generate a proper .patch file that, +# in turn, will have to be MANUALLY REVIEWED. + + +disable_module() { + # $1: module name + # $2: pom.xml directory (without filename at its end) + sed -i -e "\#$1#d" "$2/pom.xml" +} + +remove_plugin_by_id(){ + # $1: plugin id + # $2: file path + perl -i -pe "BEGIN{undef \$/;} s/.*<\/environments>/$tycho_env/smg" "$1/pom.xml" +} + +replace_environments eclipse-platform-parent +replace_environments eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests +replace_environments 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.x86_64$)'); do + module=$(grep ">bundles/$b<" eclipse.platform.swt.binaries/pom.xml || :) + if [ -n "$module" ]; then + disable_module "bundles/$b" eclipse.platform.swt.binaries + # Add $b among the excluded modules (use perl to append line before '') + perl -plne "print \"\" if(/<\/excludes>/);" -i eclipse.platform.ui/features/org.eclipse.e4.rcp/pom.xml + fi +done +for b in $(ls rt.equinox.framework/bundles | grep -P -e 'org.eclipse.equinox.launcher\.(?!gtk\.linux.x86_64$)'); do + module=$(grep ">bundles/$b<" rt.equinox.framework/pom.xml || :) + if [ -n "$module" ]; then + disable_module "bundles/$b" rt.equinox.framework + remove_plugin_by_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\.x86_64$)'); do + disable_module "bundles/$b" rt.equinox.bundles + remove_plugin_by_id "$b" rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml +done +for b in $(ls eclipse.platform.team/bundles/org.eclipse.core.net/fragments/ | grep -P -e 'org.eclipse.core.net\.(?!linux.x86_64$)'); do + 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\.x86_64$)'); do + module=$(grep ">bundles/$b<" eclipse.platform.resources/pom.xml || :) + if [ -n "$module" ]; then + disable_module "bundles/$b" eclipse.platform.resources + remove_plugin_by_id "$b" eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml + fi +done + + +disable_module 'org.eclipse.jdt.launching.macosx' eclipse.jdt.debug +disable_module 'org.eclipse.jdt.launching.ui.macosx' eclipse.jdt.debug +disable_module 'bundles/org.eclipse.compare.win32' eclipse.platform.team +disable_module 'org.eclipse.e4.ui.workbench.renderers.swt.cocoa' eclipse.platform.ui/bundles +disable_module 'org.eclipse.ui.cocoa' eclipse.platform.ui/bundles +disable_module 'org.eclipse.ui.win32' eclipse.platform.ui/bundles +disable_module 'bundles/org.eclipse.core.resources.win32.x86' eclipse.platform.resources +disable_module 'bundles/org.eclipse.core.resources.win32.x86_64' eclipse.platform.resources +disable_module 'examples/org.eclipse.swt.examples.ole.win32' eclipse.platform.swt + +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 + remove_plugin_by_os 'macosx' $f + remove_plugin_by_os 'win32' $f + for arch in x86 arm aarch64 ppc64 ppc64le s390x; do + remove_plugin_by_arch "$arch" $f + done +done + +# Not in Fedora (because it disables the equinox module directly) +remove_plugin_by_id 'org.eclipse.swt.cocoa.macosx.x86_64' rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product +remove_plugin_by_id 'org.eclipse.swt.gtk.linux.x86' rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product +remove_plugin_by_id 'org.eclipse.swt.win32.win32.x86' rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product +remove_plugin_by_id 'org.eclipse.swt.win32.win32.x86_64' rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product + +git diff --submodule=diff > disable-unneeded-platforms.patch Index: files/build-eclipse-ide-only.patch =================================================================== --- /dev/null +++ files/build-eclipse-ide-only.patch @@ -0,0 +1,31 @@ +From d654b49785453a0b8992667be61d746ac878cbda Mon Sep 17 00:00:00 2001 +From: livingsilver94 +Date: Sat, 17 Mar 2018 11:46:23 +0100 + +--- + eclipse.platform.releng.tychoeclipsebuilder/pom.xml | 9 --------- + 1 file changed, 9 deletions(-) + +diff --git a/eclipse.platform.releng.tychoeclipsebuilder/pom.xml b/eclipse.platform.releng.tychoeclipsebuilder/pom.xml +index 1098d284..77be1c25 100644 +--- a/eclipse.platform.releng.tychoeclipsebuilder/pom.xml ++++ b/eclipse.platform.releng.tychoeclipsebuilder/pom.xml +@@ -29,15 +29,6 @@ + pom + + +- rcp.config +- equinox.starterkit.product +- equinox-sdk +- rcp +- rcp.sdk + platform +- platform.sdk +- sdk +- eclipse-junit-tests +- eclipse.platform.repository + + +-- +2.16.2 + Index: files/disable-unneeded-platforms.patch =================================================================== --- /dev/null +++ files/disable-unneeded-platforms.patch @@ -0,0 +1,848 @@ +diff --git a/eclipse-platform-parent/pom.xml b/eclipse-platform-parent/pom.xml +index b4493ec1..c034bf04 100644 +--- a/eclipse-platform-parent/pom.xml ++++ b/eclipse-platform-parent/pom.xml +@@ -254,43 +254,7 @@ + 4.7.3-SNAPSHOT + + +- +- +- linux +- gtk +- x86 +- +- +- linux +- gtk +- x86_64 +- +- +- linux +- gtk +- ppc64 +- +- +- linux +- gtk +- ppc64le +- +- +- win32 +- win32 +- x86 +- +- +- win32 +- win32 +- x86_64 +- +- +- macosx +- cocoa +- x86_64 +- +- ++ linuxgtkx86_64 + + + +Submodule eclipse.jdt contains modified content +diff --git a/eclipse.jdt/org.eclipse.jdt-feature/feature.xml b/eclipse.jdt/org.eclipse.jdt-feature/feature.xml +index 16504db..6245878 100644 +--- a/eclipse.jdt/org.eclipse.jdt-feature/feature.xml ++++ b/eclipse.jdt/org.eclipse.jdt-feature/feature.xml +@@ -264,22 +264,6 @@ + version="0.0.0" + unpack="false"/> + +- +- +- +- + + org.eclipse.jdt.debug + org.eclipse.jdt.launching +- org.eclipse.jdt.launching.macosx +- org.eclipse.jdt.launching.ui.macosx + org.eclipse.jdt.debug.tests + org.eclipse.jdt.debug.ui + +Submodule eclipse.platform.releng contains modified content +diff --git a/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml b/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml +index ed758e7a..372fe90a 100644 +--- a/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml ++++ b/eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml +@@ -66,14 +66,6 @@ + version="0.0.0" + unpack="false"/> + +- +- + + +- +- + + +- +- + + +- +- +- +- +- +- +- +- +- +- + + + +- +- +- +- +- +- + +- +- +- ++ +diff --git a/eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml b/eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml +index 33a08f60a..96d8b5084 100644 +--- a/eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml ++++ b/eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml +@@ -136,33 +136,7 @@ + target-platform-configuration + + p2 +- +- +- linux +- gtk +- x86 +- +- +- linux +- gtk +- x86_64 +- +- +- win32 +- win32 +- x86 +- +- +- win32 +- win32 +- x86_64 +- +- +- macosx +- cocoa +- x86_64 +- +- ++ linuxgtkx86_64 + + + +Submodule eclipse.platform.resources contains modified content +diff --git a/eclipse.platform.resources/pom.xml b/eclipse.platform.resources/pom.xml +index 5d62a40f..2aeb652e 100644 +--- a/eclipse.platform.resources/pom.xml ++++ b/eclipse.platform.resources/pom.xml +@@ -53,17 +53,9 @@ + + + bundles/org.eclipse.core.filesystem +- bundles/org.eclipse.core.filesystem.linux.ppc64 +- bundles/org.eclipse.core.filesystem.linux.ppc64le +- bundles/org.eclipse.core.filesystem.linux.x86 + bundles/org.eclipse.core.filesystem.linux.x86_64 +- bundles/org.eclipse.core.filesystem.macosx +- bundles/org.eclipse.core.filesystem.win32.x86 +- bundles/org.eclipse.core.filesystem.win32.x86_64 + + bundles/org.eclipse.core.resources +- bundles/org.eclipse.core.resources.win32.x86 +- bundles/org.eclipse.core.resources.win32.x86_64 + + tests/org.eclipse.core.tests.filesystem.feature + tests/org.eclipse.core.tests.resources +diff --git a/eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml b/eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml +index 1c0eded6..716db774 100644 +--- a/eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml ++++ b/eclipse.platform.resources/tests/org.eclipse.core.tests.filesystem.feature/feature.xml +@@ -37,43 +37,4 @@ + fragment="true" + unpack="false"/> + +- +- +- +- +- +- +- +- +- ++ +Submodule eclipse.platform.swt contains modified content +diff --git a/eclipse.platform.swt/pom.xml b/eclipse.platform.swt/pom.xml +index f24718fc07..22bb4b74c6 100644 +--- a/eclipse.platform.swt/pom.xml ++++ b/eclipse.platform.swt/pom.xml +@@ -77,7 +77,6 @@ + examples/org.eclipse.swt.examples + examples/org.eclipse.swt.examples.browser.demos + examples/org.eclipse.swt.examples.launcher +- examples/org.eclipse.swt.examples.ole.win32 + examples/org.eclipse.swt.examples.views + tests/org.eclipse.swt.tests.fragments.feature + tests/org.eclipse.swt.tests +Submodule eclipse.platform.swt.binaries contains modified content +diff --git a/eclipse.platform.swt.binaries/pom.xml b/eclipse.platform.swt.binaries/pom.xml +index 46ee45164..47102fd48 100644 +--- a/eclipse.platform.swt.binaries/pom.xml ++++ b/eclipse.platform.swt.binaries/pom.xml +@@ -54,13 +54,7 @@ + + + +- bundles/org.eclipse.swt.cocoa.macosx.x86_64 +- bundles/org.eclipse.swt.gtk.linux.ppc64 +- bundles/org.eclipse.swt.gtk.linux.ppc64le +- bundles/org.eclipse.swt.gtk.linux.x86 + bundles/org.eclipse.swt.gtk.linux.x86_64 +- bundles/org.eclipse.swt.win32.win32.x86 +- bundles/org.eclipse.swt.win32.win32.x86_64 + + + +Submodule eclipse.platform.team contains modified content +diff --git a/eclipse.platform.team/pom.xml b/eclipse.platform.team/pom.xml +index 10c87b812..15830f403 100644 +--- a/eclipse.platform.team/pom.xml ++++ b/eclipse.platform.team/pom.xml +@@ -55,7 +55,6 @@ + + + bundles/org.eclipse.compare +- bundles/org.eclipse.compare.win32 + + bundles/org.eclipse.compare.core + bundles/org.eclipse.core.net +@@ -75,10 +74,7 @@ + features/org.eclipse.cvs-feature + + +- 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 +- bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86_64 + + tests/org.eclipse.compare.tests + tests/org.eclipse.core.tests.net +Submodule eclipse.platform.ui contains modified content +diff --git a/eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk/pom.xml b/eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk/pom.xml +index 776c797f00..8a2d01e138 100644 +--- a/eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk/pom.xml ++++ b/eclipse.platform.ui/bundles/org.eclipse.e4.ui.swt.gtk/pom.xml +@@ -30,13 +30,7 @@ + ${tycho.version} + + p2 +- +- +- linux +- gtk +- x86_64 +- +- ++ linuxgtkx86_64 + + + +diff --git a/eclipse.platform.ui/bundles/pom.xml b/eclipse.platform.ui/bundles/pom.xml +index a3ba175ae2..aabd97ae63 100644 +--- a/eclipse.platform.ui/bundles/pom.xml ++++ b/eclipse.platform.ui/bundles/pom.xml +@@ -42,7 +42,6 @@ + org.eclipse.e4.ui.workbench + org.eclipse.e4.ui.workbench.addons.swt + org.eclipse.e4.ui.workbench.renderers.swt +- org.eclipse.e4.ui.workbench.renderers.swt.cocoa + org.eclipse.e4.ui.workbench.swt + org.eclipse.e4.ui.workbench3 + org.eclipse.jface +@@ -58,8 +57,6 @@ + org.eclipse.ui.themes + org.eclipse.ui.ide + org.eclipse.ui.ide.application +- org.eclipse.ui.win32 +- org.eclipse.ui.cocoa + org.eclipse.e4.ui.swt.gtk + org.eclipse.ui.navigator.resources + +diff --git a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml +index 09ce1f1d45..cb96ee2d6e 100644 +--- a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml ++++ b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml +@@ -199,16 +199,6 @@ + version="0.0.0" + unpack="false"/> + +- +- + + +- +- +- +- +- +- +- +- + + +- +- +- +- + + +- +- +- +- +- +- +- +- +- +- + + +- +- + + + ++ ++ ++ ++ ++ ++ + + + +Submodule rt.equinox.bundles contains modified content +diff --git a/rt.equinox.bundles/pom.xml b/rt.equinox.bundles/pom.xml +index 4e8066cd..4b5d3655 100644 +--- a/rt.equinox.bundles/pom.xml ++++ b/rt.equinox.bundles/pom.xml +@@ -87,9 +87,6 @@ + bundles/org.eclipse.equinox.registry + bundles/org.eclipse.equinox.concurrent + bundles/org.eclipse.equinox.security +- bundles/org.eclipse.equinox.security.macosx +- bundles/org.eclipse.equinox.security.win32.x86 +- bundles/org.eclipse.equinox.security.win32.x86_64 + bundles/org.eclipse.equinox.security.linux.x86_64 + bundles/org.eclipse.equinox.bidi + bundles/org.eclipse.equinox.cm +Submodule rt.equinox.framework contains modified content +diff --git a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml +index e9ef3210b..e10635f41 100755 +--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml ++++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml +@@ -21,46 +21,6 @@ + version="0.0.0" + unpack="false"/> + +- +- +- +- +- +- +- +- + + +- +- +- +- +- ++ +diff --git a/rt.equinox.framework/pom.xml b/rt.equinox.framework/pom.xml +index 8d449c685..1d32e106e 100644 +--- a/rt.equinox.framework/pom.xml ++++ b/rt.equinox.framework/pom.xml +@@ -58,7 +58,6 @@ + + + +- bundles/org.eclipse.equinox.launcher.gtk.linux.arm + + + +@@ -70,7 +69,6 @@ + + + +- bundles/org.eclipse.equinox.launcher.gtk.linux.aarch64 + + + +@@ -84,13 +82,7 @@ + bundles/org.eclipse.osgi/supplement + + bundles/org.eclipse.equinox.launcher +- bundles/org.eclipse.equinox.launcher.cocoa.macosx.x86_64 +- bundles/org.eclipse.equinox.launcher.gtk.linux.ppc64 +- bundles/org.eclipse.equinox.launcher.gtk.linux.ppc64le +- bundles/org.eclipse.equinox.launcher.gtk.linux.x86 + bundles/org.eclipse.equinox.launcher.gtk.linux.x86_64 +- bundles/org.eclipse.equinox.launcher.win32.win32.x86 +- bundles/org.eclipse.equinox.launcher.win32.win32.x86_64 + + bundles/org.eclipse.osgi.tests + +Submodule rt.equinox.p2 contains modified content +diff --git a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product +index 3079621b2..d576ed849 100644 +--- a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product ++++ b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.tests.reconciler.product/reconciler.product +@@ -126,11 +126,7 @@ + + + +- +- + +- +- + + + +diff --git a/rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml b/rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml +index eb64f9c81..903fe526d 100644 +--- a/rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml ++++ b/rt.equinox.p2/features/org.eclipse.equinox.p2.core.feature/feature.xml +@@ -176,15 +176,6 @@ + unpack="false"/> + + +- +- + +- +- +- +- +