diff --git a/.travis.yml b/.travis.yml index 2998a4d57..168f7576d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,6 +13,7 @@ script: source "travis/script-$BUILD_SYSTEM" before_cache: source "travis/before-cache-$BUILD_SYSTEM" cache: directories: + - "$HOME/.goomph" - "$HOME/.gradle/caches" - "$HOME/.gradle/wrapper" - "$HOME/.m2" diff --git a/build.gradle b/build.gradle index 56490650e..d16d470ca 100644 --- a/build.gradle +++ b/build.gradle @@ -4,12 +4,39 @@ // plugins { + id 'com.diffplug.gradle.p2.asmaven' version '3.10.0' id 'com.github.hauner.jarTest' version '1.0.1' apply false id 'de.undercouch.download' apply false id 'nebula.lint' version '8.3.1' } +//////////////////////////////////////////////////////////////////////// +// +// required Eclipse components +// + +p2AsMaven { + group 'eclipse-deps', { + repoEclipse '4.7.2' + slicingOption 'latestVersionOnly', 'true' + iu 'org.eclipse.core.commands' + iu 'org.eclipse.core.jobs' + iu 'org.eclipse.core.resources' + iu 'org.eclipse.core.runtime' + iu 'org.eclipse.equinox.app' + iu 'org.eclipse.equinox.common' + iu 'org.eclipse.jdt.core' + iu 'org.eclipse.jface' + iu 'org.eclipse.osgi' + iu 'org.eclipse.pde.core' + iu 'org.eclipse.swt' + iu 'org.eclipse.ui.ide' + iu 'org.eclipse.ui.workbench' + } +} + + //////////////////////////////////////////////////////////////////////// // // common Java setup shared by multiple projects @@ -38,6 +65,9 @@ subprojects { subproject -> maven { url 'https://repo.eclipse.org/content/groups/releases/' } + maven { + url "$rootProject.buildDir/p2asmaven/maven" + } } task eclipseProcessTestResources { @@ -72,7 +102,7 @@ subprojects { resolutionStrategy { // failOnVersionConflict() dependencySubstitution { - substitute module('org.eclipse.platform:org.eclipse.swt.${osgi.platform}') with module("org.eclipse.platform:org.eclipse.swt.${System.getProperty('osgi.platform')}:3.+") + substitute module('eclipse-deps:org.eclipse.swt.${osgi.platform}') with module("eclipse-deps:org.eclipse.swt.${System.getProperty('osgi.platform')}:3.+") } } } diff --git a/com.ibm.wala.cast.java.ecj/build.gradle b/com.ibm.wala.cast.java.ecj/build.gradle index 1cb2801d1..5aab2da58 100644 --- a/com.ibm.wala.cast.java.ecj/build.gradle +++ b/com.ibm.wala.cast.java.ecj/build.gradle @@ -2,8 +2,10 @@ sourceSets.main.java.srcDirs = ['src'] dependencies { compile( - 'org.eclipse.jdt:org.eclipse.jdt.core:3.13.50', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.jdt.core:+', + 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.cast'), project(':com.ibm.wala.cast.java'), project(':com.ibm.wala.core'), diff --git a/com.ibm.wala.cast.java.test/build.gradle b/com.ibm.wala.cast.java.test/build.gradle index ead5b83d3..0e33e9859 100644 --- a/com.ibm.wala.cast.java.test/build.gradle +++ b/com.ibm.wala.cast.java.test/build.gradle @@ -7,8 +7,8 @@ sourceSets.test.java.srcDirs = ['src'] dependencies { testCompile( + 'eclipse-deps:org.eclipse.core.runtime:+', 'junit:junit:4.11', - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.cast'), project(':com.ibm.wala.cast.java'), diff --git a/com.ibm.wala.core.tests/build.gradle b/com.ibm.wala.core.tests/build.gradle index fce7fde46..36702b352 100644 --- a/com.ibm.wala.core.tests/build.gradle +++ b/com.ibm.wala.core.tests/build.gradle @@ -10,9 +10,9 @@ sourceSets.test { dependencies { testCompile( + 'eclipse-deps:org.eclipse.core.runtime:+', 'junit:junit:4.11', 'org.apache.ant:ant:1.8.2', - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', 'org.hamcrest:hamcrest-core:1.3', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.core'), diff --git a/com.ibm.wala.ide.jdt.test/build.gradle b/com.ibm.wala.ide.jdt.test/build.gradle index af5ba0fd2..cd3857279 100644 --- a/com.ibm.wala.ide.jdt.test/build.gradle +++ b/com.ibm.wala.ide.jdt.test/build.gradle @@ -5,11 +5,10 @@ sourceSets.test { dependencies { testCompile( + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.jdt.core:+', + 'eclipse-deps:org.eclipse.osgi:+', 'junit:junit:4.11', - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', - 'org.eclipse.jdt:org.eclipse.jdt.core:3.13.50', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.cast'), project(':com.ibm.wala.cast.java'), diff --git a/com.ibm.wala.ide.jdt/build.gradle b/com.ibm.wala.ide.jdt/build.gradle index 9ff46b4b6..d7dda15af 100644 --- a/com.ibm.wala.ide.jdt/build.gradle +++ b/com.ibm.wala.ide.jdt/build.gradle @@ -2,15 +2,15 @@ sourceSets.main.java.srcDirs = ['source'] dependencies { compile( - 'org.eclipse.jdt:org.eclipse.jdt.core:3.13.50', - 'org.eclipse.platform:org.eclipse.core.jobs:3.9.1', - 'org.eclipse.platform:org.eclipse.core.resources:3.12.0', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.equinox.app:1.3.400', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', - 'org.eclipse.platform:org.eclipse.jface:3.13.1', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', - 'org.eclipse.platform:org.eclipse.ui.workbench:3.110.1', + 'eclipse-deps:org.eclipse.core.jobs:+', + 'eclipse-deps:org.eclipse.core.resources:+', + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.app:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.jdt.core:+', + 'eclipse-deps:org.eclipse.jface:+', + 'eclipse-deps:org.eclipse.osgi:+', + 'eclipse-deps:org.eclipse.ui.workbench:+', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.cast'), project(':com.ibm.wala.cast.java'), diff --git a/com.ibm.wala.ide.jsdt.tests/build.gradle b/com.ibm.wala.ide.jsdt.tests/build.gradle index 1fafcb44c..f49f2d5af 100644 --- a/com.ibm.wala.ide.jsdt.tests/build.gradle +++ b/com.ibm.wala.ide.jsdt.tests/build.gradle @@ -2,11 +2,10 @@ sourceSets.test.java.srcDirs = ['src'] dependencies { testCompile( + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.osgi:+', 'junit:junit:4.11', - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', 'org.eclipse.wst.jsdt:core:1.0.201.v2010012803', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.cast'), diff --git a/com.ibm.wala.ide.jsdt/build.gradle b/com.ibm.wala.ide.jsdt/build.gradle index 00560fd91..91afad457 100644 --- a/com.ibm.wala.ide.jsdt/build.gradle +++ b/com.ibm.wala.ide.jsdt/build.gradle @@ -2,12 +2,11 @@ sourceSets.main.java.srcDirs = ['source'] dependencies { compile( - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', - 'org.eclipse.platform:org.eclipse.core.resources:3.12.0', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', - 'org.eclipse.platform:org.eclipse.ui.workbench:3.110.1', + 'eclipse-deps:org.eclipse.core.resources:+', + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.osgi:+', + 'eclipse-deps:org.eclipse.ui.workbench:+', 'org.eclipse.wst.jsdt:core:1.0.201.v2010012803', 'org.eclipse.wst.jsdt:ui:1.0.201.v2010012803', project(':com.ibm.wala.cast'), diff --git a/com.ibm.wala.ide.tests/build.gradle b/com.ibm.wala.ide.tests/build.gradle index ee18010ee..63f266b7b 100644 --- a/com.ibm.wala.ide.tests/build.gradle +++ b/com.ibm.wala.ide.tests/build.gradle @@ -7,14 +7,13 @@ sourceSets.test.java.srcDirs = ['src'] dependencies { testCompile( - 'org.eclipse.core:org.eclipse.core.runtime:3.10.0.v20140318-2214', - 'org.eclipse.platform:org.eclipse.core.resources:3.12.0', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', - 'org.eclipse.platform:org.eclipse.jface:3.13.1', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', - 'org.eclipse.platform:org.eclipse.ui.ide:3.13.1', - 'org.eclipse.platform:org.eclipse.ui.workbench:3.110.1', + 'eclipse-deps:org.eclipse.core.resources:+', + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.jface:+', + 'eclipse-deps:org.eclipse.osgi:+', + 'eclipse-deps:org.eclipse.ui.ide:+', + 'eclipse-deps:org.eclipse.ui.workbench:+', 'org.osgi:org.osgi.core:4.2.0', project(':com.ibm.wala.core'), project(':com.ibm.wala.ide'), diff --git a/com.ibm.wala.ide/build.gradle b/com.ibm.wala.ide/build.gradle index 32a6368f2..454dd3995 100644 --- a/com.ibm.wala.ide/build.gradle +++ b/com.ibm.wala.ide/build.gradle @@ -6,15 +6,17 @@ sourceSets.main.java.srcDirs = ['src'] dependencies { compile( - 'org.eclipse.pde:org.eclipse.pde.core:3.11.1', - 'org.eclipse.platform:org.eclipse.core.commands:3.9.0', - 'org.eclipse.platform:org.eclipse.core.resources:3.12.0', - 'org.eclipse.platform:org.eclipse.core.runtime:3.13.0', - 'org.eclipse.platform:org.eclipse.equinox.common:3.9.0', - 'org.eclipse.platform:org.eclipse.jface:3.13.1', - 'org.eclipse.platform:org.eclipse.osgi:3.12.50', - 'org.eclipse.platform:org.eclipse.swt.${osgi.platform}:3.106.1', - 'org.eclipse.platform:org.eclipse.ui.workbench:3.110.1', + 'eclipse-deps:org.eclipse.core.commands:+', + 'eclipse-deps:org.eclipse.core.jobs:+', + 'eclipse-deps:org.eclipse.core.resources:+', + 'eclipse-deps:org.eclipse.core.runtime:+', + 'eclipse-deps:org.eclipse.equinox.common:+', + 'eclipse-deps:org.eclipse.jdt.core:+', + 'eclipse-deps:org.eclipse.jface:+', + 'eclipse-deps:org.eclipse.osgi:+', + 'eclipse-deps:org.eclipse.pde.core:+', + 'eclipse-deps:org.eclipse.swt.${osgi.platform}:+', + 'eclipse-deps:org.eclipse.ui.workbench:+', project(':com.ibm.wala.core'), project(':com.ibm.wala.util'), )