<?xml version="1.0" encoding="UTF-8"?> | |
<!-- | |
Licensed to the Apache Software Foundation (ASF) under one or more | |
contributor license agreements. See the NOTICE file distributed with | |
this work for additional information regarding copyright ownership. | |
The ASF licenses this file to You under the Apache License, Version 2.0 | |
(the "License"); you may not use this file except in compliance with | |
the License. You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
--> | |
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" | |
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.apache</groupId> | |
<artifactId>apache</artifactId> | |
<version>21</version> | |
<relativePath/> | |
</parent> | |
<groupId>org.apache.royale.framework</groupId> | |
<artifactId>royale-framework-parent</artifactId> | |
<version>0.9.7-SNAPSHOT</version> | |
<packaging>pom</packaging> | |
<name>Apache Royale: Framework: Parent</name> | |
<description>The Apache Royale Project</description> | |
<!-- | |
This build builds only the framework libraries per default. | |
- In order to build the examples, activate the "build-examples" profile | |
- In order to assemble a distribution, activate the "build-distribution" profile. | |
--> | |
<scm> | |
<connection>scm:git:https://github.com/apache/royale-asjs.git</connection> | |
<developerConnection>scm:git:https://github.com/apache/royale-asjs.git</developerConnection> | |
<url>scm:git:https://github.com/apache/royale-asjs.git</url> | |
<tag>release/0.9.6</tag> | |
</scm> | |
<properties> | |
<java.version>1.7</java.version> | |
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
<project.reporting.outputencoding>UTF-8</project.reporting.outputencoding> | |
<maven.version>3.5.4</maven.version> | |
<!-- Timestamp for the reproducible builds --> | |
<!--project.build.outputTimestamp>2019-11-01T10:30:00Z</project.build.outputTimestamp--> | |
<royale.build-tools.version>1.1.0</royale.build-tools.version> | |
<royale.compiler.version>0.9.7-SNAPSHOT</royale.compiler.version> | |
<royale.typedefs.version>0.9.7-SNAPSHOT</royale.typedefs.version> | |
<royale.targets>JSRoyale</royale.targets> | |
<royale.skipAS>true</royale.skipAS> | |
<royale.debug>true</royale.debug> | |
<repo.compiler.options/> | |
<flex.version>4.15.0</flex.version> | |
<flash.version>20.0</flash.version> | |
<air.version>20.0</air.version> | |
<!-- For SWF versions see: http://www.adobe.com/devnet/articles/flashplayer-air-feature-list.html --> | |
<swf.version>31</swf.version> | |
<source.map>true</source.map> | |
<!-- This parameter has to be provided from the outside --> | |
<webdriver.gecko.driver/> | |
<selenium.version>3.4.0</selenium.version> | |
<junit.version>4.12</junit.version> | |
</properties> | |
<!-- Only configure the site distribution as the rest is handled by the apache parent --> | |
<distributionManagement> | |
<site> | |
<id>apache.website</id> | |
<url>scm:git:https://git-wip-us.apache.org/repos/asf/royale-asjs.git</url> | |
</site> | |
</distributionManagement> | |
<issueManagement> | |
<system>Jira</system> | |
<url>https://github.com/apache/royale-asjs/issues</url> | |
</issueManagement> | |
<mailingLists> | |
<mailingList> | |
<name>Apache Royale User List</name> | |
<subscribe>users-subscribe@royale.apache.org</subscribe> | |
<unsubscribe>users-unsubscribe@royale.apache.org</unsubscribe> | |
<post>users@royale.apache.org</post> | |
<archive>http://mail-archives.apache.org/mod_mbox/royale-users/</archive> | |
</mailingList> | |
<mailingList> | |
<name>Apache Royale Developer List</name> | |
<subscribe>dev-subscribe@royale.apache.org</subscribe> | |
<unsubscribe>dev-unsubscribe@royale.apache.org</unsubscribe> | |
<post>dev@royale.apache.org</post> | |
<archive>http://mail-archives.apache.org/mod_mbox/royale-dev/</archive> | |
</mailingList> | |
</mailingLists> | |
<modules> | |
<module>frameworks</module> | |
<module>archetypes</module> | |
</modules> | |
<build> | |
<pluginManagement> | |
<plugins> | |
<plugin> | |
<groupId>com.googlecode.maven-download-plugin</groupId> | |
<artifactId>download-maven-plugin</artifactId> | |
<version>1.4.2</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-war-plugin</artifactId> | |
<version>3.2.3</version> | |
</plugin> | |
<plugin> | |
<groupId>org.codehaus.gmaven</groupId> | |
<artifactId>groovy-maven-plugin</artifactId> | |
<version>2.1.1</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.royale.compiler</groupId> | |
<artifactId>royale-maven-plugin</artifactId> | |
<version>${royale.compiler.version}</version> | |
<extensions>true</extensions> | |
<configuration> | |
<targetPlayer>${flash.version}</targetPlayer> | |
<debug>${royale.debug}</debug> | |
<keepAs3Metadata> | |
<name>Bindable</name> | |
<name>Managed</name> | |
<name>ChangeEvent</name> | |
<name>NonCommittingChangeEvent</name> | |
<name>Transient</name> | |
<name>Mixin</name> | |
</keepAs3Metadata> | |
</configuration> | |
<dependencies> | |
<dependency> | |
<groupId>org.apache.royale.compiler</groupId> | |
<artifactId>compiler-jx</artifactId> | |
<version>${royale.compiler.version}</version> | |
</dependency> | |
</dependencies> | |
</plugin> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>versions-maven-plugin</artifactId> | |
<version>2.7</version> | |
</plugin> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>build-helper-maven-plugin</artifactId> | |
<version>3.0.0</version> | |
</plugin> | |
<plugin> | |
<groupId>nl.geodienstencentrum.maven</groupId> | |
<artifactId>sass-maven-plugin</artifactId> | |
<version>3.7.2</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-scm-publish-plugin</artifactId> | |
<version>3.0.0</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-scm-plugin</artifactId> | |
<version>1.10.0</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-release-plugin</artifactId> | |
<version>2.5.3</version> | |
<configuration> | |
<!-- In case of a maven release, we want to build the distribution as well as the swfs --> | |
<arguments>-Papache-release,with-distribution,option-with-swf ${arguments}</arguments> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>com.theoryinpractise</groupId> | |
<artifactId>reproducible-maven-plugin</artifactId> | |
<version>1.0.1</version> | |
</plugin> | |
</plugins> | |
</pluginManagement> | |
<plugins> | |
<!-- Execute some checks if the environment ist correctly configured --> | |
<plugin> | |
<groupId>org.codehaus.gmaven</groupId> | |
<artifactId>groovy-maven-plugin</artifactId> | |
<executions> | |
<!-- Do some pre-build checks and report any findings to the user --> | |
<execution> | |
<id>prerequisite-check</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>execute</goal> | |
</goals> | |
<inherited>false</inherited> | |
<configuration> | |
<properties> | |
<!-- | |
We have to pass this value in this way or we can't | |
access the value overridden by the commandline. | |
--> | |
<geckoProperty>${webdriver.gecko.driver}</geckoProperty> | |
</properties> | |
<source>${project.basedir}/src/main/script/prerequisiteCheckFramework.groovy</source> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<!-- Check if all source files have the required apache license headers --> | |
<plugin> | |
<groupId>org.apache.rat</groupId> | |
<artifactId>apache-rat-plugin</artifactId> | |
<version>0.13</version> | |
<executions> | |
<execution> | |
<id>license-check</id> | |
<phase>verify</phase> | |
<goals> | |
<goal>check</goal> | |
</goals> | |
</execution> | |
</executions> | |
<configuration> | |
<excludes> | |
<!-- JSON files can't contain comments --> | |
<exclude>**/*.json</exclude> | |
<!-- This is appended to the LICENSE file for binary packages--> | |
<exclude>LICENSE.bin</exclude> | |
<!-- READMEs don't have headers --> | |
<exclude>README.md</exclude> | |
<exclude>npm/README.md</exclude> | |
<!-- RELEASE_NOTES don't have headers either --> | |
<exclude>**/RELEASE_NOTES.md</exclude> | |
<!-- Stuff that needs to be removed --> | |
<exclude>fxg2svg/**</exclude> | |
<exclude>vf2js/**</exclude> | |
<!-- Should probably also be removed --> | |
<exclude>js/*jshint*</exclude> | |
<!-- FlashBuilder settings. frameworks/fb.properties contains Alex' path entries and should be removed --> | |
<exclude>**/fb.properties</exclude> | |
<!-- FlashBuilder / Eclipse settings. If checked in, they should have apache headers --> | |
<exclude>**/.settings/**</exclude> | |
<!-- Ignore IntelliJ IDEA project files --> | |
<exclude>**/*.iml</exclude> | |
<exclude>**/.idea/**</exclude> | |
<!-- SASS cc.map generated files by sass-maven-plugin--> | |
<exclude>**/*.css.map</exclude> | |
<!-- swfobject.js is MIT License--> | |
<exclude>**/swfobject.js</exclude> | |
<!-- audio file doesn't have rat-able license--> | |
<exclude>**/ping.mp3</exclude> | |
<!-- | |
Exclude any eventually existing content of target directories. | |
Some times when building with a bigger maven reactor and then | |
with a smaller one, RAT will complain about stuff still in the | |
target directories. We don't want that. | |
--> | |
<exclude>**/target/**</exclude> | |
<exclude>**/src/test/royale/out/**</exclude> | |
<exclude>lib/external/*.html</exclude> | |
</excludes> | |
</configuration> | |
</plugin> | |
</plugins> | |
</build> | |
<profiles> | |
<profile> | |
<id>with-examples</id> | |
<modules> | |
<module>examples</module> | |
</modules> | |
</profile> | |
<profile> | |
<id>with-distribution</id> | |
<modules> | |
<module>distribution</module> | |
</modules> | |
</profile> | |
<profile> | |
<id>with-manualtests</id> | |
<modules> | |
<module>manualtests</module> | |
</modules> | |
</profile> | |
<profile> | |
<id>with-ui-testsuite</id> | |
<!-- Disabled for now till I find out what the module is about --> | |
<!--modules> | |
<module>testsuite</module> | |
</modules--> | |
</profile> | |
<profile> | |
<id>option-with-swf</id> | |
<properties> | |
<royale.targets>SWF,JSRoyale</royale.targets> | |
<royale.skipAS>false</royale.skipAS> | |
</properties> | |
<dependencies> | |
<dependency> | |
<groupId>com.adobe.air.framework</groupId> | |
<artifactId>airglobal</artifactId> | |
<version>${air.version}</version> | |
<type>swc</type> | |
<scope>runtime</scope> | |
</dependency> | |
</dependencies> | |
</profile> | |
<profile> | |
<id>_reproducible-build</id> | |
<activation> | |
<property> | |
<name>project.build.outputTimestamp</name> | |
</property> | |
</activation> | |
<build> | |
<plugins> | |
<plugin> | |
<groupId>org.apache.royale.compiler</groupId> | |
<artifactId>royale-maven-plugin</artifactId> | |
<version>${royale.compiler.version}</version> | |
<extensions>true</extensions> | |
<configuration> | |
<additionalCompilerOptions> | |
-metadata.date=${project.build.outputTimestamp};-metadata.dateFormat=yyyy-MM-dd'T'HH:mm:ss'Z' | |
</additionalCompilerOptions> | |
</configuration> | |
</plugin> | |
</plugins> | |
</build> | |
</profile> | |
<!-- Make the release-plugin use the new reproducible build plugin extension --> | |
<profile> | |
<id>apache-release</id> | |
<properties> | |
<source.map>false</source.map> | |
<royale.debug>false</royale.debug> | |
</properties> | |
<build> | |
<plugins> | |
<plugin> | |
<groupId>com.theoryinpractise</groupId> | |
<artifactId>reproducible-maven-plugin</artifactId> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-release-plugin</artifactId> | |
<configuration> | |
<preparationGoals>clean com.theoryinpractise:reproducible-maven-plugin:apply install</preparationGoals> | |
<completionGoals>com.theoryinpractise:reproducible-maven-plugin:clear</completionGoals> | |
<goals>deploy</goals> | |
</configuration> | |
</plugin> | |
</plugins> | |
</build> | |
</profile> | |
</profiles> | |
</project> |