target-ide/ support by resourceBaseDir using ${project.build.directory}
[mdsal.git] / common / parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
11          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12
13     <parent>
14         <groupId>org.opendaylight.odlparent</groupId>
15         <artifactId>odlparent</artifactId>
16         <version>1.8.0-SNAPSHOT</version>
17         <relativePath></relativePath>
18     </parent>
19
20     <modelVersion>4.0.0</modelVersion>
21     <artifactId>mdsal-parent</artifactId>
22     <groupId>org.opendaylight.mdsal</groupId>
23     <version>2.2.0-SNAPSHOT</version>
24     <packaging>pom</packaging>
25
26     <properties>
27         <yangtools.version>1.1.0-SNAPSHOT</yangtools.version>
28         <salGeneratorPath>${project.build.directory}/generated-sources/sal</salGeneratorPath>
29
30         <!-- FIXME: these will be upstreamed -->
31         <maven.depends.version>1.2</maven.depends.version>
32     </properties>
33
34     <dependencyManagement>
35         <dependencies>
36             <dependency>
37                  <groupId>org.opendaylight.odlparent</groupId>
38                  <artifactId>odlparent-artifacts</artifactId>
39                  <version>1.8.0-SNAPSHOT</version>
40                  <type>pom</type>
41                  <scope>import</scope>
42             </dependency>
43             <dependency>
44                  <groupId>org.opendaylight.mdsal</groupId>
45                  <artifactId>mdsal-artifacts</artifactId>
46                  <version>2.2.0-SNAPSHOT</version>
47                  <type>pom</type>
48                  <scope>import</scope>
49             </dependency>
50             <dependency>
51                  <groupId>org.opendaylight.yangtools</groupId>
52                  <artifactId>yangtools-artifacts</artifactId>
53                  <version>1.1.0-SNAPSHOT</version>
54                  <type>pom</type>
55                  <scope>import</scope>
56             </dependency>
57             <!-- Testing Dependencies -->
58             <dependency>
59                 <groupId>org.apache.maven.shared</groupId>
60                 <artifactId>maven-verifier</artifactId>
61                 <version>1.6</version>
62                 <scope>test</scope>
63             </dependency>
64             <dependency>
65                 <groupId>org.codehaus.groovy</groupId>
66                 <artifactId>groovy</artifactId>
67                 <version>2.4.5</version>
68                 <scope>test</scope>
69             </dependency>
70             <dependency>
71                 <groupId>org.codehaus.groovy</groupId>
72                 <artifactId>groovy-xml</artifactId>
73                 <version>2.4.5</version>
74                 <scope>test</scope>
75             </dependency>
76             <dependency>
77                 <groupId>org.apache.maven</groupId>
78                 <artifactId>maven-plugin-api</artifactId>
79                 <version>3.3.3</version>
80             </dependency>
81             <dependency>
82                 <groupId>org.glassfish.jersey.ext</groupId>
83                 <artifactId>jersey-proxy-client</artifactId>
84                 <version>2.22</version>
85             </dependency>
86             <dependency>
87                 <groupId>org.glassfish.jersey.core</groupId>
88                 <artifactId>jersey-client</artifactId>
89                 <version>2.0</version>
90             </dependency>
91         </dependencies>
92     </dependencyManagement>
93
94     <dependencies>
95         <dependency>
96             <groupId>org.slf4j</groupId>
97             <artifactId>slf4j-simple</artifactId>
98             <scope>test</scope>
99         </dependency>
100     </dependencies>
101
102     <build>
103         <pluginManagement>
104             <plugins>
105                 <plugin>
106                     <groupId>org.eclipse.m2e</groupId>
107                     <artifactId>lifecycle-mapping</artifactId>
108                     <version>1.0.0</version>
109                     <configuration>
110                         <lifecycleMappingMetadata>
111                             <pluginExecutions>
112                                 <pluginExecution>
113                                     <pluginExecutionFilter>
114                                         <groupId>org.apache.maven.plugins</groupId>
115                                         <artifactId>maven-antrun-plugin</artifactId>
116                                         <versionRange>[1.0,)</versionRange>
117                                         <goals>
118                                             <goal>run</goal>
119                                         </goals>
120                                     </pluginExecutionFilter>
121                                     <action>
122                                         <execute/>
123                                     </action>
124                                 </pluginExecution>
125                                 <pluginExecution>
126                                     <pluginExecutionFilter>
127                                         <groupId>org.opendaylight.yangtools</groupId>
128                                         <artifactId>yang-maven-plugin</artifactId>
129                                         <versionRange>[0.5,)</versionRange>
130                                         <goals>
131                                             <goal>generate-sources</goal>
132                                         </goals>
133                                      </pluginExecutionFilter>
134                                      <action>
135                                          <execute/>
136                                      </action>
137                                  </pluginExecution>
138                                  <pluginExecution>
139                                     <pluginExecutionFilter>
140                                         <groupId>org.codehaus.mojo</groupId>
141                                         <artifactId>properties-maven-plugin</artifactId>
142                                         <versionRange>1.0-alpha-2</versionRange>
143                                         <goals>
144                                             <goal>write-project-properties</goal>
145                                         </goals>
146                                      </pluginExecutionFilter>
147                                      <action>
148                                          <ignore />
149                                      </action>
150                                  </pluginExecution>
151                                  <pluginExecution>
152                                     <pluginExecutionFilter>
153                                         <groupId>org.ops4j.pax.exam</groupId>
154                                         <artifactId>maven-paxexam-plugin</artifactId>
155                                         <versionRange>1.2.4</versionRange>
156                                         <goals>
157                                             <goal>generate-depends-file</goal>
158                                         </goals>
159                                      </pluginExecutionFilter>
160                                      <action>
161                                          <ignore />
162                                      </action>
163                                  </pluginExecution>
164                                  <pluginExecution>
165                                     <pluginExecutionFilter>
166                                         <groupId>org.jacoco</groupId>
167                                         <artifactId>jacoco-maven-plugin</artifactId>
168                                         <versionRange>[0.6,)</versionRange>
169                                         <goals>
170                                             <goal>prepare-agent</goal>
171                                         </goals>
172                                      </pluginExecutionFilter>
173                                      <action>
174                                          <ignore/>
175                                      </action>
176                                  </pluginExecution>
177                             </pluginExecutions>
178                         </lifecycleMappingMetadata>
179                     </configuration>
180                 </plugin>
181                 <plugin>
182                     <groupId>org.opendaylight.yangtools</groupId>
183                     <artifactId>yang-maven-plugin</artifactId>
184                     <version>0.10.0-SNAPSHOT</version>
185                     <executions>
186                         <execution>
187                             <goals>
188                                 <goal>generate-sources</goal>
189                             </goals>
190                             <configuration>
191                                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
192                                 <codeGenerators>
193                                     <generator>
194                                         <codeGeneratorClass>
195                                             org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
196                                         </codeGeneratorClass>
197                                         <outputBaseDir>
198                                             ${salGeneratorPath}
199                                         </outputBaseDir>
200                                         <resourceBaseDir>${project.build.directory}/generated-sources/spi</resourceBaseDir>
201                                     </generator>
202                                     <generator>
203                                         <codeGeneratorClass>org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl</codeGeneratorClass>
204                                         <outputBaseDir>${project.build.directory}/site/models</outputBaseDir>
205                                     </generator>
206                                     <generator>
207                                         <codeGeneratorClass>org.opendaylight.yangtools.yang.wadl.generator.maven.WadlGenerator</codeGeneratorClass>
208                                         <outputBaseDir>${project.build.directory}/site/models</outputBaseDir>
209                                     </generator>
210                                 </codeGenerators>
211                                 <inspectDependencies>true</inspectDependencies>
212                             </configuration>
213                         </execution>
214                     </executions>
215                     <dependencies>
216                         <dependency>
217                             <groupId>org.opendaylight.mdsal</groupId>
218                             <artifactId>maven-sal-api-gen-plugin</artifactId>
219                             <version>0.10.0-SNAPSHOT</version>
220                             <type>jar</type>
221                         </dependency>
222                     </dependencies>
223                 </plugin>
224                 <plugin>
225                     <groupId>org.ops4j.pax.exam</groupId>
226                     <artifactId>maven-paxexam-plugin</artifactId>
227                     <version>1.2.4</version>
228                     <executions>
229                         <execution>
230                             <id>generate-config</id>
231                             <goals>
232                                 <goal>generate-depends-file</goal>
233                             </goals>
234                         </execution>
235                     </executions>
236                 </plugin>
237                 <plugin>
238                     <groupId>org.apache.maven.plugins</groupId>
239                     <artifactId>maven-javadoc-plugin</artifactId>
240                     <version>${maven.javadoc.version}</version>
241                     <configuration>
242                         <stylesheetfile>stylesheet.css</stylesheetfile>
243                     </configuration>
244                     <executions>
245                         <execution>
246                             <id>attach-javadocs</id>
247                             <goals>
248                                 <goal>jar</goal>
249                             </goals>
250                         </execution>
251                         <execution>
252                             <goals>
253                                 <goal>aggregate</goal>
254                             </goals>
255                             <phase>site</phase>
256                         </execution>
257                     </executions>
258                 </plugin>
259                 <plugin>
260                     <groupId>org.codehaus.mojo</groupId>
261                     <artifactId>build-helper-maven-plugin</artifactId>
262                     <version>1.9.1</version>
263                     <executions>
264                         <execution>
265                             <phase>generate-sources</phase>
266                             <goals>
267                                 <goal>add-source</goal>
268                             </goals>
269                             <configuration>
270                                 <sources>
271                                     <source>${project.build.directory}/generated-sources/parser</source>
272                                     <source>${salGeneratorPath}</source>
273                                 </sources>
274                             </configuration>
275                         </execution>
276                     </executions>
277                 </plugin>
278                 <plugin>
279                     <groupId>org.apache.servicemix.tooling</groupId>
280                     <artifactId>depends-maven-plugin</artifactId>
281                     <version>${maven.depends.version}</version>
282                     <executions>
283                         <execution>
284                             <id>generate-depends-file</id>
285                             <goals>
286                                 <goal>generate-depends-file</goal>
287                             </goals>
288                         </execution>
289                     </executions>
290                 </plugin>
291             </plugins>
292         </pluginManagement>
293
294         <plugins>
295             <plugin>
296                 <groupId>org.apache.maven.plugins</groupId>
297                 <artifactId>maven-enforcer-plugin</artifactId>
298                 <!--
299                 <executions>
300                     <execution>
301                         <id>enforce-dependencies</id>
302                         <configuration>
303                             <rules>
304                                 <DependencyConvergence />
305                             </rules>
306                         </configuration>
307                         <goals>
308                             <goal>enforce</goal>
309                         </goals>
310                     </execution>
311                 </executions>
312                 -->
313             </plugin>
314             <plugin>
315                 <groupId>org.apache.maven.plugins</groupId>
316                 <artifactId>maven-jar-plugin</artifactId>
317             </plugin>
318             <plugin>
319                 <groupId>org.apache.felix</groupId>
320                 <artifactId>maven-bundle-plugin</artifactId>
321             </plugin>
322             <plugin>
323                 <groupId>org.apache.maven.plugins</groupId>
324                 <artifactId>maven-javadoc-plugin</artifactId>
325             </plugin>
326             <plugin>
327               <groupId>org.codehaus.mojo</groupId>
328               <artifactId>build-helper-maven-plugin</artifactId>
329             </plugin>
330         </plugins>
331     </build>
332
333   <!--
334       Maven Site Configuration
335
336       The following configuration is necessary for maven-site-plugin to
337       correctly identify the correct deployment path for OpenDaylight Maven
338       sites.
339   -->
340   <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
341
342   <distributionManagement>
343     <site>
344       <id>opendaylight-site</id>
345       <url>${nexus.site.url}/${project.artifactId}/</url>
346     </site>
347   </distributionManagement>
348
349 </project>