<!-- Copyright (c) 2013 LogonBox Limited. All rights reserved. This program 
	and the accompanying materials are made available under the terms of the 
	GNU Public License v3.0 which accompanies this distribution, and is available 
	at http://www.gnu.org/licenses/gpl.html -->
<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.hypersocket</groupId>
		<artifactId>hypersocket-enterprise</artifactId>
		<version>2.4.0-SNAPSHOT</version>
		<relativePath>..</relativePath>
	</parent>
	<groupId>com.logonbox</groupId>
	<artifactId>x-client-logonbox-vpn-gui-jfx</artifactId>
	<name>LogonBox - VPN Client GUI Extension</name>
	
	<properties>
        <!-- If this is changed, as change in hypersocket-client -->
        <javafx.version>17</javafx.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>com.hypersocket</groupId>
			<artifactId>client-logonbox-vpn-gui-jfx</artifactId>
			<version>${project.version}</version>
		</dependency>
	
		<!-- Allows the existing running application to be notified if the user
		attempts to start another instance. Instead, the client will open its
		own window -->
		<dependency>
			<groupId>com.sshtools</groupId>
			<artifactId>forker-wrapped</artifactId>
			<version>1.7-SNAPSHOT</version>
		</dependency>
		
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>com.logonbox</groupId>
				<artifactId>logonbox-plugin-generator</artifactId>
				<executions>
					<execution>
						<id>generate-plugin</id>
						<phase>package</phase>
						<goals>
							<goal>generate-plugin</goal>
						</goals>
						<configuration>
							<resolvedDependenciesProject>app-logonbox-vpn-client</resolvedDependenciesProject>
							<dependencies>
							</dependencies>

							<!-- Make sure we have the native artifacts for our 3 supported platforms 
								for JavaFX -->
							<artifacts>
								<artifact>org.openjfx:javafx-controls:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-controls:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-controls:${javafx.version}:jar:mac</artifact>
								<artifact>org.openjfx:javafx-base:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-base:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-base:${javafx.version}:jar:mac</artifact>
								<artifact>org.openjfx:javafx-fxml:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-fxml:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-fxml:${javafx.version}:jar:mac</artifact>
								<artifact>org.openjfx:javafx-graphics:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-graphics:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-graphics:${javafx.version}:jar:mac</artifact>
								<artifact>org.openjfx:javafx-media:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-media:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-media:${javafx.version}:jar:mac</artifact>
								<artifact>org.openjfx:javafx-web:${javafx.version}:jar:win</artifact>
								<artifact>org.openjfx:javafx-web:${javafx.version}:jar:linux</artifact>
								<artifact>org.openjfx:javafx-web:${javafx.version}:jar:mac</artifact>
							</artifacts>
							
							<!-- And put them in the appropriate place in the extension zip -->
							<appendFolders>
								<param>::linux=linux/x86_64</param>
								<param>::win=win/x86_64</param>
								<param>::mac=osx/x86_64</param>
							</appendFolders>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings 
					only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>
											org.apache.maven.plugins
										</groupId>
										<artifactId>
											maven-dependency-plugin
										</artifactId>
										<versionRange>
											[2.8,)
										</versionRange>
										<goals>
											<goal>
												copy-dependencies
											</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>
											com.logonbox
										</groupId>
										<artifactId>
											logonbox-plugin-generator
										</artifactId>
										<versionRange>
											[0.0.1-SNAPSHOT,)
										</versionRange>
										<goals>
											<goal>
												resolve-dependencies
											</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

</project>
