<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>org.eclipse.mylyn.incubator-parent</artifactId>
    <groupId>org.eclipse.mylyn</groupId>
    <version>3.7.0-SNAPSHOT</version>
  </parent>
  <artifactId>org.eclipse.mylyn.tests.performance</artifactId>
  <version>3.7.0-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>
  <properties>
    <mylyn-performance-test-suite>org.eclipse.mylyn.tests.performance.AllPerformanceTests</mylyn-performance--test-suite>
  </properties>
  <build>
    <plugins>
      <plugin>
	<groupId>org.eclipse.tycho</groupId>
	<artifactId>tycho-surefire-plugin</artifactId>
	<version>${tycho-version}</version>
	<configuration>
	  <useUIHarness>true</useUIHarness>
	  <forkedProcessTimeoutInSeconds>7200</forkedProcessTimeoutInSeconds>
	  <testSuite>org.eclipse.mylyn.tests.performance</testSuite>
	  <testClass>${test.suite}</testClass>
	  <argLine>-Xmx1024m -XX:MaxPermSize=256m -Djava.io.tmpdir=${project.build.directory}</argLine>
	</configuration>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-source-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>
