<?xml version="1.0" encoding="ISO-8859-1"?>
<project>
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache.directory</groupId>
    <artifactId>build</artifactId>
    <version>1.0.1</version>
  </parent>

  <groupId>org.apache.directory.server</groupId>
  <artifactId>build</artifactId>
  <version>1.0-RC1</version>
  <name>ApacheDS</name>
  <packaging>pom</packaging>

  <url>http://directory.apache.org/subprojects/apacheds/</url>

  <pluginRepositories>
    <pluginRepository>
      <id>apache.snapshots</id>
      <name>Apache Snapshot Plugins</name>
      <url>http://cvs.apache.org/maven-snapshot-repository</url>
    </pluginRepository>
  </pluginRepositories>

  <distributionManagement>
    <site>
      <id>apache.websites</id>
      <url>scp://minotaur.apache.org/www/directory.apache.org/subprojects/apacheds/</url>
    </site>
  </distributionManagement>

  <issueManagement>
    <system>JIRA</system>
    <url>http://issues.apache.org/jira/browse/DIREVE</url>
  </issueManagement>
  
  <inceptionYear>2003</inceptionYear>
  
  <mailingLists>
    <mailingList>
      <name>The Directory Developers List</name>
      <subscribe>dev-subscribe@directory.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@directory.apache.org</unsubscribe>
      <post>dev@directory.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/directory-dev</archive>
    </mailingList>
    <mailingList>
      <name>The Directory Commits (SVN) List</name>
      <subscribe>commits-subscribe@directory.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@directory.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/directory-commits</archive>
    </mailingList>
  </mailingLists>

  <dependencies>
    <dependency>
      <groupId>org.apache.directory.shared</groupId>
      <artifactId>shared-ldap</artifactId>
      <version>0.9.5</version>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>jdk1.5</id>
      <activation>
        <jdk>1.5</jdk>
      </activation>
      <modules>
        <module>core</module>
        <module>core-shared</module>
        <module>core-plugin</module>
        <module>core-unit</module>
        <module>protocol-shared</module>
        <module>protocol-ntp</module>
        <module>protocol-ldap</module>
        <module>protocol-kerberos</module>
        <module>protocol-dhcp</module>
        <module>protocol-dns</module>
        <module>protocol-changepw</module>
        <module>server-tools</module>
        <module>server-sar</module>
        <module>server-unit</module>
        <module>server-main</module>
        <module>server-jndi</module>
        <module>kerberos-shared</module>

        <!-- extra for jdk 1.5 -->
        <module>server-ssl</module>
        <!-- extra for jdk 1.5 -->

      </modules>
    </profile>

    <profile>
      <id>jdk1.4</id>
      <activation>
        <jdk>1.4</jdk>
      </activation>
      <modules>
        <module>core</module>
        <module>core-shared</module>
        <module>core-plugin</module>
        <module>core-unit</module>
        <module>protocol-shared</module>
        <module>protocol-ntp</module>
        <module>protocol-ldap</module>
        <module>protocol-kerberos</module>
        <module>protocol-dhcp</module>
        <module>protocol-dns</module>
        <module>protocol-changepw</module>
        <module>server-tools</module>
        <module>server-sar</module>
        <module>server-unit</module>
        <module>server-main</module>
        <module>server-jndi</module>
        <module>kerberos-shared</module>
      </modules>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
              <execution>
                <phase>validate</phase>
                <configuration>
                  <tasks>
                    <echo>
====================================================================
                       W A R N I N G
                       -------------

Build with 1.4 jvm will not include modules:

 o server-ssl

Use JDK 1.5 to make sure these modules build.
====================================================================
                    </echo>
                  </tasks>
                </configuration>
                <goals>
                  <goal>run</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

  <developers>
    <developer>
      <id>adc</id>
    </developer>
    <developer>
      <id>akarasulu</id>
      <url>http://directory.apache.org/community/who/akarasulu.html</url>
    </developer>
    <developer>
      <id>bayard</id>
    </developer>
    <developer>
      <id>bloritsch</id>
    </developer>
    <developer>
      <id>brett</id>
    </developer>
    <developer>
      <id>elecharny</id>
      <url>http://directory.apache.org/community/who/elecharny.html</url>
    </developer>
    <developer>
      <id>erodriguez</id>
      <url>http://directory.apache.org/community/who/erodriguez.html</url>
    </developer>
    <developer>
      <id>ersiner</id>
      <url>http://directory.apache.org/community/who/ersiner.html</url>
    </developer>
    <developer>
      <id>jmachols</id>
      <url>http://directory.apache.org/community/who/jmachols.html</url>
    </developer>
    <developer>
      <id>niklas</id>
    </developer>
    <developer>
      <id>noel</id>
      <url>http://directory.apache.org/community/who/noel.html</url>
    </developer>
    <developer>
      <id>psteitz</id>
      <url>http://directory.apache.org/community/who/psteitz.html</url>
    </developer>
    <developer>
      <id>szoerner</id>
      <url>http://directory.apache.org/community/who/szoerner.html</url>
    </developer>
    <developer>
      <id>trustin</id>
      <url>http://directory.apache.org/community/who/trustin.html</url>
    </developer>
    <developer>
      <id>vtence</id>
      <url>http://directory.apache.org/community/who/vtence.html</url>
    </developer>
    <developer>
      <id>wesmckean</id>
      <url>http://directory.apache.org/community/who/wesmckean.html</url>
    </developer>
  </developers>
  
  <contributors>
    <contributor>
      <name>Nick Faiz</name>
    </contributor>
  </contributors>

  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
    </license>
  </licenses>

  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/directory/trunks/apacheds</connection>
    <url>http://svn.apache.org/viewcvs.cgi/directory/trunks/apacheds</url>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/directory/trunks/apacheds</developerConnection>
  </scm>

  <organization>
    <name>Apache Software Foundation</name>
    <url>http://www.apache.org</url>
  </organization>

  <build>
    <plugins>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
      </plugin>
      
      <plugin>
        <inherited>false</inherited>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <phase>site</phase>
            <configuration>
              <tasks>
                <javadoc destdir="target/site/docs/api" 
                         use="true" 
                         windowtitle="ApacheDS" 
                         packagenames="org.apache.directory.server.*">
                  <sourcepath>
                    <dirset dir="." includes="*/src/main/java"/>
                  </sourcepath>
                </javadoc>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

    </plugins>
  </build>

  <reporting>
    <excludeDefaults>true</excludeDefaults>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <reportSets>
          <reportSet>
            <reports>
              <report>project-team</report>
              <report>mailing-list</report>
              <report>issue-tracking</report>
              <report>license</report>
              <report>scm</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>

</project>
