/*
 * Root project for xtext-core.
 */

import java.time.format.DateTimeFormatter
import java.time.LocalDateTime

buildscript {
	apply from: "${rootDir}/gradle/versions.gradle"
	repositories.mavenCentral()
	dependencies {
		classpath "org.xtext:xtext-gradle-plugin:$versions.xtext_gradle_plugin"
	}
}

plugins {
  id 'org.ajoberstar.grgit' version '4.0.2'
}

apply from: "${rootDir}/gradle/versions.gradle"
apply from: "${rootDir}/gradle/bootstrap-setup.gradle"

ext.buildTime = DateTimeFormatter.ofPattern('yyyyMMdd-HHmm').format(LocalDateTime.now())

subprojects {
	group = 'org.eclipse.xtext'
	version = rootProject.version
	
	apply plugin: 'maven-publish'
	apply plugin: 'java'
	dependencies {
		compile platform("org.eclipse.xtext:xtext-dev-bom:$project.version")
	}
	if (findProperty('compileXtend') == 'true') {
		apply plugin: 'org.xtext.xtend'
	}
	apply plugin: 'eclipse'
	
	apply from: "${rootDir}/gradle/upstream-repositories.gradle"
	apply from: "${rootDir}/gradle/java-compiler-settings.gradle"
	apply from: "${rootDir}/gradle/xtend-compiler-settings.gradle"
	apply from: "${rootDir}/gradle/maven-deployment.gradle"
	// The bootstrap project uses only the mwe2 source set
	if (!name.endsWith('bootstrap')) {
		apply from: "${rootDir}/gradle/eclipse-project-layout.gradle"
	}
	apply from: "${rootDir}/gradle/manifest-gen.gradle"
	apply from: "${rootDir}/gradle/validation.gradle"
}

task clean(type: Delete) {
	group 'Build'
	description 'Deletes the local repositories.'
	delete 'build'
}