blob: b0837d89c3ca44f564348623aada729e76d6ce27 [file] [log] [blame]
Carsten Ziegeler46892482007-12-28 15:44:49 +00001<!--
2 Licensed to the Apache Software Foundation (ASF) under one
3 or more contributor license agreements. See the NOTICE file
4 distributed with this work for additional information
5 regarding copyright ownership. The ASF licenses this file
6 to you under the Apache License, Version 2.0 (the
7 "License"); you may not use this file except in compliance
8 with the License. You may obtain a copy of the License at
9
10 http://www.apache.org/licenses/LICENSE-2.0
11
12 Unless required by applicable law or agreed to in writing,
13 software distributed under the License is distributed on an
14 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 KIND, either express or implied. See the License for the
16 specific language governing permissions and limitations
17 under the License.
18-->
Carsten Ziegelerbdf1a002007-12-28 15:31:02 +000019<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/maven-v4_0_0.xsd">
Felix Meschberger53064c42011-02-04 23:09:15 +000020 <modelVersion>4.0.0</modelVersion>
Michael E. Rodriguez406386d2007-03-20 02:56:45 +000021
Felix Meschberger53064c42011-02-04 23:09:15 +000022 <parent>
23 <groupId>org.apache</groupId>
24 <artifactId>apache</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +000025 <version>17</version>
Carsten Ziegeler55e5b842011-05-06 06:25:05 +000026 <relativePath />
Felix Meschberger53064c42011-02-04 23:09:15 +000027 </parent>
Michael E. Rodriguez406386d2007-03-20 02:56:45 +000028
Felix Meschberger53064c42011-02-04 23:09:15 +000029 <groupId>org.apache.felix</groupId>
30 <artifactId>felix-parent</artifactId>
31 <packaging>pom</packaging>
32 <name>Apache Felix</name>
Carsten Ziegelerab7fa702015-06-19 06:41:30 +000033 <version>4-SNAPSHOT</version>
Felix Meschberger53064c42011-02-04 23:09:15 +000034 <url>http://felix.apache.org/</url>
35 <inceptionYear>2006</inceptionYear>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +000036 <description>Apache Felix is a community effort to implement the OSGi Framework and Service platform and other interesting OSGi-related technologies.</description>
37
38 <prerequisites>
39 <maven>3.0.5</maven>
40 </prerequisites>
Marcel Offermans0ed87292006-08-17 19:10:30 +000041
Stuart McCulloch9cb1a962011-07-01 16:45:37 +000042 <properties>
43 <sourceReleaseAssemblyDescriptor>source-release-zip-tar</sourceReleaseAssemblyDescriptor>
Felix Meschberger11ad3122012-04-25 16:22:57 +000044
45 <!-- Default Java VM and API compatibility -->
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +000046 <felix.java.version>5</felix.java.version>
Felix Meschberger11ad3122012-04-25 16:22:57 +000047 <felix.java.signature.groupId>org.codehaus.mojo.signature</felix.java.signature.groupId>
Felix Meschberger6a31d8c2013-07-01 07:39:30 +000048
49 <!-- Default settings for the site plugins -->
50 <site.javadoc.exclude>*.impl:*.internal:</site.javadoc.exclude>
Stuart McCulloch9cb1a962011-07-01 16:45:37 +000051 </properties>
52
Felix Meschberger53064c42011-02-04 23:09:15 +000053 <issueManagement>
54 <system>Jira</system>
55 <url>http://issues.apache.org/jira/browse/FELIX</url>
56 </issueManagement>
Marcel Offermans0ed87292006-08-17 19:10:30 +000057
Felix Meschberger53064c42011-02-04 23:09:15 +000058 <mailingLists>
59 <mailingList>
60 <name>Felix Dev</name>
61 <subscribe>dev-subscribe@felix.apache.org</subscribe>
62 <unsubscribe>dev-unsubscribe@felix.apache.org</unsubscribe>
63 <post>-</post>
64 <archive>http://www.mail-archive.com/dev%40felix.apache.org/</archive>
65 </mailingList>
66 <mailingList>
67 <name>Felix Commits</name>
68 <subscribe>commits-subscribe@felix.apache.org</subscribe>
69 <unsubscribe>commits-unsubscribe@felix.apache.org</unsubscribe>
70 <post>-</post>
71 <archive>http://www.mail-archive.com/commits%40felix.apache.org/</archive>
72 </mailingList>
73 </mailingLists>
Marcel Offermans0ed87292006-08-17 19:10:30 +000074
Felix Meschberger53064c42011-02-04 23:09:15 +000075 <scm>
Carsten Ziegelerab7fa702015-06-19 06:41:30 +000076 <connection>scm:svn:http://svn.apache.org/repos/asf/felix/trunk/pom</connection>
77 <developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/pom</developerConnection>
78 <url>http://svn.apache.org/viewvc/felix/trunk/pom/?root=Apache-SVN</url>
Felix Meschberger53064c42011-02-04 23:09:15 +000079 </scm>
Karl Paulsd69e8af2006-08-12 09:51:20 +000080
Felix Meschberger53064c42011-02-04 23:09:15 +000081 <distributionManagement>
82 <site>
83 <id>felix website</id>
84 <url>file:///${user.dir}/target/site-deployed/</url>
85 </site>
86 </distributionManagement>
87
88 <pluginRepositories>
89 <pluginRepository>
90 <id>apache.snapshots</id>
91 <name>snapshot plugins</name>
92 <url>http://repository.apache.org/snapshots</url>
93 <releases>
94 <enabled>false</enabled>
95 </releases>
96 <snapshots>
97 <enabled>true</enabled>
98 </snapshots>
99 </pluginRepository>
100 </pluginRepositories>
101
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000102 <dependencyManagement>
103 <dependencies>
104 <dependency>
105 <groupId>junit</groupId>
106 <artifactId>junit</artifactId>
107 <version>4.11</version>
108 </dependency>
109 <dependency>
110 <groupId>org.easymock</groupId>
111 <artifactId>easymock</artifactId>
112 <version>2.5.2</version>
113 </dependency>
114 <dependency>
115 <groupId>org.mockito</groupId>
116 <artifactId>mockito-all</artifactId>
117 <version>1.10.19</version>
118 </dependency>
119 </dependencies>
120 </dependencyManagement>
121
Felix Meschberger53064c42011-02-04 23:09:15 +0000122 <!-- definitions for testing -->
123 <dependencies>
124 <dependency>
125 <groupId>junit</groupId>
126 <artifactId>junit</artifactId>
Felix Meschberger53064c42011-02-04 23:09:15 +0000127 <scope>test</scope>
128 </dependency>
129 <dependency>
130 <groupId>org.easymock</groupId>
131 <artifactId>easymock</artifactId>
Felix Meschberger53064c42011-02-04 23:09:15 +0000132 <scope>test</scope>
133 </dependency>
134 <dependency>
135 <groupId>org.mockito</groupId>
136 <artifactId>mockito-all</artifactId>
Felix Meschberger53064c42011-02-04 23:09:15 +0000137 <scope>test</scope>
138 </dependency>
139 </dependencies>
140 <build>
141 <pluginManagement>
142 <plugins>
143 <plugin>
144 <groupId>org.apache.maven.plugins</groupId>
145 <artifactId>maven-project-info-reports-plugin</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000146 <version>2.8</version>
Felix Meschberger53064c42011-02-04 23:09:15 +0000147 </plugin>
148 <plugin>
Felix Meschberger5e38f742011-05-05 08:41:17 +0000149 <groupId>org.apache.maven.plugins</groupId>
150 <artifactId>maven-jxr-plugin</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000151 <version>2.5</version>
Felix Meschberger5e38f742011-05-05 08:41:17 +0000152 </plugin>
153 <plugin>
Felix Meschberger53064c42011-02-04 23:09:15 +0000154 <groupId>org.codehaus.mojo</groupId>
155 <artifactId>ianal-maven-plugin</artifactId>
156 <version>1.0-alpha-1</version>
157 </plugin>
158 <plugin>
159 <groupId>org.apache.rat</groupId>
160 <artifactId>apache-rat-plugin</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000161 <version>0.10</version>
Felix Meschberger53064c42011-02-04 23:09:15 +0000162 </plugin>
Felix Meschberger6a31d8c2013-07-01 07:39:30 +0000163 <plugin>
164 <groupId>org.apache.maven.plugins</groupId>
165 <artifactId>maven-javadoc-plugin</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000166 <version>2.10.2</version>
Felix Meschberger6a31d8c2013-07-01 07:39:30 +0000167 </plugin>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000168 <plugin>
169 <groupId>org.codehaus.mojo</groupId>
170 <artifactId>animal-sniffer-maven-plugin</artifactId>
171 <version>1.14</version>
172 <configuration>
173 <signature>
174 <groupId>${felix.java.signature.groupId}</groupId>
175 <artifactId>${felix.java.signature.artifactId}</artifactId>
176 <version>${felix.java.signature.version}</version>
177 </signature>
178 </configuration>
179 </plugin>
180 <plugin>
181 <groupId>org.apache.maven.plugins</groupId>
182 <artifactId>maven-antrun-plugin</artifactId>
183 <version>1.8</version>
184 <dependencies>
185 <!-- declare dependencies here rather than where needed to
186 circumvent http://jira.codehaus.org/browse/MANTRUN-51
187 -->
188 <dependency>
189 <groupId>org.apache.ant</groupId>
190 <artifactId>ant-apache-regexp</artifactId>
191 <version>1.7.1</version>
192 <scope>runtime</scope>
193 </dependency>
194 <dependency>
195 <groupId>jakarta-regexp</groupId>
196 <artifactId>jakarta-regexp</artifactId>
197 <version>1.4</version>
198 </dependency>
199 </dependencies>
200 </plugin>
201 <plugin>
202 <groupId>org.apache.maven.plugins</groupId>
203 <artifactId>maven-site-plugin</artifactId>
204 <version>3.3</version>
205 </plugin>
206 <plugin>
207 <groupId>org.apache.maven.plugins</groupId>
208 <artifactId>maven-surefire-report-plugin</artifactId>
209 <version>2.18.1</version>
210 </plugin>
Felix Meschberger53064c42011-02-04 23:09:15 +0000211 </plugins>
212 </pluginManagement>
Carsten Ziegeler00eaded2007-12-14 17:22:20 +0000213 <plugins>
Felix Meschberger53064c42011-02-04 23:09:15 +0000214 <plugin>
215 <groupId>org.apache.maven.plugins</groupId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000216 <artifactId>maven-antrun-plugin</artifactId>
217 <executions>
218 <execution>
219 <id>set-bundle-required-execution-environment</id>
220 <goals>
221 <goal>run</goal>
222 </goals>
223 <phase>initialize</phase>
224 <configuration>
225 <exportAntProperties>true</exportAntProperties>
226 <target>
227 <script language="javascript"> <![CDATA[
228 var System = java.lang.System;
229 var skipAnimalSniffer = false;
230 var animalSnifferSignaturesVersion = "1.0";
231 var animalSnifferSignaturesArtifactId = "java13-sun";
232
233 var felixJavaVersion = System.getProperty("felix.java.version");
234 if (!felixJavaVersion) {
235 felixJavaVersion = project.getProperty("felix.java.version");
236 }
237
238 if (felixJavaVersion == "4") {
239 animalSnifferSignaturesArtifactId = "java14-sun";
240 } else if (felixJavaVersion == "5") {
241 animalSnifferSignaturesArtifactId = "java15";
242 } else if (felixJavaVersion == "6") {
243 animalSnifferSignaturesArtifactId = "java16";
244 animalSnifferSignaturesVersion = "1.1";
245 } else if (felixJavaVersion == "7") {
246 animalSnifferSignaturesArtifactId = "java17";
247 } else if ( felixJavaVersion == "8") {
248 // there are no published signatures for Java 1.8, so skip execution. However, we also need a valid
249 // artifact in the signature, so fallback to the 1.7 signatures and skip checking entirely
250 // see also https://github.com/mojohaus/animal-sniffer/issues/1
251 animalSnifferSignaturesArtifactId = "java17";
252 skipAnimalSniffer = true;
253 } else if ( felixJavaVersion != "3") {
254 System.out.println("Unsupported felix.java.version=" + felixJavaVersion + "; must be 3, 4, 5, 6, 7 or 8.");
255 throw "felix.java.version must be 3, 4, 5, 6, 7 or 8";
256 }
257 System.out.println("Using felix.java.version=" + felixJavaVersion);
258 project.setProperty("felix.bree", "JavaSE-1." + felixJavaVersion);
259 project.setProperty("felix.animal.sniffer.skip", skipAnimalSniffer);
260 project.setProperty("felix.java.signature.version", animalSnifferSignaturesVersion);
261 project.setProperty("felix.java.signature.artifactId", animalSnifferSignaturesArtifactId);
262 ]]></script>
263 </target>
264 </configuration>
265 </execution>
266 </executions>
267 </plugin>
268 <plugin>
269 <groupId>org.apache.maven.plugins</groupId>
Felix Meschberger6a31d8c2013-07-01 07:39:30 +0000270 <artifactId>maven-javadoc-plugin</artifactId>
271 <configuration>
272 <excludePackageNames>${site.javadoc.exclude}</excludePackageNames>
273 </configuration>
274 </plugin>
275 <plugin>
276 <groupId>org.apache.maven.plugins</groupId>
Felix Meschberger53064c42011-02-04 23:09:15 +0000277 <artifactId>maven-compiler-plugin</artifactId>
Stuart McCulloch0242e462009-04-20 19:08:02 +0000278 <configuration>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000279 <source>1.${felix.java.version}</source>
280 <target>1.${felix.java.version}</target>
Stuart McCulloch0242e462009-04-20 19:08:02 +0000281 </configuration>
Felix Meschberger53064c42011-02-04 23:09:15 +0000282 </plugin>
283 <plugin>
284 <groupId>org.apache.rat</groupId>
285 <artifactId>apache-rat-plugin</artifactId>
286 <executions>
287 <execution>
288 <phase>verify</phase>
289 <goals>
290 <goal>check</goal>
291 </goals>
292 </execution>
293 </executions>
Stuart McCullochfdb035e2009-04-21 06:51:00 +0000294 <configuration>
Felix Meschberger53064c42011-02-04 23:09:15 +0000295 <!-- check src only (except remote resources additions) -->
296 <includes>
297 <include>src/**</include>
298 </includes>
299 <excludes>
300 <exclude>src/main/appended-resources/**</exclude>
301 </excludes>
Stuart McCullochfdb035e2009-04-21 06:51:00 +0000302 </configuration>
Felix Meschberger53064c42011-02-04 23:09:15 +0000303 </plugin>
304 <plugin>
Felix Meschberger11ad3122012-04-25 16:22:57 +0000305 <groupId>org.codehaus.mojo</groupId>
306 <artifactId>animal-sniffer-maven-plugin</artifactId>
Felix Meschberger11ad3122012-04-25 16:22:57 +0000307 <executions>
308 <execution>
309 <phase>test</phase>
310 <goals>
311 <goal>check</goal>
312 </goals>
313 </execution>
314 </executions>
315 </plugin>
316 <plugin>
Carsten Ziegelerdc8cbe72011-05-06 06:09:55 +0000317 <groupId>org.apache.maven.plugins</groupId>
318 <artifactId>maven-release-plugin</artifactId>
319 <configuration>
320 <tagBase>https://svn.apache.org/repos/asf/felix/releases</tagBase>
321 </configuration>
322 </plugin>
323 <plugin>
Felix Meschberger53064c42011-02-04 23:09:15 +0000324 <groupId>org.codehaus.mojo</groupId>
325 <artifactId>ianal-maven-plugin</artifactId>
326 <executions>
327 <execution>
328 <goals>
329 <goal>verify-legal-files</goal>
330 </goals>
331 <configuration>
332 <strict>true</strict>
333 </configuration>
334 </execution>
335 </executions>
336 </plugin>
Carsten Ziegeler00eaded2007-12-14 17:22:20 +0000337 </plugins>
Felix Meschberger53064c42011-02-04 23:09:15 +0000338 <resources>
339 <resource>
340 <directory>src/main/resources</directory>
341 </resource>
342 <resource>
343 <directory>.</directory>
344 <targetPath>META-INF</targetPath>
345 <includes>
346 <include>changelog.txt</include>
347 </includes>
348 </resource>
349 </resources>
Clement Escoffier25abed52011-02-05 14:27:25 +0000350 <extensions>
351 <extension>
352 <groupId>org.apache.maven.wagon</groupId>
353 <artifactId>wagon-ssh</artifactId>
Carsten Ziegeler4fa2faa2015-06-16 09:21:57 +0000354 <version>2.9</version>
Clement Escoffier25abed52011-02-05 14:27:25 +0000355 </extension>
356 </extensions>
Felix Meschberger53064c42011-02-04 23:09:15 +0000357 </build>
358 <reporting>
359 <plugins>
360 <plugin>
361 <groupId>org.apache.maven.plugins</groupId>
362 <artifactId>maven-site-plugin</artifactId>
363 <configuration>
364 <templateDirectory>${user.dir}/src/site/</templateDirectory>
365 <template>maven-site.vm</template>
366 </configuration>
367 </plugin>
368 <plugin>
369 <groupId>org.apache.maven.plugins</groupId>
370 <artifactId>maven-surefire-report-plugin</artifactId>
371 </plugin>
372 <plugin>
373 <groupId>org.apache.maven.plugins</groupId>
374 <artifactId>maven-jxr-plugin</artifactId>
375 </plugin>
376 <plugin>
377 <groupId>org.apache.maven.plugins</groupId>
378 <artifactId>maven-project-info-reports-plugin</artifactId>
379 <reportSets>
380 <reportSet>
381 <reports>
382 <report>index</report>
383 <report>dependencies</report>
384 <report>project-team</report>
385 <report>mailing-list</report>
386 <report>issue-tracking</report>
387 <report>license</report>
388 <report>scm</report>
389 </reports>
390 </reportSet>
391 </reportSets>
392 </plugin>
393 </plugins>
394 </reporting>
Stuart McCulloch756832e2008-02-10 17:37:50 +0000395</project>