<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>

	<groupId>de.rpgframework</groupId>
	<artifactId>rpgframework-master</artifactId>
	<version>4.2.2</version>
	<packaging>pom</packaging>

	<name>RPGFramework</name>
	<url>http://www.rpgframework.de/</url>
	<description>Build Framework</description>
	<licenses>
		<license>
			<name>GNU lesser general public license 2.1</name>
			<url>https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt</url>
		</license>
	</licenses>

	<modules>
		<module>RPGFramework_Core</module>
		<module>RPGFramework_Chars</module>
		<module>RPGFramework_JavaFX</module>
		<module>RPGFramework_Print</module>
		<module>RPGFramework_Products</module>
	</modules>

	<developers>
		<developer>
			<name>Stefan Prelle</name>
			<email>stefan@prelle.org</email>
			<timezone>GMT+1</timezone>
			<roles>
				<role>Lead developer</role>
			</roles>
		</developer>
	</developers>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<log4j.version>2.25.3</log4j.version>
		<maven.compiler.target>11</maven.compiler.target>
		<maven.compiler.source>11</maven.compiler.source>
		<maven.skip.deploy>false</maven.skip.deploy>
		<openjfx.version>14.0.2.1</openjfx.version>
		<revision>4.2.2</revision>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.apache.logging.log4j</groupId>
				<artifactId>log4j-api</artifactId>
				<version>${log4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.logging.log4j</groupId>
				<artifactId>log4j-core</artifactId>
				<version>${log4j.version}</version>
				<scope>runtime</scope>
			</dependency>
			<dependency>
				<groupId>de.rpgframework</groupId>
				<artifactId>rpgframework-core</artifactId>
				<version>${revision}</version>
			</dependency>
			<dependency>
				<groupId>de.rpgframework</groupId>
				<artifactId>rpgframework-chars</artifactId>
				<version>${revision}</version>
			</dependency>
			<dependency>
				<groupId>de.rpgframework</groupId>
				<artifactId>rpgframework-print</artifactId>
				<version>${revision}</version>
			</dependency>
			<dependency>
				<groupId>de.rpgframework</groupId>
				<artifactId>rpgframework-products</artifactId>
				<version>${revision}</version>
			</dependency>
			<dependency>
				<groupId>de.rpgframework</groupId>
				<artifactId>rpgframework-javafx</artifactId>
				<version>${revision}</version>
			</dependency>
			<dependency>
				<groupId>org.openjfx</groupId>
				<artifactId>javafx-base</artifactId>
				<version>${openjfx.version}</version>
			</dependency>
			<dependency>
				<groupId>org.openjfx</groupId>
				<artifactId>javafx-graphics</artifactId>
				<version>${openjfx.version}</version>
			</dependency>
			<dependency>
				<groupId>org.openjfx</groupId>
				<artifactId>javafx-controls</artifactId>
				<version>${openjfx.version}</version>
			</dependency>
			<dependency>
				<groupId>org.openjfx</groupId>
				<artifactId>javafx-swing</artifactId>
				<version>${openjfx.version}</version>
			</dependency>
			<dependency>
				<groupId>org.openjfx</groupId>
				<artifactId>javafx-media</artifactId>
				<version>${openjfx.version}</version>
			</dependency>
			<dependency>
				<groupId>org.prelle</groupId>
				<artifactId>javafx-extensions</artifactId>
				<version>4.4.2</version>
			</dependency>
			<dependency>
				<groupId>org.prelle</groupId>
				<artifactId>simple-persist</artifactId>
				<version>3.3.0</version>
			</dependency>
			<dependency>
				<groupId>javax.xml.bind</groupId>
				<artifactId>jaxb-api</artifactId>
				<version>2.3.1</version>
			</dependency>
		</dependencies>
	</dependencyManagement>


	<build>
		<sourceDirectory>src/main/api</sourceDirectory>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.14.1</version>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>3.0.0</version>
				<executions>
					<execution>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/main/impl</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>

            <plugin>
               <groupId>org.sonatype.central</groupId>
               <artifactId>central-publishing-maven-plugin</artifactId>
               <version>0.7.0</version>
               <extensions>true</extensions>
               <configuration>
                  <publishingServerId>central</publishingServerId>
                  <deploymentName>${project.artifactId}_${project.version}</deploymentName>
                  <autoPublish>true</autoPublish>
               </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>3.1.0</version>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <skip>false</skip>
                            <failOnError>false</failOnError>
                            <stylesheet>java</stylesheet>
                            <docfilessubdirs>true</docfilessubdirs>
                            <additionalOptions>
                                -html5 -Xdoclint:syntax
                            </additionalOptions>
                            <detectLinks>true</detectLinks>
                            <links>
                                <link>https://docs.oracle.com/en/java/javase/11/docs/api/</link>
                                <link>https://openjfx.io/javadoc/12/</link>
                            </links>
                            <author>false</author>
                            <sourceFileExcludes>
                                <sourceFileExclude>**/module-info.java</sourceFileExclude>
                            </sourceFileExcludes>
                        </configuration>

                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                        <configuration>
                            <skipSource>false</skipSource>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-gpg-plugin</artifactId>
                <version>1.6</version>
                <executions>
                    <execution>
                        <id>sign-artifacts</id>
                        <phase>verify</phase>
                        <configuration>
                            <gpgArguments>
                                <arg>--pinentry-mode</arg>
                                <arg>loopback</arg>
                            </gpgArguments>
                        </configuration>
                        <goals>
                            <goal>sign</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
               <groupId>org.sonatype.central</groupId>
               <artifactId>central-publishing-maven-plugin</artifactId>
               <version>0.7.0</version>
               <extensions>true</extensions>
               <configuration>
                  <publishingServerId>central</publishingServerId>
                  <deploymentName>${project.artifactId}_${project.version}</deploymentName>
                  <autoPublish>true</autoPublish>
               </configuration>
         </plugin>
 		</plugins>
	</build>

    <ciManagement>
        <system>Bitbucket Pipelines</system>
        <url>https://bitbucket.org/taranion/rpgframework/pipelines/</url>
    </ciManagement>
    <scm>
        <connection>scm:git:git@bitbucket.org:taranion/rpgframework.git</connection>
        <developerConnection>scm:git:git@bitbucket.org:taranion/rpgframework.git</developerConnection>
        <url>https://bitbucket.org/taranion/rpgframework/</url>
        <tag>HEAD</tag>
    </scm>

    <repositories>
        <repository>
            <id>central-portal-snapshots</id>
            <url>https://central.sonatype.com/repository/maven-snapshots/</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>

</project>
