<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">
  <parent>
    <artifactId>turbine-parent</artifactId>
       <groupId>org.apache.turbine</groupId>
       <version>4</version>
  </parent>

  <modelVersion>4.0.0</modelVersion>
  <artifactId>fulcrum-yaafi-crypto</artifactId>
  <groupId>org.apache.fulcrum</groupId>
  <version>1.0.7-SNAPSHOT</version>
  <name>Fulcrum YAAFI Crypto</name>
  <inceptionYear>2008</inceptionYear>
  <description>Fulcrum YAAFI Crypto Library</description>
  <url>http://turbine.apache.org/fulcrum/fulcrum-yaafi-crytpo</url>
		
  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/turbine/fulcrum/trunk/yaafi-crypto/</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/turbine/fulcrum/trunk/yaafi-crypto/</developerConnection>
    <url>http://svn.apache.org/viewvc/turbine/fulcrum/trunk/yaafi-crypto/</url>
  </scm>

  <distributionManagement>
    <site>
      <id>apache.website</id>
      <name>Fulcrum Website</name>
      <url>${fulcrum.deployment.protocol}://people.apache.org/www/turbine.apache.org/fulcrum/fulcrum-yaafi-crypto/</url>
    </site>    
  </distributionManagement>
	
  <developers>
    <developer>
      <name>Siegfried Goeschl</name>
      <id>sgoeschl</id>
      <email>sgoeschl@apache.org</email>
      <organization />
      <roles>
        <role>Java Developer</role>
      </roles>
    </developer>
  </developers>

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

  <build>
    <sourceDirectory>${basedir}/src/java</sourceDirectory>
    <testSourceDirectory>${basedir}/src/test</testSourceDirectory>
  </build>
  
  <profiles>
    <profile>
      <id>rc</id>
      <distributionManagement>
        <!-- Cannot define in parent ATM, see COMMONSSITE-26 -->
        <site>
          <id>apache.website</id>
          <name>Apache Fulcrum Release Candidate Staging Site</name>
          <url>${fulcrum.deployment.protocol}://people.apache.org/www/turbine.apache.org/builds/fulcrum/${fulcrum.componentid}/${fulcrum.release.version}/${fulcrum.rc.version}/site</url>
        </site>
      </distributionManagement>
    </profile>
  </profiles>

  <properties>
    <!-- This bits are used for the staging directory -->
    <fulcrum.release.version>1.0.6</fulcrum.release.version>
    <fulcrum.rc.version>RC4</fulcrum.rc.version>  
  </properties>  
	
</project>