<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project>
	<modelVersion>4.0.0</modelVersion>
	
	<parent>
	    <groupId>org.eclipse.papyrus.interoperability</groupId>
	    <artifactId>org.eclipse.papyrus.interoperability.root</artifactId>
	    <version>1.0.0-SNAPSHOT</version>
    </parent>
    
	<artifactId>org.eclipse.papyrus.interoperability.rsa.root</artifactId>
	<packaging>pom</packaging>
	<name>Papyrus Interoperability Rsa Plugins</name>
	<description>The top container of Rsa Migration for Interoperability.</description>
	<version>1.4.1-SNAPSHOT</version>

	<modules>
		<module>features</module>
		<module>plugins</module>
	</modules>
	
	<profiles>
		<profile>
			<id>rsaTargetMain</id>
			
			<properties>
				<target.platform>org.eclipse.papyrus.interoperability.rsa.main.targetplatform.oxygen</target.platform>
				<target.platform.groupid>org.eclipse.papyrus.interoperability</target.platform.groupid>
				<target.version>1.4.1-SNAPSHOT</target.version>
			</properties>
			
			<modules>
				<module>releng</module>
			</modules>
			
		</profile>
		
		<profile>
			<id>rsaTargetTests</id>
			
			<properties>
				<testConfig>CI_TESTS_CONFIG</testConfig>
				<jacoco.version>0.7.4.201502262128</jacoco.version>
				<!-- Separate property for test argLine seems to be required when running Jacoco + Surefire -->
				<test.argLine>-Xms512m -Xmx2048m -XX:SoftRefLRUPolicyMSPerMB=100</test.argLine>
		
				<target.platform>org.eclipse.papyrus.interoperability.rsa.tests.targetplatform.oxygen</target.platform>
				<target.platform.groupid>org.eclipse.papyrus.interoperability.tests</target.platform.groupid>
				<target.version>1.4.1-SNAPSHOT</target.version>
			</properties>
			
			<modules>
				<module>releng</module>
			</modules>
			
		</profile>
		
		
		<profile>
			<id>tests</id>
			
			<modules>
				<module>tests</module>
			</modules>
			
		</profile>
	</profiles>
	
</project>