Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMat Booth2016-05-03 20:26:19 -0400
committerMat Booth2016-08-17 06:24:46 -0400
commit68aa09d58dd62b01f121a4f2eedac4a7c28d4f15 (patch)
tree86de8226573c35773345ca2fd429fb25a7a9d1c6 /pom.xml
parentaecdb99e3f72b7fbde1fc5cdeec7337b92f0acd7 (diff)
downloadorg.eclipse.ecf-68aa09d58dd62b01f121a4f2eedac4a7c28d4f15.tar.gz
org.eclipse.ecf-68aa09d58dd62b01f121a4f2eedac4a7c28d4f15.tar.xz
org.eclipse.ecf-68aa09d58dd62b01f121a4f2eedac4a7c28d4f15.zip
Bug 396457 - [Releng][Maven] Create a build based on tycho
First part of adding the necessary machinery to build ECF with tycho. Adds two new projects, one to contain target platform definitions, and one to contain p2 repository definitions. Adds a parent pom at the root of the project and a gitignore file to mask built artifacts from the git repo. Poms are added and the build enabled for all the core features and plug-ins used by Equinox P2 (i.e. the minimum necessary to build the Eclipse Platform itself.) Change-Id: I0b41b4a611e2b3588fe876f14bd7c8e80de07b67 Signed-off-by: Mat Booth <mat.booth@redhat.com>
Diffstat (limited to 'pom.xml')
-rw-r--r--pom.xml284
1 files changed, 284 insertions, 0 deletions
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 000000000..066d87b51
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,284 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2016, Red Hat, Inc
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.eclipse.ecf</groupId>
+ <artifactId>ecf-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <name>Eclipse Communication Framework</name>
+ <url>https://www.eclipse.org/ecf/</url>
+
+ <licenses>
+ <license>
+ <name>Eclipse Public License v1.0</name>
+ <url>http://www.eclipse.org/legal/epl-v10.html</url>
+ <distribution>repo</distribution>
+ <comments>
+ All rights reserved.
+
+ This program and the accompanying materials are made
+ available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.htm
+ </comments>
+ </license>
+ </licenses>
+
+ <issueManagement>
+ <url>https://bugs.eclipse.org/bugs/buglist.cgi?product=ECF</url>
+ <system>Bugzilla</system>
+ </issueManagement>
+
+ <properties>
+ <tycho-version>0.25.0</tycho-version>
+ <cbi-version>1.1.3</cbi-version>
+ <target-platform>neon</target-platform>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.resources.sourceEncoding>UTF-8</project.resources.sourceEncoding>
+ <tycho.scmUrl>scm:git:https://git.eclipse.org/r/ecf/org.eclipse.ecf</tycho.scmUrl>
+ <!-- TODO: tests are not yet ready for tycho -->
+ <skipTests>true</skipTests>
+ </properties>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>repo.eclipse.org</id>
+ <url>https://repo.eclipse.org/content/groups/releases/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <modules>
+ <module>framework/bundles/org.eclipse.ecf</module>
+ <module>framework/bundles/org.eclipse.ecf.filetransfer</module>
+ <module>framework/bundles/org.eclipse.ecf.identity</module>
+ <module>framework/bundles/org.eclipse.ecf.ssl</module>
+
+ <module>providers/bundles/org.eclipse.ecf.provider.filetransfer</module>
+ <module>providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient4</module>
+ <module>providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient4.ssl</module>
+ <module>providers/bundles/org.eclipse.ecf.provider.filetransfer.ssl</module>
+
+ <module>releng/features/org.eclipse.ecf.core.feature</module>
+ <module>releng/features/org.eclipse.ecf.core.ssl.feature</module>
+ <module>releng/features/org.eclipse.ecf.filetransfer.feature</module>
+ <module>releng/features/org.eclipse.ecf.filetransfer.httpclient4.feature</module>
+ <module>releng/features/org.eclipse.ecf.filetransfer.httpclient4.ssl.feature</module>
+ <module>releng/features/org.eclipse.ecf.filetransfer.ssl.feature</module>
+
+ <module>releng/org.eclipse.ecf.releng.target</module>
+ <module>releng/org.eclipse.ecf.releng.repository</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <target>
+ <artifact>
+ <groupId>org.eclipse.ecf</groupId>
+ <artifactId>org.eclipse.ecf.releng.target</artifactId>
+ <classifier>ecf-${target-platform}</classifier>
+ <version>1.0.0-SNAPSHOT</version>
+ </artifact>
+ </target>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-source-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>plugin-source</id>
+ <goals>
+ <goal>plugin-source</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-source-feature-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <includeBinaryFeature>false</includeBinaryFeature>
+ </configuration>
+ <executions>
+ <execution>
+ <id>source-feature</id>
+ <phase>package</phase>
+ <goals>
+ <goal>source-feature</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-compiler-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <compilerArguments>
+ <properties>${project.basedir}/.settings/org.eclipse.jdt.core.prefs</properties>
+ </compilerArguments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-packaging-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-buildtimestamp-jgit</artifactId>
+ <version>${tycho-version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-sourceref-jgit</artifactId>
+ <version>${tycho-version}</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <format>'v'yyyyMMdd-HHmm</format>
+ <archive>
+ <addMavenDescriptor>true</addMavenDescriptor>
+ </archive>
+ <sourceReferences>
+ <generate>true</generate>
+ </sourceReferences>
+ <timestampProvider>jgit</timestampProvider>
+ <jgit.dirtyWorkingTree>warning</jgit.dirtyWorkingTree>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <profiles>
+ <profile>
+ <!-- Enable this profile to pack200 and sign p2 repository contents -->
+ <id>pack-and-sign</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <includePackedArtifacts>true</includePackedArtifacts>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>pack200-normalize</id>
+ <goals>
+ <goal>normalize</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.cbi.maven.plugins</groupId>
+ <artifactId>eclipse-jarsigner-plugin</artifactId>
+ <version>${cbi-version}</version>
+ <executions>
+ <execution>
+ <id>sign</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>pack200-pack</id>
+ <goals>
+ <goal>pack</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>p2-metadata</id>
+ <goals>
+ <goal>p2-metadata</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ <configuration>
+ <defaultP2Metadata>false</defaultP2Metadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>

Back to the top