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

    <parent>
        <groupId>net.sf.smc</groupId>
        <artifactId>smc</artifactId>
        <version>7.3.0</version>
    </parent>

    <artifactId>smc-maven-plugin</artifactId>
    <packaging>maven-plugin</packaging>
    <name>smc-maven-plugin</name>
    <url>http://smc.sourceforge.net</url>
    <description>
      Translates a finite state machine definition into one of 15
      target programming languages.
    </description>

    <properties>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
        <smc.version>7.3.0</smc.version>
    </properties>

    <build>
      <plugins>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>3.6.0</version>
          <executions>

            <execution>
              <id>default-descriptor</id>
              <phase>process-classes</phase>
            </execution>

            <!-- if you want to generate help goal -->
            <execution>
              <id>help-goal</id>
              <goals>
                <goal>helpmojo</goal>
              </goals>
            </execution>

          </executions>
        </plugin>

        <plugin>
          <groupId>org.eclipse.sisu</groupId>
          <artifactId>sisu-maven-plugin</artifactId>
          <version>0.3.3</version>

          <executions>

            <execution>
              <id>generate-index</id>
              <goals>
                <goal>main-index</goal>
              </goals>
            </execution>

          </executions>
        </plugin>

        <plugin>
          <groupId>net.sf.smc</groupId>
          <artifactId>smc-maven-plugin</artifactId>
          <version>${smc.version}</version>

          <executions>

            <execution>
              <id>test-build</id>
              <phase>generate-test-sources</phase>
              <goals>
                <goal>smc</goal>
              </goals>
              <configuration>
                <sourceDirectory>${project.basedir}/src/test/smc</sourceDirectory>
                <targetDirectory>${project.build.directory}/generated-test-sources/smc</targetDirectory>
                <targetLanguage>java7</targetLanguage>
                <verbose>true</verbose>
              </configuration>
            </execution>

          </executions>
        </plugin>

      </plugins>
    </build>

    <dependencies>
        <dependency>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-plugin-api</artifactId>
            <version>3.6.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven.plugin-tools</groupId>
            <artifactId>maven-plugin-annotations</artifactId>
            <version>3.6.0</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>main</artifactId>
            <version>${project.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>net.sf.smc</groupId>
                    <artifactId>library</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
          <groupId>javax.inject</groupId>
          <artifactId>javax.inject</artifactId>
          <version>1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-project</artifactId>
            <version>2.2.1</version>
        </dependency>
        <dependency>
            <groupId>net.sf.ebus</groupId>
            <artifactId>net</artifactId>
            <version>5.2.1</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>net.sf.smc</groupId>
                    <artifactId>library</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>library</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>org.awaitility</groupId>
            <artifactId>awaitility</artifactId>
            <version>4.1.0</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
