<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (C) 2020-2022, K2N.IO.
  ~
  ~ This library is free software; you can redistribute it and/or
  ~ modify it under the terms of the GNU Lesser General Public
  ~ License as published by the Free Software Foundation; either
  ~ version 2.1 of the License, or (at your option) any later version.
  ~
  ~ This library is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  ~ Lesser General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Lesser General Public
  ~ License along with this library; if not, write to the Free Software
  ~ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  ~
  -->

<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>com.gocypher.cybench.client</groupId>
        <artifactId>gocypher-cybench-client</artifactId>
        <version>1.3.5</version>
    </parent>

    <artifactId>gocypher-cybench-annotations</artifactId>
    <packaging>jar</packaging>

    <name>gocypher-cybench-annotations</name>

    <properties>
        <auto.service.version>1.0.1</auto.service.version>
        <symbol.solver.version>3.24.2</symbol.solver.version>
    </properties>

    <profiles>
        <profile>
            <id>java9-plus</id>
            <activation>
                <jdk>[9.0,)</jdk>
            </activation>
            <properties>
                <project.java.version>${java.specification.version}</project.java.version>
                <java.source.version>${project.java.version}</java.source.version>
                <java.target.version>${project.java.version}</java.target.version>
                <java.compiler.version>${project.java.version}</java.compiler.version>
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-compiler-plugin</artifactId>
                        <version>3.8.1</version>
                        <configuration>
                            <verbose>${java.compiler.verbose}</verbose>
                            <compilerVersion>${java.compiler.version}</compilerVersion>
                            <source>${java.source.version}</source>
                            <target>${java.target.version}</target>
                            <debuglevel>${java.compiler.debuglevel}</debuglevel>
                            <compilerArgs>
                                <arg>--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
                                <arg>--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
                                <arg>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
                                <arg>--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
                            </compilerArgs>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>up-to-java9</id>
            <activation>
                <jdk>(,9.0)</jdk>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>com.sun</groupId>
                    <artifactId>tools</artifactId>
                    <version>${project.java.version}</version>
                    <scope>system</scope>
                    <systemPath>${java.home}/../lib/tools.jar</systemPath>
                </dependency>
            </dependencies>
        </profile>
    </profiles>

    <dependencies>
        <dependency>
            <groupId>org.openjdk.jmh</groupId>
            <artifactId>jmh-core</artifactId>
            <version>${jmh.version}</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.google.auto.service</groupId>
            <artifactId>auto-service</artifactId>
            <version>${auto.service.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.github.javaparser</groupId>
            <artifactId>javaparser-symbol-solver-core</artifactId>
            <version>${symbol.solver.version}</version>
        </dependency>
        <dependency>
            <groupId>org.openjdk.jmh</groupId>
            <artifactId>jmh-generator-annprocess</artifactId>
            <version>${jmh.version}</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>

</project>
