Add EPL license declaration
[bgpcep.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set smarttab sw=4 tabstop=4: -->
3 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5         <modelVersion>4.0.0</modelVersion>
6
7         <groupId>org.opendaylight.bgpcep</groupId>
8         <artifactId>protocol-parent</artifactId>
9         <name>OpenDaylight protocols</name>
10         <description>OpenDaylight BGP+PCEP protocol parent</description>
11         <version>0.3.0-SNAPSHOT</version>
12         <packaging>pom</packaging>
13         <url>index.html</url>
14
15         <licenses>
16                 <license>
17                         <name>The Eclipse Public License v1.0</name>
18                         <url>http://www.eclipse.org/legal/epl-v10.html</url>
19                         <distribution>repo</distribution>
20                 </license>
21         </licenses>
22
23         <properties>
24                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
25                 <commonscodec.version>1.7</commonscodec.version>
26                 <dependency.version>2.8</dependency.version>
27                 <guava.version>14.0.1</guava.version>
28                 <java.version.source>1.7</java.version.source>
29                 <java.version.target>1.7</java.version.target>
30                 <junit.version>4.10</junit.version>
31                 <logback.version>1.0.7</logback.version>
32                 <maven.bundle.version>2.4.0</maven.bundle.version>
33                 <maven.compiler.version>3.1</maven.compiler.version>
34                 <maven.jar.version>2.4</maven.jar.version>
35                 <maven.shade.version>2.1</maven.shade.version>
36                 <mockito.version>1.9.5</mockito.version>
37                 <netty.version>4.0.10.Final</netty.version>
38                 <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
39                 <slf4j.version>1.7.2</slf4j.version>
40                 <surefire.version>2.15</surefire.version>
41                 <osgi.version>5.0.0</osgi.version>
42
43                 <yangtools.version>0.5.9-SNAPSHOT</yangtools.version>
44         <controller.config.version>0.2.3-SNAPSHOT</controller.config.version>
45                 <yang.binding.version>0.6.0-SNAPSHOT</yang.binding.version>
46                 <ietf.types.version>2010.09.24.1</ietf.types.version>
47         </properties>
48         <prerequisites>
49                 <maven>3.0.4</maven>
50         </prerequisites>
51
52         <modules>
53                 <!-- Common infra -->
54                 <module>concepts</module>
55                 <module>framework</module>
56                 <module>mockito-configuration</module>
57                 <module>util</module>
58
59                 <!-- Subsystems -->
60                 <module>bgp</module>
61                 <module>pcep</module>
62                 <module>programming</module>
63                 <module>rsvp</module>
64                 <module>topology</module>
65
66                 <!-- Integration tests -->
67                 <module>integration-tests</module>
68         </modules>
69
70     <dependencyManagement>
71                 <dependencies>
72                         <!-- This project -->
73             <dependency>
74                 <groupId>${project.groupId}</groupId>
75                 <artifactId>concepts</artifactId>
76                 <version>${project.version}</version>
77             </dependency>
78             <dependency>
79                 <groupId>${project.groupId}</groupId>
80                 <artifactId>framework</artifactId>
81                 <version>${project.version}</version>
82             </dependency>
83             <dependency>
84                 <groupId>${project.groupId}</groupId>
85                 <artifactId>util</artifactId>
86                 <version>${project.version}</version>
87             </dependency>
88
89                         <!-- Testing Dependencies -->
90             <dependency>
91                 <groupId>junit</groupId>
92                 <artifactId>junit</artifactId>
93                 <version>${junit.version}</version>
94                 <scope>test</scope>
95                         </dependency>
96                         <dependency>
97                                 <groupId>org.mockito</groupId>
98                                 <artifactId>mockito-core</artifactId>
99                                 <version>${mockito.version}</version>
100                                 <scope>test</scope>
101                         </dependency>
102                         <dependency>
103                                 <groupId>${project.groupId}</groupId>
104                                 <artifactId>mockito-configuration</artifactId>
105                                 <version>${project.version}</version>
106                                 <scope>test</scope>
107                         </dependency>
108
109                         <!-- Supporting Libraries -->
110             <dependency>
111                 <groupId>org.slf4j</groupId>
112                 <artifactId>slf4j-api</artifactId>
113                 <version>${slf4j.version}</version>
114             </dependency>
115             <dependency>
116                 <groupId>com.google.guava</groupId>
117                 <artifactId>guava</artifactId>
118                 <version>${guava.version}</version>
119             </dependency>
120                         <dependency>
121                                 <groupId>com.google.code.findbugs</groupId>
122                                 <artifactId>jsr305</artifactId>
123                                 <version>2.0.1</version>
124                         </dependency>
125
126                         <!-- Netty -->
127                         <dependency>
128                                 <groupId>io.netty</groupId>
129                                 <artifactId>netty-buffer</artifactId>
130                                 <version>${netty.version}</version>
131                         </dependency>
132                         <dependency>
133                                 <groupId>io.netty</groupId>
134                                 <artifactId>netty-codec</artifactId>
135                                 <version>${netty.version}</version>
136                         </dependency>
137                         <dependency>
138                                 <groupId>io.netty</groupId>
139                                 <artifactId>netty-common</artifactId>
140                                 <version>${netty.version}</version>
141                         </dependency>
142                         <dependency>
143                                 <groupId>io.netty</groupId>
144                                 <artifactId>netty-transport</artifactId>
145                                 <version>${netty.version}</version>
146                         </dependency>
147
148                         <!-- YANG tools -->
149                         <dependency>
150                                 <groupId>org.opendaylight.yangtools</groupId>
151                                 <artifactId>yang-binding</artifactId>
152                                 <version>${yang.binding.version}</version>
153                         </dependency>
154                         <dependency>
155                                 <groupId>org.opendaylight.yangtools</groupId>
156                                 <artifactId>yang-common</artifactId>
157                                 <version>${yangtools.version}</version>
158                         </dependency>
159
160                         <!-- Controller infrastructure -->
161                         <dependency>
162                                 <groupId>org.opendaylight.controller</groupId>
163                                 <artifactId>config-api</artifactId>
164                                 <version>${controller.config.version}</version>
165                         </dependency>
166
167                         <!-- OSGi -->
168                         <dependency>
169                                 <groupId>org.osgi</groupId>
170                                 <artifactId>org.osgi.core</artifactId>
171                                 <version>${osgi.version}</version>
172                                 <scope>provided</scope>
173                         </dependency>
174         </dependencies>
175     </dependencyManagement>
176
177         <dependencies>
178                 <dependency>
179                         <groupId>ch.qos.logback</groupId>
180                         <artifactId>logback-classic</artifactId>
181                         <version>${logback.version}</version>
182                         <scope>test</scope>
183                 </dependency>
184         </dependencies>
185         
186         <reporting>
187                 <plugins>
188                         <plugin>
189                                 <groupId>org.apache.maven.plugins</groupId>
190                                 <artifactId>maven-javadoc-plugin</artifactId>
191                                 <version>2.9.1</version>
192                         </plugin>
193                 </plugins>
194         </reporting>
195
196         <distributionManagement>
197                 <!-- OpenDayLight Released artifact -->
198                 <repository>
199                         <id>opendaylight-release</id>
200                         <url>${nexusproxy}/repositories/opendaylight.release/</url>
201                 </repository>
202                 <!-- OpenDayLight Snapshot artifact -->
203                 <snapshotRepository>
204                         <id>opendaylight-snapshot</id>
205                         <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
206                 </snapshotRepository>
207                 <site>
208                         <id>${project.artifactId}-site</id>
209                         <url>./</url>
210                 </site>
211         </distributionManagement>
212
213         <build>
214                 <plugins>
215                         <plugin>
216                                 <groupId>org.apache.maven.plugins</groupId>
217                                 <artifactId>maven-compiler-plugin</artifactId>
218                                 <version>${maven.compiler.version}</version>
219                                 <configuration>
220                                         <source>${java.version.source}</source>
221                                         <target>${java.version.target}</target>
222                                         <testSource>${java.version.source}</testSource>
223                                         <testTarget>${java.version.target}</testTarget>
224                                 </configuration>
225                         </plugin>
226                         <plugin>
227                                 <groupId>org.apache.maven.plugins</groupId>
228                                 <artifactId>maven-surefire-plugin</artifactId>
229                                 <version>${surefire.version}</version>
230                                 <configuration>
231                                         <redirectTestOutputToFile>true</redirectTestOutputToFile>
232                                         <!--parallel>classes</parallel>
233                                         <forkCount>1C</forkCount>
234                                         <reuseForks>false</reuseForks>
235                                         <perCoreThreadCount>true</perCoreThreadCount-->
236                                         <threadCount>1</threadCount>
237                                 </configuration>
238                         </plugin>
239
240                         <plugin>
241                                 <groupId>org.apache.maven.plugins</groupId>
242                                 <artifactId>maven-dependency-plugin</artifactId>
243                                 <version>${dependency.version}</version>
244                                 <configuration>
245                                         <failOnWarning>true</failOnWarning>
246                                         <ignoreNonCompile>true</ignoreNonCompile>
247                                 </configuration>
248                         </plugin>
249             <plugin>
250                 <!-- Let eclipse know about the generated sources -->
251                 <groupId>org.codehaus.mojo</groupId>
252                 <artifactId>build-helper-maven-plugin</artifactId>
253                                 <version>1.8</version>
254                 <executions>
255                     <execution>
256                         <phase>generate-sources</phase>
257                         <goals>
258                             <goal>add-source</goal>
259                         </goals>
260                         <configuration>
261                             <sources>
262                                 <source>target/generated-sources/sal</source>
263                                 <source>target/generated-sources/config</source>
264                             </sources>
265                         </configuration>
266                     </execution>
267                 </executions>
268             </plugin>
269                 </plugins>
270                 <pluginManagement>
271                         <plugins>
272                                 <!--This plugin's configuration is used to store Eclipse m2e settings
273                                         only. It has no influence on the Maven build itself. -->
274                                 <plugin>
275                                         <groupId>org.eclipse.m2e</groupId>
276                                         <artifactId>lifecycle-mapping</artifactId>
277                                         <version>1.0.0</version>
278                                         <configuration>
279                                                 <lifecycleMappingMetadata>
280                                                         <pluginExecutions>
281                                                                 <pluginExecution>
282                                                                         <pluginExecutionFilter>
283                                                                                 <groupId>pl.project13.maven</groupId>
284                                                                                 <artifactId>git-commit-id-plugin</artifactId>
285                                                                                 <versionRange>[2.1.4,)</versionRange>
286                                                                                 <goals>
287                                                                                         <goal>revision</goal>
288                                                                                 </goals>
289                                                                         </pluginExecutionFilter>
290                                                                         <action>
291                                                                                 <ignore></ignore>
292                                                                         </action>
293                                                                 </pluginExecution>
294                                 <pluginExecution>
295                                     <pluginExecutionFilter>
296                                         <groupId>org.opendaylight.yangtools</groupId>
297                                         <artifactId>yang-maven-plugin</artifactId>
298                                         <versionRange>[0.5,)</versionRange>
299                                         <goals>
300                                             <goal>generate-sources</goal>
301                                         </goals>
302                                     </pluginExecutionFilter>
303                                     <action>
304                                         <ignore></ignore>
305                                     </action>
306                                 </pluginExecution>
307                                                         </pluginExecutions>
308                                                 </lifecycleMappingMetadata>
309                                         </configuration>
310                                 </plugin>
311
312                                 <!-- Our YANG->DTO generation plugin -->
313                                 <plugin>
314                                         <groupId>org.opendaylight.yangtools</groupId>
315                                         <artifactId>yang-maven-plugin</artifactId>
316                                         <version>${yangtools.version}</version>
317                                         <executions>
318                                                 <execution>
319                                                         <goals>
320                                                                 <goal>generate-sources</goal>
321                                                         </goals>
322                                                         <configuration>
323                                                                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
324                                                                 <codeGenerators>
325                                                                         <generator>
326                                                                                 <codeGeneratorClass>
327                                                                                         org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
328                                                                                 </codeGeneratorClass>
329                                                                                 <outputBaseDir>
330                                                                                         target/generated-sources/sal
331                                                                                 </outputBaseDir>
332                                                                         </generator>
333                                                                         <generator>
334                                                                                 <codeGeneratorClass>org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl</codeGeneratorClass>
335                                                                                 <outputBaseDir>target/generated-sources/site</outputBaseDir>
336                                                                         </generator>
337                                                                 </codeGenerators>
338                                                                 <inspectDependencies>true</inspectDependencies>
339                                                         </configuration>
340                                                 </execution>
341                                         </executions>
342                                         <dependencies>
343                                                 <dependency>
344                                                         <groupId>org.opendaylight.yangtools</groupId>
345                                                         <artifactId>maven-sal-api-gen-plugin</artifactId>
346                                                         <version>${yang.binding.version}</version>
347                                                         <type>jar</type>
348                                                 </dependency>
349                                         </dependencies>
350                                 </plugin>
351
352                         </plugins>
353                 </pluginManagement>
354         </build>
355
356         <repositories>
357                 <repository>
358                         <id>opendaylight-release</id>
359                         <name>opendaylight-release</name>
360                         <url>${nexusproxy}/repositories/opendaylight.release/</url>
361                 </repository>
362                 <repository>
363                         <id>opendaylight-snapshot</id>
364                         <name>opendaylight-snapshot</name>
365                         <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
366                 </repository>
367         </repositories>
368
369         <pluginRepositories>
370                 <pluginRepository>
371                         <id>opendaylight-release</id>
372                         <name>opendaylight-release</name>
373                         <url>${nexusproxy}/repositories/opendaylight.release/</url>
374                 </pluginRepository>
375                 <pluginRepository>
376                         <id>opendaylight-snapshot</id>
377                         <name>opendaylight-snapshot</name>
378                         <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
379                 </pluginRepository>
380         </pluginRepositories>
381 </project>