<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.modeshape</groupId>
    <artifactId>modeshape-parent</artifactId>
	  <version>3.1.2.Final</version>
    <relativePath>modeshape-parent/pom.xml</relativePath>
  </parent>

	<groupId>org.modeshape</groupId>
	<artifactId>modeshape</artifactId>

	<packaging>pom</packaging>
	<name>ModeShape</name>
	<description>Builds the entire ModeShape distribution.</description>

	<modules>
        <!-- Order is important -->

        <!-- First these -->
        <module>modeshape-parent</module>
        <module>modeshape-assembly-descriptors</module>
        <!-- Order is important -->
        <module>modeshape-jcr-api</module>
        <module>modeshape-common</module>
        <module>modeshape-schematic</module>
        <module>modeshape-jcr</module>
        <module>modeshape-unit-test</module>
        <module>sequencers</module>
        <module>extractors</module>

        <!--Connectors-->
        <module>connectors</module>
        <!--
          The REST client needs the JDBC driver
        -->
        <module>web</module>
        <module>modeshape-jdbc-local</module>
        <module>modeshape-jdbc</module>
        <!-- 
          JCA Resource adapter
    	-->
    	<module>modeshape-jca</module> 
        <!--
          The JBoss AS7 subsystem needs the web components and (local) JDBC drivers.
        -->
        <module>deploy/jbossas</module>

        <!-- Finally the BOMs -->
        <module>boms/modeshape-bom-parent</module>
        <module>boms/modeshape-bom-api</module>
        <module>boms/modeshape-bom-jbossas</module>
        <module>boms/modeshape-bom-embedded</module>
        <module>boms/modeshape-bom-remote-client</module>
    </modules>
	<properties>
		<rootDir>${project.basedir}</rootDir>
	</properties>

	<profiles>
		<!-- 
		  This profile is used to run the build plus the JCR TCK tests
			and must be activated manually, as in "mvn ... -Pjcr-tck ..."
		-->
		<profile>
			<id>jcr-tck</id>
			<modules>
				<module>modeshape-jcr-tck</module>
			</modules>
		</profile>
		
		<!-- 
		  This profile is used to run the build plus the integration tests
			and must be activated manually, as in "mvn ... -Pintegration ..."
		-->
		<profile>
			<id>integration</id>
			<modules>
			  <!-- 
			    Build the distribution before running the integration tests, 
			    as some of the integration tests rely upon the distributions
			  -->
				<module>modeshape-distribution</module>
				<module>integration</module>
			</modules>
		</profile>
		
		<!-- 
		  This profile is used to run longer-running performance tests,
		  and must be activated manually, as in "mvn ... -Pperformance ..."
		-->
        <profile>
            <id>performance</id>
            <modules>
                <module>modeshape-distribution</module>
                <module>modeshape-performance-tests</module>
            </modules>
        </profile>
		
		<!-- 
		  This profile is used to build everything for a release, including all assemblies,
			and must be activated manually, as in "mvn ... -Passembly ..."
		-->
        <profile>
            <id>assembly</id>
            <modules>
                <module>modeshape-client</module>
                <module>demos</module>
                <module>modeshape-distribution</module>
                <module>integration</module>
            </modules>
        </profile>
		
	</profiles>
</project>
