<?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.4.3-SNAPSHOT</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.3.1</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>