blob: 6bd5a95840513e54697c75abfec07b2d6be5c7e8 [file] [log] [blame]
Dirk Fauth50304cb2020-02-17 14:12:19 +01001<?xml version="1.0" encoding="UTF-8"?>
2<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4
5 <modelVersion>4.0.0</modelVersion>
6
7 <groupId>org.eclipse.app4mc.build</groupId>
8 <artifactId>parent</artifactId>
9 <version>0.9.8-SNAPSHOT</version>
10
11 <packaging>pom</packaging>
12
13 <url>http://projects.eclipse.org/projects/technology.app4mc</url>
14 <name>APP4MC Tool Platform</name>
15
16 <properties>
17 <app4mc.version>0.9.8-SNAPSHOT</app4mc.version>
18 <app4mc.baseline>0.9.7</app4mc.baseline>
19
20 <tycho.version>1.6.0</tycho.version>
21 <tycho-extras-version>1.6.0</tycho-extras-version>
22
23 <build-helper.version>1.9.1</build-helper.version>
24 <org.jboss.tools.tycho-plugins.version>1.4.0</org.jboss.tools.tycho-plugins.version>
25
26 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
27 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
28 <maven.build.timestamp.format>yyyyMMdd-HHmmss</maven.build.timestamp.format>
29
30 <jacoco.version>0.8.5</jacoco.version>
31 <sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/../../releng/org.eclipse.app4mc.p2repo/target/site/jacoco-aggregate/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
32 <sonar.surefire.reportsPath>../../tests/${project.artifactId}.tests/target/surefire-reports/</sonar.surefire.reportsPath>
33 <sonar.exclusions>**/src-gen/**/*,**/xtend-gen/**/*,**/xcore-gen/**/*</sonar.exclusions>
34 <sonar.issue.ignore.allfile>generated</sonar.issue.ignore.allfile>
35 <sonar.issue.ignore.allfile.generated.fileRegexp>@generated</sonar.issue.ignore.allfile.generated.fileRegexp>
36 </properties>
37
38 <pluginRepositories>
39 <pluginRepository>
40 <id>jboss-public-repository-group</id>
41 <name>JBoss Public Repository Group</name>
42 <url>http://repository.jboss.org/nexus/content/groups/public/</url>
43 </pluginRepository>
44
45 <pluginRepository>
46 <id>jboss-snapshots-repository</id>
47 <name>JBoss Snapshots Repository</name>
48 <url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
49 </pluginRepository>
50 <pluginRepository>
51 <id>cbi</id>
52 <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
53 <releases>
54 <enabled>true</enabled>
55 </releases>
56 <snapshots>
57 <enabled>false</enabled>
58 </snapshots>
59 </pluginRepository>
60 </pluginRepositories>
61
62
63
64 <!-- Common plugins and features contained in the open source distribution -->
65 <modules>
66
67 <!-- Examples first ! (will be used by installers) -->
68 <module>examples/app4mc.example.democar</module>
69 <module>examples/app4mc.example.democar.split</module>
70 <module>examples/app4mc.example.hardware</module>
71 <module>examples/app4mc.example.scheduler</module>
72 <module>examples/app4mc.example.numeric_modes</module>
73 <module>examples/app4mc.example.modeling</module>
74 <module>examples/app4mc.example.modeling.client_server</module>
75 <module>examples/app4mc.example.modeling.feedback_loop</module>
76 <module>examples/app4mc.example.modeling.periodic</module>
77 <module>examples/app4mc.example.modeling.state_machine</module>
78 <module>examples/app4mc.example.modeling.state_machine_feedback_loop</module>
79 <module>examples/app4mc.example.tool.java</module>
80 <module>examples/app4mc.example.tool.validation</module>
81 <module>examples/app4mc.example.tool.workflow</module>
Harald Mackamul33a5d492020-04-28 14:54:49 +020082 <module>examples/waters.fmtv.challenge.2016</module>
83 <module>examples/waters.fmtv.challenge.2017</module>
84 <module>examples/waters.fmtv.challenge.2019</module>
Dirk Fauth50304cb2020-02-17 14:12:19 +010085
86 <module>plugins</module>
87 <module>tests</module>
88 <module>features</module>
89 <module>releng</module>
90
91 </modules>
92
93
94 <build>
95 <pluginManagement>
96 <plugins>
97 <plugin>
98 <groupId>org.eclipse.tycho</groupId>
99 <artifactId>tycho-packaging-plugin</artifactId>
100 <version>${tycho.version}</version>
101
102 <dependencies>
103 <dependency>
104 <groupId>org.eclipse.tycho.extras</groupId>
105 <artifactId>tycho-buildtimestamp-jgit</artifactId>
106 <version>${tycho.version}</version>
107 </dependency>
108 </dependencies>
109
110 <configuration>
111 <timestampProvider>jgit</timestampProvider>
112 <jgit.ignore>pom.xml</jgit.ignore>
113 <jgit.dirtyWorkingTree>ignore</jgit.dirtyWorkingTree>
114 </configuration>
115 </plugin>
116
117 <plugin>
118 <groupId>org.eclipse.tycho</groupId>
119 <artifactId>tycho-p2-plugin</artifactId>
120 <version>${tycho.version}</version>
121
122 <configuration>
123 <baselineReplace>none</baselineReplace>
124 <baselineRepositories>
125 <repository>
126 <url>https://download.eclipse.org/app4mc/updatesites/releases/${app4mc.baseline}/</url>
127 </repository>
128 </baselineRepositories>
129 </configuration>
130 </plugin>
131
132 <plugin>
133 <groupId>org.eclipse.tycho</groupId>
134 <artifactId>tycho-compiler-plugin</artifactId>
135 <version>${tycho.version}</version>
136
137 <configuration>
138 <useProjectSettings>false</useProjectSettings>
139 <encoding>UTF-8</encoding>
140 <extraClasspathElements>
141 <extraClasspathElement>
142 <groupId>com.oracle</groupId>
143 <artifactId>javafx</artifactId>
144 <version>8.0.0-SNAPSHOT</version>
145 <systemPath>${java.home}/lib/jfxswt.jar</systemPath>
146 <scope>system</scope>
147 </extraClasspathElement>
148 </extraClasspathElements>
149 </configuration>
150 </plugin>
151
152 <plugin>
153 <groupId>org.jacoco</groupId>
154 <artifactId>jacoco-maven-plugin</artifactId>
155 <version>${jacoco.version}</version>
156 </plugin>
157 </plugins>
158 </pluginManagement>
159
160 <plugins>
161 <plugin>
162 <groupId>org.eclipse.tycho</groupId>
163 <artifactId>tycho-maven-plugin</artifactId>
164 <version>${tycho.version}</version>
165
166 <extensions>true</extensions>
167 </plugin>
168
169 <plugin>
170 <groupId>org.eclipse.tycho</groupId>
171 <artifactId>tycho-source-plugin</artifactId>
172 <version>${tycho.version}</version>
173
174 <executions>
175 <execution>
176 <id>plugin-source</id>
177 <goals>
178 <goal>plugin-source</goal>
179 </goals>
180 </execution>
181 </executions>
182 </plugin>
183
184 <plugin>
185 <groupId>org.eclipse.tycho</groupId>
186 <artifactId>tycho-surefire-plugin</artifactId>
187 <version>${tycho.version}</version>
188
189 <configuration>
190 <includes>
191 <forkMode>never</forkMode>
192 <include>**/*Test.java</include>
193 <include>**/*Tests.java</include>
194 </includes>
195 </configuration>
196 </plugin>
197
198 <plugin>
199 <groupId>org.eclipse.tycho</groupId>
200 <artifactId>target-platform-configuration</artifactId>
201 <version>${tycho.version}</version>
202
203 <configuration>
204 <includePackedArtifacts>true</includePackedArtifacts>
205 <environments>
206 <environment>
207 <os>win32</os>
208 <ws>win32</ws>
209 <arch>x86_64</arch>
210 </environment>
211 <environment>
212 <os>linux</os>
213 <ws>gtk</ws>
214 <arch>x86_64</arch>
215 </environment>
216 <environment>
217 <os>macosx</os>
218 <ws>cocoa</ws>
219 <arch>x86_64</arch>
220 </environment>
221 </environments>
222 <target>
223 <artifact>
224 <groupId>org.eclipse.app4mc.build</groupId>
225 <artifactId>org.eclipse.app4mc.target</artifactId>
226 <version>${app4mc.version}</version>
Dirk Fauth50304cb2020-02-17 14:12:19 +0100227 </artifact>
228 </target>
Dirk Fauth70c0b862020-02-19 10:47:51 +0100229 <targetDefinitionIncludeSource>honor</targetDefinitionIncludeSource>
Dirk Fauth50304cb2020-02-17 14:12:19 +0100230 </configuration>
231 </plugin>
232
233 <!--
234 <plugin>
235 <groupId>org.eclipse.tycho.extras</groupId>
236 <artifactId>tycho-eclipserun-plugin</artifactId>
237 <version>${tycho-extras-version}</version>
238 <configuration>
239 <repositories>
240 <repository>
241 <id>${platform-version-name}</id>
242 <layout>p2</layout>
243 <url>http://download.eclipse.org/releases/${platform-version-name}</url>
244 </repository>
245 <repository>
246 <id>targetplatform</id>
247 <layout>p2</layout>
248 <url>${targetPlatform.repository.p2}</url>
249 </repository>
250 </repositories>
251 <appArgLine>-consoleLog -application ${targetPlatform.application.name} ${targetPlatform.application.args}</appArgLine>
252 <dependencies>
253 <dependency>
254 <artifactId>${targetPlatform.application.feature}</artifactId>
255 <type>eclipse-feature</type>
256 </dependency>
257 <dependency>
258 <artifactId>org.eclipse.equinox.p2.sdk</artifactId>
259 <type>eclipse-feature</type>
260 </dependency>
261 </dependencies>
262 </configuration>
263 <executions>
264 <execution>
265 <goals>
266 <goal>eclipse-run</goal>
267 </goals>
268 <phase>validate</phase>
269 </execution>
270 </executions>
271 </plugin>
272 -->
273
274 <plugin>
275 <groupId>org.jacoco</groupId>
276 <artifactId>jacoco-maven-plugin</artifactId>
277
278 <configuration>
279 <sessionId>${project.artifactId}</sessionId>
280 </configuration>
281
282 <executions>
283 <execution>
284 <goals>
285 <goal>prepare-agent</goal>
286 </goals>
287 </execution>
288 </executions>
289 </plugin>
290 </plugins>
291 </build>
292
293 <profiles>
294 <profile>
295 <id>sign</id>
296 <build>
297 <plugins>
298 <plugin>
299 <groupId>org.eclipse.tycho.extras</groupId>
300 <artifactId>tycho-pack200a-plugin</artifactId>
301 <version>${tycho-extras-version}</version>
302 <executions>
303 <execution>
304 <id>pack200-normalize</id>
305 <goals>
306 <goal>normalize</goal>
307 </goals>
308 <phase>package</phase>
309 </execution>
310 </executions>
311 </plugin>
312
313 <plugin>
314 <groupId>org.eclipse.cbi.maven.plugins</groupId>
315 <artifactId>eclipse-jarsigner-plugin</artifactId>
316 <version>1.1.3</version>
317 <executions>
318 <execution>
319 <id>sign</id>
320 <phase>package</phase>
321 <goals>
322 <goal>sign</goal>
323 </goals>
324 </execution>
325 </executions>
326 </plugin>
327
328 <plugin>
329 <groupId>org.eclipse.tycho.extras</groupId>
330 <artifactId>tycho-pack200b-plugin</artifactId>
331 <version>${tycho-extras-version}</version>
332 <executions>
333 <execution>
334 <id>pack200-pack</id>
335 <goals>
336 <goal>pack</goal>
337 </goals>
338 <phase>package</phase>
339 </execution>
340 </executions>
341 </plugin>
342
343 <!-- Then, alter p2-metadata to make the .pack.gz artifact visible from other modules -->
344 <plugin>
345 <groupId>org.eclipse.tycho</groupId>
346 <artifactId>tycho-p2-plugin</artifactId>
347 <version>${tycho.version}</version>
348 <executions>
349 <execution>
350 <id>p2-metadata</id>
351 <goals>
352 <goal>p2-metadata</goal>
353 </goals>
354 <phase>package</phase>
355 </execution>
356 </executions>
357 <configuration>
358 <defaultP2Metadata>false</defaultP2Metadata>
359 </configuration>
360 </plugin>
361 </plugins>
362 </build>
363 </profile>
364 </profiles>
365 </project>