<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.eclipse.emf.parsley</groupId>
	<artifactId>org.eclipse.emf.parsley.parent</artifactId>
	<version>1.10.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	
	<name>EMF Parsley</name>
	<description>EMF Parsley provides a set of reusable and customizable UI components based on EMF (trees, tables, forms, views, editors).</description>
	<url>http://www.eclipse.org/emf-parsley/</url>

	<ciManagement>
		<system>hudson</system>
		<url>https://hudson.eclipse.org/hudson</url>
	</ciManagement>
	<licenses>
		<license>
			<name>Eclipse Public License</name>
			<url>http://www.eclipse.org/legal/epl-v10.html</url>
			<distribution>repo</distribution>
		</license>
	</licenses>
	<organization>
		<name>Eclipse Foundation</name>
		<url>http://www.eclipse.org/</url>
	</organization>
	<issueManagement>
		<system>Bugzilla</system>
		<url>https://bugs.eclipse.org/bugs/buglist.cgi?product=EMF.Parsley</url>
	</issueManagement>
	<scm>
		<connection>scm:git:http://git.eclipse.org/c/emf-parsley/org.eclipse.emf-parsley.git</connection>
		<developerConnection>scm:git:ssh://git.eclipse.org/gitroot/emf-parsley/org.eclipse.emf-parsley.git</developerConnection>
		<url>http://git.eclipse.org/c/emf-parsley/org.eclipse.emf-parsley.git</url>
	</scm>
	<developers>
		<developer>
			<name>Lorenzo Bettini</name>
			<organization>Dipartimento di Informatica</organization>
			<organizationUrl>http://www.lorenzobettini.it/</organizationUrl>
		</developer>
		<developer>
			<name>Vincenzo Caselli</name>
			<organization>RCP Vision</organization>
			<organizationUrl>http://www.rcp-vision.com/</organizationUrl>
		</developer>
		<developer>
			<name>Francesco Guidieri</name>
			<organization>RCP Vision</organization>
			<organizationUrl>http://www.rcp-vision.com/</organizationUrl>
		</developer>
	</developers>
	<prerequisites>
		<maven>3.0</maven>
	</prerequisites>

	<properties>
		<tycho-version>1.6.0</tycho-version>
		<tycho-extras-version>${tycho-version}</tycho-extras-version>
		<maven-surefire-plugin.version>2.17</maven-surefire-plugin.version>
		<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>
		<junit-version>4.12</junit-version>
		<jacoco-version>0.7.9</jacoco-version>
		<findbugs-version>3.0.5</findbugs-version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

		<xtext-version>2.21.0</xtext-version>
		<xtextVersion>${xtext-version}</xtextVersion>
		<mwe2Version>2.11.2</mwe2Version>
		<emf.version>(2.8,3.0)</emf.version>
		<guava.version>[10.0.1,)</guava.version>
		<google-inject.version>3.0</google-inject.version>
		<log4j.version>1.2.16</log4j.version>
		<!-- <platform-version>[3.9,4.0)</platform-version> -->

		<fornax-oaw-m2-plugin-version>3.5.1</fornax-oaw-m2-plugin-version>

		<!-- tests and runtime args -->
		<os-jvm-flags />
		<memoryArgs>-Xms256M -Xmx4G -XX:PermSize=256M -XX:MaxPermSize=256M -XX:+HeapDumpOnOutOfMemoryError</memoryArgs>
		<uiTestsArgs>${memoryArgs} ${os-jvm-flags} -Dorg.eclipse.swt.browser.DefaultType=mozilla</uiTestsArgs>
		<!-- 
		The following is not needed anymore
		<pdeTestsArgs>-DbuildingWithTycho=true</pdeTestsArgs>
		-->
		<pdeTestsArgs></pdeTestsArgs>
		<skipDragAndDropTests>true</skipDragAndDropTests>
		<swtbotTestsArgs>${uiTestsArgs} -DskipDragAndDropTests=${skipDragAndDropTests} -Dorg.eclipse.swtbot.search.timeout=20000 -Dorg.eclipse.swt.internal.gtk.cairoGraphics=false</swtbotTestsArgs>

		<!-- <jacoco.reportPath>../target/jacoco.exec</jacoco.reportPath> -->
		<!-- <findbugs.reportPath>../target/findbugs</findbugs.reportPath> -->
		
		<parsley.download.area>/home/data/httpd/download.eclipse.org/emf-parsley</parsley.download.area>
		<parsley.updates.dir>updates</parsley.updates.dir>
		<parsley.zips.dir>zips</parsley.zips.dir>
		<parsley.rap.updates.dir>rt</parsley.rap.updates.dir>
		<p2.repository.dest>${project.basedir}/../../target/repository</p2.repository.dest>
		<zipped.repository.dest>${project.basedir}/../../target/${parsley.zips.dir}</zipped.repository.dest>

		<!-- Enable this on Hudson CI @Eclipse.org -->
		<cbi.jarsigner.skip>true</cbi.jarsigner.skip>

		<!-- Source references -->
		<tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/emf-parsley/org.eclipse.emf-parsley.git</tycho.scmUrl>

		<!-- Sonar -->
		<sonar.language>java</sonar.language>
		<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
		<sonar.jacoco.reportPath>../../tests/org.eclipse.emf.parsley.tests.coverage/target/jacoco.exec</sonar.jacoco.reportPath>
		<sonar.junit.reportsPath>../${project.artifactId}.tests/target/surefire-reports/</sonar.junit.reportsPath>
		<!-- **/EmfParsleyViewFilesGenerator.java,**/EmfParsleyProjectFilesGenerator.java report massive code
			duplication, but they're generated by Xtend and they are basically template generators;
			runtime classes are currently not analyzed. -->
		<sonar.exclusions>file:**/src-gen/**,file:**/runtime/**,file:**/test/**,file:**/tests/**,file:**/example/**,file:**/examples/**,**/*GuiceModule.java,**/*Dsl*Module.java,**/*ParsleyModule.java,**/*Activator.java,**/EmfParsleyViewFilesGenerator.java,**/EmfParsleyProjectFilesGenerator.java,**/EmfParsleyDslNewProjectFiles.java,**/*StandaloneSetup*.java,**/*ExtensionFactory*.java,**/*Nature*.java,file:**/web/**,file:**/swt/**,file:**/junit4/**</sonar.exclusions>

		<!-- see http://sonarqube.15.x6.nabble.com/sonar-issue-ignore-multicriteria-td5021722.html 
			and http://stackoverflow.com/questions/21825469/configure-sonar-sonar-issue-ignore-multicriteria-through-maven 
			for the multicriteria property -->
		<sonar.issue.ignore.multicriteria>e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12</sonar.issue.ignore.multicriteria>
	
		<!-- standard convention for method names: in the outline tree provider 
			we must use methods that start with _ and they'd violate the rule squid:S00100 -->
		<sonar.issue.ignore.multicriteria.e1.ruleKey>squid:S00100</sonar.issue.ignore.multicriteria.e1.ruleKey>
		<sonar.issue.ignore.multicriteria.e1.resourceKey>**/*OutlineTreeProvider.java</sonar.issue.ignore.multicriteria.e1.resourceKey>
	
		<!-- "Tabulation characters should not be used" sorry... I don't agree :) -->
		<sonar.issue.ignore.multicriteria.e2.ruleKey>squid:S00105</sonar.issue.ignore.multicriteria.e2.ruleKey>
		<sonar.issue.ignore.multicriteria.e2.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e2.resourceKey>

		<!-- "Synchronized classes Vector, Hashtable, Stack and StringBuffer should not be used" 
			In TextUndoRedo we actually need a synchronized data structure. -->
		<sonar.issue.ignore.multicriteria.e3.ruleKey>squid:S1149</sonar.issue.ignore.multicriteria.e3.ruleKey>
		<sonar.issue.ignore.multicriteria.e3.resourceKey>**/TextUndoRedo.java</sonar.issue.ignore.multicriteria.e3.resourceKey>

		<!-- Avoid deprecated checkstyle rule -->
		<sonar.issue.ignore.multicriteria.e4.ruleKey>checkstyle:com.puppycrawl.tools.checkstyle.checks.TrailingCommentCheck</sonar.issue.ignore.multicriteria.e4.ruleKey>
		<sonar.issue.ignore.multicriteria.e4.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e4.resourceKey>

		<!-- Avoid deprecated checkstyle rule -->
		<sonar.issue.ignore.multicriteria.e5.ruleKey>checkstyle:com.puppycrawl.tools.checkstyle.checks.design.VisibilityModifierCheck</sonar.issue.ignore.multicriteria.e5.ruleKey>
		<sonar.issue.ignore.multicriteria.e5.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e5.resourceKey>

		<!-- In our junit4 bundle we really need to catch Throwable. -->
		<sonar.issue.ignore.multicriteria.e6.ruleKey>squid:S1181</sonar.issue.ignore.multicriteria.e6.ruleKey>
		<sonar.issue.ignore.multicriteria.e6.resourceKey>**/junit4/*.java</sonar.issue.ignore.multicriteria.e6.resourceKey>

		<!-- In our junit4 bundle we really need to call Thread.run. -->
		<sonar.issue.ignore.multicriteria.e7.ruleKey>squid:S1217</sonar.issue.ignore.multicriteria.e7.ruleKey>
		<sonar.issue.ignore.multicriteria.e7.resourceKey>**/junit4/**/*.java</sonar.issue.ignore.multicriteria.e7.resourceKey>

		<!-- Avoid deprecated checkstyle rule -->
		<sonar.issue.ignore.multicriteria.e8.ruleKey>checkstyle:com.puppycrawl.tools.checkstyle.checks.imports.UnusedImportsCheck</sonar.issue.ignore.multicriteria.e8.ruleKey>
		<sonar.issue.ignore.multicriteria.e8.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e8.resourceKey>

		<!-- Avoid deprecated PMD rule -->
		<sonar.issue.ignore.multicriteria.e9.ruleKey>pmd:AvoidDuplicateLiterals</sonar.issue.ignore.multicriteria.e9.ruleKey>
		<sonar.issue.ignore.multicriteria.e9.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e9.resourceKey>

		<!-- Avoid deprecated PMD rule -->
		<sonar.issue.ignore.multicriteria.e10.ruleKey>pmd:UnnecessaryLocalBeforeReturn</sonar.issue.ignore.multicriteria.e10.ruleKey>
		<sonar.issue.ignore.multicriteria.e10.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e10.resourceKey>

		<!-- Avoid deprecated PMD rule -->
		<sonar.issue.ignore.multicriteria.e11.ruleKey>pmd:ConstructorCallsOverridableMethod</sonar.issue.ignore.multicriteria.e11.ruleKey>
		<sonar.issue.ignore.multicriteria.e11.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e11.resourceKey>

		<!-- Avoid deprecated PMD rule -->
		<sonar.issue.ignore.multicriteria.e12.ruleKey>pmd:CompareObjectsWithEquals</sonar.issue.ignore.multicriteria.e12.ruleKey>
		<sonar.issue.ignore.multicriteria.e12.resourceKey>**/*.java</sonar.issue.ignore.multicriteria.e12.resourceKey>

		<findbugs.skip>true</findbugs.skip>
		<mwe2.skip>false</mwe2.skip>

		<dsl.tests.skip>false</dsl.tests.skip>
		<simple.tests.skip>false</simple.tests.skip>
		<swtbot.tests.skip>false</swtbot.tests.skip>
		<swtbot.cdo.tests.skip>false</swtbot.cdo.tests.skip>

		<target-file-name>2020-03</target-file-name>

		<ant-files-path>${basedir}/../../releng/org.eclipse.emf.parsley.parent/ant</ant-files-path>
	</properties>
	
	<profiles>
		<profile>
			<id>rcp-build</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<modules>
				<module>../../tests/org.eclipse.emf.parsley.tests.coverage</module>
				<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.views.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo.common</module>
			
				<module>../../plugins/org.eclipse.emf.parsley.runtime</module>
				<module>../../plugins/org.eclipse.emf.parsley</module>
				<module>../../plugins/org.eclipse.emf.parsley.junit4</module>

				<module>../../plugins/org.eclipse.emf.parsley.web.servlets</module>
				<module>../../plugins/org.eclipse.emf.parsley.web.tools</module>

				<module>../../tests/org.eclipse.emf.parsley.tests.models</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.libraries</module>
				<module>../../tests/org.eclipse.emf.parsley.tests</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.views</module>

				<module>../../plugins/org.eclipse.emf.parsley.views</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors</module>
		
				<module>../../tests/org.eclipse.emf.parsley.cdo.tests</module>

				<module>../../plugins/org.eclipse.emf.parsley.generator.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.wizards</module>
		
				<module>../../plugins/org.eclipse.emf.parsley.ui.examples</module>
		
				<module>../../features/org.eclipse.emf.parsley.examples.feature</module>
		
				<module>../../doc/org.eclipse.emf.parsley.doc</module>
		
				<module>../../dsl/org.eclipse.emf.parsley.dsl</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.ide</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.ui</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.additional.builder</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.tests</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.ui.tests</module>
		
				<module>../../features/org.eclipse.emf.parsley.feature</module>
				<module>../../features/org.eclipse.emf.parsley.junit4.feature</module>
				<module>../../features/org.eclipse.emf.parsley.dsl.feature</module>
				<module>../../features/org.eclipse.emf.parsley.cdo.feature</module>
				<module>../../features/org.eclipse.emf.parsley.sdk</module>
				<module>../../features/org.eclipse.emf.parsley.web.feature</module>
		
				<!-- These examples are used in swtbot tests -->
				<module>../../examples/org.eclipse.emf.parsley.examples.library</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.library.edit</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.library.editor</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.views</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.editors</module>

				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot.feature</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot</module>

				<!-- These examples are used in CDO swtbot tests -->
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.server</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.model</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.treeform</module>

				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot.cdo.feature</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot.cdo</module>

				<module>../../examples/org.eclipse.emf.parsley.examples.mail.model</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.mail.accountsview</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.mail.mailsview</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.mail.messageview</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.mail.rcp</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.mail.product.feature</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot.examples</module>

				<module>../../releng/org.eclipse.emf.parsley.repository</module>

				<module>../../examples/org.eclipse.emf.parsley.examples.eclipse4</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.eclipse4.parsleypart</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.eclipse4.product.feature</module>
				<module>../../tests/org.eclipse.emf.parsley.tests.swtbot.e4</module>
			</modules>
		</profile>

		<profile>
			<id>rap-build</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>

			<modules>
				<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.views.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo.common</module>

				<module>../../plugins/org.eclipse.emf.parsley.rap.runtime</module>
				<module>../../plugins/org.eclipse.emf.parsley.rap</module>
				<module>../../plugins/org.eclipse.emf.parsley.rap.cdo</module>
				<module>../../plugins/org.eclipse.emf.parsley.rap.views</module>
				
				<module>../../features/org.eclipse.emf.parsley.rap.sdk</module>

				<module>../../features/org.eclipse.emf.parsley.rap.cdo.sdk</module>
				
				<module>../../releng/org.eclipse.emf.parsley.rap.repository</module>
			</modules>
			<properties>
				<findbugs.skip>true</findbugs.skip>
				<target-file-name>2020-03-rap</target-file-name>
			</properties>

		</profile>

		<profile>
			<id>rap-examples</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			
			<!-- This will be used only to test that we can build the RAP examples, using the target platform
			example project that we provide, org.eclipse.emf.parsley.examples.rap.targetplatform.
			
			For this compilation test, we won't be using the actual .target file of
			org.eclipse.emf.parsley.examples.rap.targetplatform (since that refers to a released
			EMF Parsley update site with rap features, and we want to test the target platform resolution
			against what we've just built).
			
			So first the maven build to create the EMF Parsley repository with RAP features must be
			run; during that run, a .target file pointing to the repository we've just built will
			be created in the project org.eclipse.emf.parsley.targetplatform,
			which is basically the one of org.eclipse.emf.parsley.examples.rap.targetplatform
			after replacing the URL http://download.eclipse.org/emf-parsley/rt with the local file
			system path where we built the repository). Note that for RAP features we still point to
			the original rap site.
			
			Then we can run the maven build from this parent project, which will compile
			our rap examples using the target platform that we created during the previous build. -->

			<modules>
				<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>
				
				<module>../../examples/org.eclipse.emf.parsley.examples.rap.model</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.rap.ui</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.server</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.model</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.treeform</module>
				<module>../../examples/org.eclipse.emf.parsley.examples.cdo.rap</module>
			</modules>
			
			<properties>
				<findbugs.skip>true</findbugs.skip>
				<target-file-name>rap-examples-test</target-file-name>
			</properties>
		</profile>

		<profile>
			<id>maven</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<modules>
				<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.views.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo.common</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime</module>
				<module>../../plugins/org.eclipse.emf.parsley</module>
				<module>../../plugins/org.eclipse.emf.parsley.junit4</module>

				<module>../../plugins/org.eclipse.emf.parsley.views</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors</module>

				<module>../../plugins/org.eclipse.emf.parsley.generator.common</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.standalone.lib</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.standalone</module>
			</modules>

			<properties>
				<findbugs.skip>true</findbugs.skip>
			</properties>
		</profile>

		<profile>
			<id>set-version-release</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>

			<build>
				<plugins>
					<plugin>
						<!-- 
							This must be used explicitly with the goal set-version in order 
							to update the versions removing the SNAPSHOT before deploying Maven artifacts:
							
							mvn org.apache.maven.plugins:maven-antrun-plugin:run -Dtycho.mode=maven -Pset-version-release
						-->
						<artifactId>maven-antrun-plugin</artifactId>
						<version>${maven-antrun-plugin.version}</version>
						<executions>
							<execution>
								<id>default-cli</id>
								<phase>validate</phase>
								<configuration>
									<target>
										<ant antfile="${ant-files-path}/increment_versions.ant"
											target="set-version-release">
										</ant>
									</target>
								</configuration>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<id>sonatype-oss-release</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>

			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<version>1.6.3</version>
						<extensions>true</extensions>
						<configuration>
							<serverId>ossrh</serverId>
							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
							<autoReleaseAfterClose>true</autoReleaseAfterClose>
						</configuration>
					</plugin>

					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.10.4</version>
						<executions>
							<execution>
								<id>attach-javadocs</id>
								<goals>
									<goal>jar</goal>
								</goals>
								<configuration>
									<additionalparam>-Xdoclint:none</additionalparam>
								</configuration>
							</execution>
						</executions>
					</plugin>
					
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.6</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
				    </plugin>
				</plugins>
			</build>
		</profile>
		
		<profile>
			<id>sonar</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
	
			<modules>
				<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.views.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo.common</module>

				<module>../../plugins/org.eclipse.emf.parsley.runtime</module>
				<module>../../plugins/org.eclipse.emf.parsley</module>
				<module>../../plugins/org.eclipse.emf.parsley.views</module>
				<module>../../plugins/org.eclipse.emf.parsley.cdo</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.editors</module>
				<module>../../plugins/org.eclipse.emf.parsley.generator.common</module>
				<module>../../plugins/org.eclipse.emf.parsley.wizards</module>

				<module>../../dsl/org.eclipse.emf.parsley.dsl</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.ui</module>
				<module>../../dsl/org.eclipse.emf.parsley.dsl.additional.builder</module>
			</modules>
		</profile>
		
		<profile>
			<id>process-xtend-code</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
		
			<build>
				<plugins>
					<plugin>
						<!-- See http://www.lorenzobettini.it/2014/10/analyzing-xtend-code-with-sonarqube/ -->
						<artifactId>maven-antrun-plugin</artifactId>
						<version>${maven-antrun-plugin.version}</version>
						<executions>
							<execution>
								<id>process-xtend-gen</id>
								<phase>process-sources</phase>
								<configuration>
									<skip>!${process-xtend-gen}</skip>
									<target>
										<property name="project.basedir" value="${project.basedir}" />
		
										<ant antfile="${project.basedir}/../../releng/org.eclipse.emf.parsley.parent/process-xtend-gen.ant">
											<target name="process-xtend-gen" />
										</ant>
									</target>
								</configuration>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<id>eclipse-sign</id>
			<properties>
				<findbugs.skip>true</findbugs.skip>
				<skipTests>true</skipTests>
				
				<!-- for Hudson CI @Eclipse.org -->
				<!-- Disable this on your local machine -->
				<cbi.jarsigner.skip>false</cbi.jarsigner.skip>
			</properties>
			<build>
				<plugins>
					<plugin>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>target-platform-configuration</artifactId>
						<configuration>
							<includePackedArtifacts>true</includePackedArtifacts>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.eclipse.tycho.extras</groupId>
						<artifactId>tycho-pack200a-plugin</artifactId>
						<executions>
							<execution>
								<id>pack200-normalize</id>
								<goals>
									<goal>normalize</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.eclipse.cbi.maven.plugins</groupId>
						<artifactId>eclipse-jarsigner-plugin</artifactId>
						<executions>
							<execution>
								<id>sign</id>
								<goals>
									<goal>sign</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.eclipse.tycho.extras</groupId>
						<artifactId>tycho-pack200b-plugin</artifactId>
						<executions>
							<execution>
								<id>pack200-pack</id>
								<goals>
									<goal>pack</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>tycho-p2-plugin</artifactId>
						<executions>
							<execution>
								<id>p2-metadata</id>
								<goals>
									<goal>p2-metadata</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
						<configuration>
							<defaultP2Metadata>false</defaultP2Metadata>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

	<build>
		<pluginManagement>
			<plugins>
				<!-- xtend-maven-plugin is in pluginManagement instead of in plugins 
					so that it doesn't run before the exec-maven-plugin's *.mwe2 gen; this way 
					we can list it after. -->

				<plugin>
					<groupId>org.eclipse.xtend</groupId>
					<artifactId>xtend-maven-plugin</artifactId>
					<version>${xtext-version}</version>
					<executions>
						<execution>
							<goals>
								<goal>compile</goal>
								<goal>xtend-install-debug-info</goal>
								<goal>testCompile</goal>
								<goal>xtend-test-install-debug-info</goal>
							</goals>
						</execution>
					</executions>
					<configuration>
						<outputDirectory>xtend-gen</outputDirectory>
					</configuration>
				</plugin>
				
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-clean-plugin</artifactId>
					<version>2.5</version>
					<configuration>
						<filesets>
							<fileset>
								<directory>${basedir}/xtend-gen</directory>
								<excludes>
									<exclude>.gitignore</exclude>
								</excludes>
							</fileset>
						</filesets>
					</configuration>
				</plugin>

				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>findbugs-maven-plugin</artifactId>
					<version>${findbugs-version}</version>
					<configuration>
						<skip>${findbugs.skip}</skip>
						<findbugsXmlOutput>true</findbugsXmlOutput>
						<failOnError>false</failOnError>
						<!-- <findbugsXmlOutputDirectory>${findbugs.reportPath}</findbugsXmlOutputDirectory> -->
						<!-- Enables analysis which takes more memory but finds more bugs. If 
							you run out of memory, changes the value of the effort element to 'Low'. -->
						<!-- <effort>Max</effort> -->
						<!-- Low: Reports all bugs (other values are medium and max) -->
						<!-- <threshold>Medium</threshold> -->
						<maxRank>15</maxRank>
						<jvmArgs>-Xmx1024m</jvmArgs>
						<excludeFilterFile>${project.basedir}/../../releng/org.eclipse.emf.parsley.parent/findbugs/excludeFilter.xml</excludeFilterFile>
					</configuration>
					<executions>
						<execution>
							<goals>
								<goal>check</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>${jacoco-version}</version>
					<executions>
						<execution>
							<goals>
								<goal>prepare-agent</goal>
							</goals>
							<configuration>
								<!-- Where to put jacoco coverage report -->
								<destFile>${sonar.jacoco.reportPath}</destFile>
								<includes>
									<include>org.eclipse.emf.parsley.*</include>
								</includes>
								<excludes>
									<exclude>**/src-gen/**/*.java</exclude>
									<exclude>**.antlr**</exclude>
									<exclude>**.parseTree**</exclude>
									<exclude>**Abstract*RuntimeModule.java</exclude>
									<exclude>**/*SetupGenerated*.java</exclude>
									<exclude>**/Abstract*Validator.java</exclude>
									<exclude>**/*GrammarAccess.java</exclude>
									<exclude>**/Abstract*UiModule.java</exclude>
									<exclude>**/Abstract*ProposalProvider.java</exclude>
									<exclude>**/*Test.java</exclude>
								</excludes>
								<append>true</append>
							</configuration>
						</execution>
					</executions>
				</plugin>
				
				<!--  see https://bugs.eclipse.org/bugs/show_bug.cgi?id=419172#c17 -->
				<!-- <plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>sonar-maven-plugin</artifactId>
					<version>2.4</version>
				</plugin>  -->

				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-p2-plugin</artifactId>
					<version>${tycho-version}</version>
				</plugin>

				<plugin>
					<groupId>org.eclipse.tycho.extras</groupId>
					<artifactId>tycho-pack200a-plugin</artifactId>
					<version>${tycho-extras-version}</version>
				</plugin>
				<plugin>
					<groupId>org.eclipse.tycho.extras</groupId>
					<artifactId>tycho-pack200b-plugin</artifactId>
					<version>${tycho-extras-version}</version>
				</plugin>
				<plugin>
					<groupId>org.eclipse.cbi.maven.plugins</groupId>
					<artifactId>eclipse-jarsigner-plugin</artifactId>
					<version>1.1.3</version>
				</plugin>
				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-packaging-plugin</artifactId>
					<version>${tycho-version}</version>
					<configuration>
						<format>'v'yyyyMMdd'-'HHmm</format>
						<sourceReferences>
							<generate>true</generate>
						</sourceReferences>
						<timestampProvider>jgit</timestampProvider>
						<jgit.ignore>
							pom.xml
							.polyglot.build.properties
							.api_filters
							*.hprof
						</jgit.ignore>
						<!-- the following should not be enabled: we must make sure
							that's everything is committed, including possible regenerated
							MANIFEST or plugin.xml by Xtext -->
						<!-- <jgit.dirtyWorkingTree>ignore</jgit.dirtyWorkingTree> -->
					</configuration>
					<dependencies>
						<dependency>
							<groupId>org.eclipse.tycho.extras</groupId>
							<artifactId>tycho-sourceref-jgit</artifactId>
							<version>${tycho-extras-version}</version>
						</dependency>
						<dependency>
							<groupId>org.eclipse.tycho.extras</groupId>
							<artifactId>tycho-buildtimestamp-jgit</artifactId>
							<version>${tycho-extras-version}</version>
						</dependency>
					</dependencies>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
			</plugin>
			
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<target>
						<artifact>
							<groupId>org.eclipse.emf.parsley</groupId>
							<artifactId>org.eclipse.emf.parsley.targetplatform</artifactId>
							<version>${project.version}</version>
							<classifier>${target-file-name}</classifier> 
						</artifact>
					</target>
				</configuration>
			</plugin>
			
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-source-plugin</artifactId>
				<version>${tycho-version}</version>
				<executions>
					<execution>
						<id>plugin-source</id>
						<goals>
							<goal>plugin-source</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho.extras</groupId>
				<artifactId>tycho-source-feature-plugin</artifactId>
				<version>${tycho-extras-version}</version>
				<executions>
					<execution>
						<id>source-feature</id>
						<phase>package</phase>
						<goals>
							<goal>source-feature</goal>
						</goals>
						<configuration>
							<excludes>
								<plugin id="org.eclipse.emf.parsley.runtime" />
								<plugin id="org.eclipse.emf.parsley" />
								<plugin id="org.eclipse.emf.parsley.cdo" />
								<plugin id="org.eclipse.emf.parsley.editors" />
								
								<plugin id="org.eclipse.emf.parsley.rap.runtime" />
								<plugin id="org.eclipse.emf.parsley.rap" />
								<plugin id="org.eclipse.emf.parsley.rap.cdo" />
								<plugin id="org.eclipse.emf.parsley.rap.views" />
								
								<plugin id="org.eclipse.emf.rap" />
								<plugin id="org.eclipse.swtbot.go" />
								<plugin id="org.eclipse.ui.forms" />
								<plugin id="org.eclipse.pde.ui" />
								
								<plugin id="org.eclipse.ui.views" />
								<plugin id="org.apache.commons.logging" />
								<plugin id="org.eclipse.core.resources" />
								<plugin id="org.eclipse.core.filesystem" />
								
								<plugin id="com.google.guava" />
								<plugin id="org.apache.log4j" />
								<plugin id="com.google.inject" />
								
								<plugin id="org.apache.felix.scr" />

								<feature id="org.eclipse.swtbot.ide" />
								<feature id="org.eclipse.xtext.sdk" />
								<feature id="org.eclipse.pde" />
								<feature id="org.eclipse.rcp" />
								<feature id="org.eclipse.emf.common" />
								<feature id="org.eclipse.emf.databinding.edit" />
								<feature id="org.eclipse.emf.query" />
								<feature id="org.eclipse.emf.mwe2.language.sdk" />
								<feature id="org.eclipse.emf.mwe2.runtime.sdk" />
								<feature id="org.eclipse.swtbot.eclipse" />
								<feature id="org.eclipse.swtbot.forms" />
								<feature id="org.eclipse.swtbot" />
								<feature id="org.eclipse.emf.cdo.server" />
								
								<feature id="org.eclipse.e4.rcp" />
								<feature id="org.eclipse.emf.ecore" />
							</excludes>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-plugin</artifactId>
				<executions>
					<execution>
						<!-- Don't attach (default) metadata before the "generate-source-feature" 
							execution. -->
						<id>default-p2-metadata-default</id>
						<configuration>
							<attachP2Metadata>false</attachP2Metadata>
						</configuration>
					</execution>
					<execution>
						<!-- Do attach metadata after the "generate-source-feature" execution. -->
						<id>attach-p2-metadata</id>
						<phase>package</phase>
						<goals>
							<goal>p2-metadata</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<repositories>
		<repository>
			<id>codehaus-snapshots</id>
			<name>disable dead 'Codehaus Snapshots' repository, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=481478</name>
			<url>http://nexus.codehaus.org/snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
		<repository>
			<id>sonatype-snapshots</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
			<releases><enabled>false</enabled></releases>
			<snapshots><enabled>true</enabled></snapshots>
		</repository>
		<repository>
			<id>sonatype-releases</id>
			<url>https://oss.sonatype.org/content/repositories/releases</url>
			<releases><enabled>true</enabled></releases>
			<snapshots><enabled>false</enabled></snapshots>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>codehaus-snapshots</id>
			<name>disable dead 'Codehaus Snapshots' repository, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=481478</name>
			<url>http://nexus.codehaus.org/snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</pluginRepository>
		<pluginRepository>
			<id>sonatype-snapshots</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
			<releases><enabled>false</enabled></releases>
			<snapshots><enabled>true</enabled></snapshots>
		</pluginRepository>
		<pluginRepository>
			<id>sonatype-releases</id>
			<url>https://oss.sonatype.org/content/repositories/releases</url>
			<releases><enabled>true</enabled></releases>
			<snapshots><enabled>false</enabled></snapshots>
		</pluginRepository>

		<pluginRepository>
			<id>cbi-release</id>
			<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
		</pluginRepository>
	</pluginRepositories>

	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
	</distributionManagement>

</project>
