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

	<modelVersion>4.0.0</modelVersion>

	<groupId>org.slf4j</groupId>
	<artifactId>slf4j-parent</artifactId>
	<version>1.5.0-M0</version>

	<packaging>pom</packaging>
	<name>SLF4J</name>

	<url>http://www.slf4j.org</url>

	<organization>
		<name>QOS.ch</name>
		<url>http://www.qos.ch</url>
	</organization>
	<inceptionYear>2005</inceptionYear>

  <properties>
    <!-- <project_version_for_osgi>1.3.0</project_version_for_osgi>  -->
    <pv4osgi>1.4.3</pv4osgi>
  </properties>

	<modules>
		<module>slf4j-api</module>
    <module>slf4j-simple</module>
    <module>slf4j-nop</module>
		<module>slf4j-jdk14</module>
    <module>slf4j-log4j12</module>
    <module>slf4j-jcl</module>
    <module>jcl104-over-slf4j</module>
    <module>log4j-over-slf4j</module>
    <module>slf4j-site</module>
    <module>slf4j-converter</module>
  </modules>

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

 
 <dependencyManagement>
    <dependencies>

      <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.13</version>
      </dependency>

   </dependencies>
 </dependencyManagement>


	<build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
      </resource>
    </resources>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.3</source>
					<target>1.3</target>
				</configuration>
			</plugin>
 
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<forkMode>once</forkMode>
					<reportFormat>plain</reportFormat>
					<trimStackTrace>false</trimStackTrace>
					<excludes>
						<exclude>**/AllTest.java</exclude>
						<exclude>**/PackageTest.java</exclude>
					</excludes>
				</configuration>
			</plugin>		

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>        
        <artifactId>maven-source-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>              
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <destDir>/target/site/api</destDir>
        	<aggregate>true</aggregate>
					<links>
						<link>
							http://java.sun.com/j2se/1.5.0/docs/api
						</link>
					</links>
          <groups>
            <group>
              <title>SLF4J packages</title>
              <packages>org.slf4j:org.slf4j.*</packages>
            </group>
            <group>
              <title>Jakarta Commons Logging packages</title>
              <packages>org.apache.commons.*</packages>
            </group>

            <group>
              <title>Apache log4j</title>
              <packages>org.apache.log4j</packages>
            </group>

          </groups>
        </configuration>
      </plugin>

    </plugins>

	</build>

  <profiles>
    <profile>
      <id>skipTests</id>     
      <properties>
        <maven.test.skip>true</maven.test.skip>
      </properties>
    </profile>
     <profile>
      <id>osgi</id>
      <modules>
         <module>osgi-over-slf4j</module>
         <module>slf4j-osgi-test-bundle</module>
         <module>slf4j-osgi-integration-test</module>
      </modules>

      <repositories>
        <repository>
          <id>m2apache.snapshots</id>
          <url>http://people.apache.org/repo/m2-snapshot-repository</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>

        <repository>
          <id>springframework.org</id>
          <name>Springframework Maven SNAPSHOT Repository</name>
          <url>http://static.springframework.org/maven2-snapshots/</url>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>

      </repositories>

      <pluginRepositories>
        <pluginRepository>
          <id>apache.snapshots</id>
          <name>Apache Snapshot Plugin Repository</name>
          <url>http://people.apache.org/repo/m2-snapshot-repository</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled> 
          </snapshots>
        </pluginRepository>
      </pluginRepositories>

    </profile>
  </profiles>

  <pluginRepositories>
    <pluginRepository>
      <id>apache.snapshots</id>
      <name>Apache Snapshot Plugin Repository</name>
      <url>http://people.apache.org/repo/m2-snapshot-repository</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled> 
     </snapshots>
    </pluginRepository>
  </pluginRepositories>
  
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-project-info-reports-plugin</artifactId>
				<reportSets>
					<reportSet><reports/></reportSet>
				</reportSets>
			</plugin>	    
      
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.1</version>
        <configuration>
          <descriptors>
            <descriptor>
              src/main/assembly/source.xml
            </descriptor>
          </descriptors>
					<finalName>slf4j-${project.version}</finalName>
					<appendAssemblyId>false</appendAssemblyId>
					<outputDirectory>target/site/dist/</outputDirectory>
				</configuration>
			</plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <configuration>
          <aggregate>true</aggregate>
          <javadocDir>target/site/api/</javadocDir>
          <linkJavadoc>true</linkJavadoc>
        </configuration>
      </plugin>
    </plugins>

	</reporting>
	
	  
  <scm>
		<connection>scm:svn:http://svn.slf4j.org/repos/slf4j/trunk</connection>
		<developerConnection>scm:svn:https://svn.slf4j.org/repos/slf4j/trunk</developerConnection>
		<url>http://svn.slf4j.org/viewvc/slf4j/trunk/</url>
	</scm>
	
	<distributionManagement>
		<site>
			<id>pixie</id>
			<url>scp://pixie/var/www/www.slf4j.org/htdocs/</url>
		</site>

    <repository>
      <id>pixie</id>
      <url>scp://pixie/var/mvnrepo/</url>
    </repository>

	</distributionManagement>
  
</project>