<?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>org.eclipse.papyrus.designer</groupId>
		<artifactId>org.eclipse.papyrus.designer.languages.cpp</artifactId>
		<version>1.0.5</version>
	</parent>
	<artifactId>org.eclipse.papyrus.designer.languages.cpp.codegen</artifactId>
	<packaging>eclipse-plugin</packaging>
	<description>This module contains a C++ code generator based on xtend</description>

<build>
	<plugins>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
		</plugin>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-clean-plugin</artifactId>
			<configuration>
				<filesets>
					<fileset>
						<directory>xtend-gen</directory>
						<includes>
							<include>**/*</include>
						</includes>
						<excludes>
							<exclude>.gitignore</exclude>
						</excludes>
					</fileset>
				</filesets>
			</configuration>
		</plugin>
		<plugin>
			<groupId>org.eclipse.xtend</groupId>
			<artifactId>xtend-maven-plugin</artifactId>
			<executions>
				<execution>
					<phase>generate-sources</phase>
					<goals>
						<goal>compile</goal>
					</goals>
				</execution>
			</executions>
			<configuration>
				<outputDirectory>xtend-gen</outputDirectory>
				<testOutputDirectory>${project.build.directory}/xtend-gen/test</testOutputDirectory>
			</configuration>
		</plugin>
	</plugins>
</build>
</project>
