<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>15</version>
   </parent>

   <groupId>org.jboss.forge</groupId>
   <artifactId>forge-parent</artifactId>
   <version>2.7.2.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>
      <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>

      <!-- 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>Two</forge.release.codename>
      <forge.release.version>${project.version}</forge.release.version>

      <version.furnace>${project.version}</version.furnace>
      <version.junit>4.11</version.junit>
      <version.jboss-logmanager>1.4.1.Final</version.jboss-logmanager>
      <version.slf4j>1.6.1</version.slf4j>
   </properties>

   <profiles>
      <profile>
         <id>all</id>
         <activation>
            <activeByDefault>true</activeByDefault>
         </activation>
         <modules>
            <module>bom</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-json</module>
            <module>parser-xml</module>
            <module>resources</module>
            <module>rest-client</module>
            <module>ui</module>
            <module>scaffold</module>
            <module>shell</module>
            <module>templates</module>
            <module>text</module>
            <module>git</module>

            <module>core</module>
            <module>bean-validation</module>
            <module>bootstrap</module>
            <module>dist</module>
         </modules>
      </profile>
      <profile>
         <id>javadoc</id>
         <activation>
            <property>
               <name>javadoc</name>
               <value>true</value>
            </property>
         </activation>
         <modules>
            <module>addon-manager/api</module>
            <module>addon-manager/spi</module>
            <module>addons/api</module>
            <module>bean-validation/api</module>
            <module>convert/api</module>
            <module>configuration/api</module>
            <module>dependencies/api</module>
            <module>environment/api</module>
            <module>facets/api</module>
            <module>git/api</module>
            <module>javaee/api</module>
            <module>maven/api</module>
            <module>projects/api</module>
            <module>parser-java/api</module>
            <module>parser-json/api</module>
            <module>parser-xml/api</module>
            <module>resources/api</module>
            <module>rest-client</module>
            <module>ui/api</module>
            <module>ui/spi</module>
            <module>ui/test-harness</module>
            <module>scaffold/api</module>
            <module>shell/api</module>
            <module>templates/api</module>
            <module>text</module>
         </modules>
      </profile>
   </profiles>
   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>org.jboss.forge</groupId>
            <artifactId>forge-bom</artifactId>
            <version>${project.version}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <!-- Test Dependencies -->
         <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${version.junit}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.forge</groupId>
            <artifactId>forge-bootstrap</artifactId>
            <version>${project.version}</version>
         </dependency>
         
         <!-- JBoss Logging dependencies -->
         <dependency>
            <groupId>org.jboss.logmanager</groupId>
            <artifactId>jboss-logmanager</artifactId>
            <version>${version.jboss-logmanager}</version>
         </dependency>
      </dependencies>
   </dependencyManagement>

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

   <build>
      <plugins>
         <!-- Ignoring unused plugin execution -->
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>buildnumber-maven-plugin</artifactId>
            <inherited>true</inherited>
            <executions>
               <execution>
                  <id>get-build-timestamp</id>
                  <phase>none</phase>
               </execution>
               <execution>
                  <id>get-scm-revision</id>
                  <phase>none</phase>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
            <inherited>true</inherited>
            <configuration>
               <preparationGoals>clean install</preparationGoals>
            </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>
               </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.7.2.Final</tag>
   </scm>
</project>

