diff --git a/build.gradle b/build.gradle index dcad5aa09..ae83669d2 100644 --- a/build.gradle +++ b/build.gradle @@ -2,27 +2,37 @@ * Root project for xtext-core. */ +buildscript { + repositories.mavenLocal() + dependencies { + classpath 'io.typefox:p2-repo-gen:0.1.0' + } +} + +apply from: "${rootDir}/gradle/versions.gradle" +apply from: "${rootDir}/gradle/p2-deployment.gradle" + ext.buildTime = new java.text.SimpleDateFormat('yyyyMMdd-HHmm').format(new Date()) subprojects { + group = 'org.eclipse.xtext' + version = rootProject.version + apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'maven' apply from: "${rootDir}/gradle/upstream-repositories.gradle" - apply from: "${rootDir}/gradle/versions.gradle" apply from: "${rootDir}/gradle/java-compiler-settings.gradle" apply from: "${rootDir}/gradle/maven-deployment.gradle" apply from: "${rootDir}/gradle/eclipse-project-layout.gradle" apply from: "${rootDir}/gradle/manifest-gen.gradle" apply from: "${rootDir}/gradle/validation.gradle" - - group = 'org.eclipse.xtext' } task cleanLocalMavenRepo(type: Delete) { - group = 'Upload' - description = 'Delete the local Maven repository' + group 'Build' + description 'Deletes the local Maven repository' delete 'build/maven-repository' } diff --git a/gradle/maven-deployment.gradle b/gradle/maven-deployment.gradle index 155f4b439..9c8168e0c 100644 --- a/gradle/maven-deployment.gradle +++ b/gradle/maven-deployment.gradle @@ -3,6 +3,8 @@ */ task sourcesJar(type: Jar, dependsOn: classes) { + group 'Build' + description 'Assembles a jar archive containing the sources.' classifier = 'sources' from sourceSets.main.allSource from ('.') { @@ -12,6 +14,8 @@ task sourcesJar(type: Jar, dependsOn: classes) { artifacts.archives sourcesJar task javadocJar(type: Jar, dependsOn: javadoc) { + group 'Build' + description 'Assembles a jar archive containing the JavaDoc output.' classifier = 'javadoc' from javadoc.destinationDir } diff --git a/gradle/p2-deployment.gradle b/gradle/p2-deployment.gradle new file mode 100644 index 000000000..475ef5ef2 --- /dev/null +++ b/gradle/p2-deployment.gradle @@ -0,0 +1,18 @@ +/* + * The p2gen plugin generates a Tycho build that assembles a p2 repository. + * The generator task should be rerun whenever necessary, e.g. when the version changes. + */ + +apply plugin: 'io.typefox.p2gen' + +group = 'org.eclipse.xtext' + +p2gen { + targetRepository { + location "http://download.eclipse.org/modeling/tmf/xtext/updates/releases/${versions.xtext_bootstrap}/" + unit 'org.eclipse.xtext.sdk.feature.group' + } + targetRepository { + location 'http://download.eclipse.org/releases/luna/201502271000/' + } +}