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

    <groupId>org.eclipse.gemini.blueprint</groupId>
    <artifactId>gemini-blueprint</artifactId>
    <packaging>pom</packaging>
    <version>3.0.0.M01</version>
    <name>Eclipse Gemini Blueprint</name>
    <url>http://www.eclipse.org/gemini/blueprint/</url>

    <build>
        <plugins>
            <plugin>
                <groupId>com.agilejava.docbkx</groupId>
                <artifactId>docbkx-maven-plugin</artifactId>
                <version>2.0.17</version>
                <executions>
                    <execution>
                        <id>single-page</id>
                        <goals>
                            <goal>generate-html</goal>
                        </goals>
                        <configuration>
                            <chunkedOutput>false</chunkedOutput>
                            <htmlCustomization>src/docbkx/resources/xsl/html.xsl</htmlCustomization>
                            <postProcess>
                                <copy todir="${basedir}/target/site/reference/html-single">
                                    <fileset dir="${basedir}/target/docbkx/html">
                                        <include name="**/*.html"/>
                                    </fileset>
                                </copy>
                                <copy todir="${basedir}/target/site/reference/html-single">
                                    <fileset dir="${basedir}/src/docbkx/resources">
                                        <include name="**/*.css"/>
                                        <include name="**/*.png"/>
                                        <include name="**/*.gif"/>
                                        <include name="**/*.jpg"/>
                                    </fileset>
                                </copy>
                            </postProcess>
                        </configuration>
                        <phase>pre-site</phase>
                    </execution>
                    <execution>
                        <id>multi-page</id>
                        <goals>
                            <goal>generate-html</goal>
                        </goals>
                        <configuration>
                            <chunkedOutput>true</chunkedOutput>
                            <htmlCustomization>src/docbkx/resources/xsl/html_chunk.xsl</htmlCustomization>
                            <postProcess>
                                <copy todir="${basedir}/target/site/reference">
                                    <fileset dir="${basedir}/target/docbkx">
                                        <include name="**/*.html"/>
                                    </fileset>
                                </copy>
                                <copy todir="${basedir}/target/site/reference/html">
                                    <fileset dir="${basedir}/src/docbkx/resources">
                                        <include name="**/*.css"/>
                                        <include name="**/*.png"/>
                                        <include name="**/*.gif"/>
                                        <include name="**/*.jpg"/>
                                    </fileset>
                                </copy>
                            </postProcess>
                        </configuration>
                        <phase>pre-site</phase>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.docbook</groupId>
                        <artifactId>docbook-xml</artifactId>
                        <version>4.4</version>
                        <scope>runtime</scope>
                    </dependency>
                </dependencies>
                <configuration>
                    <includes>index.xml,faq.xml,issues.xml</includes>
                    <htmlStylesheet>css/html.css</htmlStylesheet>
                    <xincludeSupported>true</xincludeSupported>
                    <sourceDirectory>${basedir}/src/docbkx</sourceDirectory>
                    <!-- use extensions -->
                    <useExtensions>1</useExtensions>
                    <highlightSource>1</highlightSource>
                    <highlightDefaultLanguage/>
                    <!-- callouts -->
                    <calloutsExtension>1</calloutsExtension>
                    <entities>
                        <entity>
                            <name>version</name>
                            <value>${project.version}</value>
                        </entity>
                    </entities>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <distributionManagement>
        <downloadUrl>http://www.eclipse.org/gemini/blueprint/download/</downloadUrl>
        <site>
            <id>gemini.blueprint.home</id>
            <name>www.eclipse.org/gemini/blueprint</name>
            <url>http://www.eclipse.org/gemini/blueprint/</url>
        </site>
    </distributionManagement>
</project>