<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.jboss</groupId>
      <artifactId>jboss-parent</artifactId>
      <version>12</version>
   </parent>

   <groupId>org.jboss.forge</groupId>
   <artifactId>forge-parent</artifactId>
   <version>2.0.0.Final</version>
   <packaging>pom</packaging>

   <name>Forge - Parent</name>
   <description>A core framework and next-generation container for tooling and automation at a fine-grained level.</description>

   <licenses>
      <license>
         <name>Eclipse Public License version 1.0</name>
         <url>http://www.eclipse.org/legal/epl-v10.html</url>
      </license>
   </licenses>

   <developers>
      <developer>
         <id>lincoln</id>
         <name>Lincoln Baxter, III</name>
         <email>lincolnbaxter@gmail.com</email>
      </developer>
      <developer>
         <id>gastaldi</id>
         <name>George Gastaldi</name>
         <email>gegastaldi@gmail.com</email>
      </developer>
      <developer>
         <id>koen</id>
         <name>Koen Aers</name>
         <email>koen.aers@gmail.com</email>
      </developer>
      <developer>
         <id>stale</id>
         <name>Stale Pedersen</name>
         <email>stalep@gmail.com</email>
      </developer>
   </developers>

   <prerequisites>
      <maven>3.0</maven>
   </prerequisites>

   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

      <!-- Build Info -->
      <forge.scm.connection>scm:git:git://github.com/forge/core.git</forge.scm.connection>
      <forge.developer.connection>scm:git:git@github.com:forge/core.git</forge.developer.connection>
      <forge.scm.url>http://github.com/forge/core</forge.scm.url>
      <forge.release.codename>Beta</forge.release.codename>
      <forge.release.version>${project.version}</forge.release.version>
      <version.cdi>1.1</version.cdi>
      <version.furnace>2.0.0.Final</version.furnace>
      <version.jboss.spec>3.0.2.Final</version.jboss.spec>
      <version.junit>4.11</version.junit>
      <version.mvel>2.1.0.Final</version.mvel>
      <version.jboss-logmanager>1.4.1.Final</version.jboss-logmanager>
      <version.slf4j>1.6.1</version.slf4j>
      <version.xmlparser>1.0.0.Final</version.xmlparser>
   </properties>

   <profiles>
      <profile>
         <id>all</id>
         <activation>
            <activeByDefault>true</activeByDefault>
         </activation>
         <modules>
            <module>bootstrap</module>
            <module>dist</module>

            <module>addon-manager</module>
            <module>addons</module>
            <module>convert</module>
            <module>configuration</module>
            <module>database-tools</module>
            <module>dependencies</module>
            <module>dev-tools-java</module>
            <module>environment</module>
            <module>facets</module>
            <module>javaee</module>
            <module>maven</module>
            <module>projects</module>
            <module>parser-java</module>
            <module>parser-xml</module>
            <module>resources</module>
            <module>ui</module>
            <module>scaffold</module>
            <module>shell</module>
            <module>templates</module>
            <module>text</module>

            <module>core</module>
         </modules>
      </profile>
   </profiles>

   <dependencyManagement>
      <dependencies>

         <!-- CDI Container -->
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>cdi</artifactId>
            <classifier>forge-addon</classifier>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>cdi-api</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>cdi-impl</artifactId>
            <version>${version.furnace}</version>
         </dependency>

         <!-- Simple Container -->
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>simple</artifactId>
            <classifier>forge-addon</classifier>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>simple-api</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.container</groupId>
            <artifactId>simple-impl</artifactId>
            <version>${version.furnace}</version>
         </dependency>

         <!-- Furnace Runtime -->
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-api</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-proxy</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-se</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-manager</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-manager-api</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-manager-spi</artifactId>
            <version>${version.furnace}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace</groupId>
            <artifactId>furnace-manager-resolver-maven</artifactId>
            <version>${version.furnace}</version>
         </dependency>


         <!-- Test Harneses Dependencies -->
         <dependency>
            <groupId>org.jboss.forge.furnace.test</groupId>
            <artifactId>furnace-test-harness</artifactId>
            <version>${version.furnace}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.test</groupId>
            <artifactId>arquillian-furnace-classpath</artifactId>
            <version>${version.furnace}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.furnace.test</groupId>
            <artifactId>arquillian-forge-core</artifactId>
            <version>${version.furnace}</version>
            <scope>test</scope>
         </dependency>

         <!-- SLF4J Logging API -->
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>${version.slf4j}</version>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
            <version>${version.slf4j}</version>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-ext</artifactId>
            <version>${version.slf4j}</version>
         </dependency>

         <!-- JBoss Logging dependencies -->
         <dependency>
            <groupId>org.jboss.logmanager</groupId>
            <artifactId>jboss-logmanager</artifactId>
            <version>${version.jboss-logmanager}</version>
         </dependency>

         <dependency>
            <groupId>org.jboss.spec</groupId>
            <artifactId>jboss-javaee-6.0</artifactId>
            <version>${version.jboss.spec}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>javax.enterprise</groupId>
            <artifactId>cdi-api</artifactId>
            <version>${version.cdi}</version>
         </dependency>

         <!-- Test Dependencies -->
         <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${version.junit}</version>
            <scope>test</scope>
         </dependency>

         <!-- Forge Addon Dependencies -->

         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>addon-manager</artifactId>
            <classifier>forge-addon</classifier>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>addon-manager-spi</artifactId>
            <classifier>forge-addon</classifier>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>addons</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>configuration</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>convert</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>convert-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>database-tools</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>dependencies</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>dev-tools-java</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>environment</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>facets</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>javaee</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>maven</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>parser-java</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>projects</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>resources</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>scaffold</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>scaffold-faces</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>         
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>shell</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>         
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>shell-spi</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>text</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>shell-test-harness</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>ui</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>ui-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>ui-test-harness</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>ui-spi</artifactId>
            <version>${project.version}</version>
            <classifier>forge-addon</classifier>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge</groupId>
            <artifactId>forge-bootstrap</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge</groupId>
            <artifactId>xml-parser</artifactId>
            <version>${version.xmlparser}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>addon-manager-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>addon-manager-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>dependencies-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>dependencies-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>maven-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>maven-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>resources-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge.addon</groupId>
            <artifactId>resources-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
      </dependencies>
   </dependencyManagement>

   <dependencies>
      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <scope>test</scope>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
            <inherited>true</inherited>
            <configuration>
               <preparationGoals>clean install</preparationGoals>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <inherited>true</inherited>
            <configuration>
               <source>${maven.compiler.source}</source>
               <target>${maven.compiler.target}</target>
               <encoding>UTF-8</encoding>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <inherited>true</inherited>
            <configuration>
               <archive>
                  <manifest>
                     <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                     <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                  </manifest>
               </archive>
               <forceCreation>true</forceCreation>
            </configuration>
         </plugin>
      </plugins>

      <pluginManagement>
         <plugins>
            <plugin>
               <groupId>org.jboss.forge.furnace</groupId>
               <artifactId>furnace-maven-plugin</artifactId>
               <version>${version.furnace}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-source-plugin</artifactId>
               <executions>
                  <execution>
                     <id>attach-sources</id>
                     <goals>
                        <goal>jar-no-fork</goal>
                     </goals>
                  </execution>
               </executions>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-jar-plugin</artifactId>
               <configuration>
                  <archive>
                     <manifest>
                        <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                     </manifest>
                     <manifestEntries>
                        <Implementation-URL>${project.url}</Implementation-URL>
                        <Forge-Release-Version>${forge.release.version}</Forge-Release-Version>
                        <Forge-Release-Codename>${forge.release.codename}</Forge-Release-Codename>
                     </manifestEntries>
                     <manifestSections>
                        <manifestSection>
                           <name>Build-Information</name>
                           <manifestEntries>
                              <Maven-Version>${maven.version}</Maven-Version>
                              <Java-Version>${java.version}</Java-Version>
                              <Java-Vendor>${java.vendor}</Java-Vendor>
                              <Os-Name>${os.name}</Os-Name>
                              <Os-Arch>${os.arch}</Os-Arch>
                              <Os-Version>${os.version}</Os-Version>
                              <Scm-Url>${forge.scm.url}</Scm-Url>
                              <Scm-Connection>${forge.scm.connection}</Scm-Connection>
                              <Build-Time>${build.timestamp}</Build-Time>
                           </manifestEntries>
                        </manifestSection>
                     </manifestSections>
                  </archive>
               </configuration>
            </plugin>

            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-javadoc-plugin</artifactId>
               <configuration>
                  <!-- Default configuration for all reports -->
                  <outputDirectory>${project.build.directory}/javadoc/${project.version}</outputDirectory>
                  <reportOutputDirectory>${project.build.directory}/javadoc/${project.version}</reportOutputDirectory>
                  <destDir>${project.build.directory}/javadoc/${project.version}</destDir>
                  <failOnError>false</failOnError>
               </configuration>
               <executions>
                  <execution>
                     <id>aggregate</id>
                     <goals>
                        <goal>aggregate</goal>
                     </goals>
                     <phase>site</phase>
                     <configuration>
                        <!-- Specific configuration for the aggregate report -->
                     </configuration>
                  </execution>
               </executions>
            </plugin>

            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-plugin</artifactId>
               <configuration>
                  <argLine>-Xms256m -Xmx512m -XX:MaxPermSize=160m</argLine>
                  <systemProperties>
                     <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
                  </systemProperties>
               </configuration>
            </plugin>

            <plugin>
               <!--TODO TEXT. This plugin's configuration is used in m2e only. -->
               <groupId>org.eclipse.m2e</groupId>
               <artifactId>lifecycle-mapping</artifactId>
               <version>1.0.0</version>
               <configuration>
                  <lifecycleMappingMetadata>
                     <pluginExecutions>
                        <pluginExecution>
                           <pluginExecutionFilter>
                              <groupId>
                                 org.apache.maven.plugins
                              </groupId>
                              <artifactId>
                                 maven-dependency-plugin
                              </artifactId>
                              <versionRange>[2.1,)</versionRange>
                              <goals>
                                 <goal>copy</goal>
                              </goals>
                           </pluginExecutionFilter>
                           <action>
                              <ignore />
                           </action>
                        </pluginExecution>
                        <pluginExecution>
                           <pluginExecutionFilter>
                              <groupId>
                                 org.apache.maven.plugins
                              </groupId>
                              <artifactId>
                                 maven-checkstyle-plugin
                              </artifactId>
                              <versionRange>[2.5,)</versionRange>
                              <goals>
                                 <goal>checkstyle</goal>
                              </goals>
                           </pluginExecutionFilter>
                           <action>
                              <ignore />
                           </action>
                        </pluginExecution>
                        <pluginExecution>
                           <pluginExecutionFilter>
                              <groupId>
                                 org.apache.maven.plugins
                              </groupId>
                              <artifactId>
                                 maven-clean-plugin
                              </artifactId>
                              <versionRange>[2.4.1,)</versionRange>
                              <goals>
                                 <goal>clean</goal>
                              </goals>
                           </pluginExecutionFilter>
                           <action>
                              <ignore />
                           </action>
                        </pluginExecution>
                        <pluginExecution>
                           <pluginExecutionFilter>
                              <groupId>
                                 org.apache.maven.plugins
                              </groupId>
                              <artifactId>
                                 maven-antrun-plugin
                              </artifactId>
                              <versionRange>
                                 [1.4,)
                              </versionRange>
                              <goals>
                                 <goal>run</goal>
                              </goals>
                           </pluginExecutionFilter>
                           <action>
                              <ignore />
                           </action>
                        </pluginExecution>
                     </pluginExecutions>
                  </lifecycleMappingMetadata>
               </configuration>
            </plugin>
         </plugins>
      </pluginManagement>
   </build>

   <reporting>
      <plugins>
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.4</version>
            <configuration>
               <instrumentation>
                  <ignores>
                     <!-- <ignore></ignore> -->
                  </ignores>
                  <excludes>
                     <exclude>org.jboss.forge.addon/**/*.class</exclude>
                  </excludes>
               </instrumentation>
            </configuration>
         </plugin>
      </plugins>
   </reporting>

   <scm>
      <connection>${forge.scm.connection}</connection>
      <developerConnection>${forge.developer.connection}</developerConnection>
      <url>${forge.scm.url}</url>
      <tag>2.0.0.Final</tag>
   </scm>
</project>

