Move unified documentation generator
[mdsal.git] / binding / binding-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright (c) 2014 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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
11
12     <parent>
13         <groupId>org.opendaylight.mdsal</groupId>
14         <artifactId>dom-parent</artifactId>
15         <version>8.0.0-SNAPSHOT</version>
16         <relativePath>../../dom/dom-parent</relativePath>
17     </parent>
18
19     <modelVersion>4.0.0</modelVersion>
20     <artifactId>binding-parent</artifactId>
21     <packaging>pom</packaging>
22
23     <properties>
24         <salGeneratorPath>${project.build.directory}/generated-sources/mdsal-binding</salGeneratorPath>
25     </properties>
26
27     <build>
28         <!-- https://bugs.opendaylight.org/show_bug.cgi?id=6252 -->
29         <resources>
30             <resource>
31                 <directory>src/main/resources</directory>
32             </resource>
33             <resource>
34                 <directory>${project.build.directory}/generated-sources/spi</directory>
35             </resource>
36             <resource>
37                 <directory>${project.build.directory}/generated-sources/yang</directory>
38             </resource>
39         </resources>
40     </build>
41
42     <profiles>
43         <profile>
44             <activation>
45                 <file>
46                     <exists>src/main/yang</exists>
47                 </file>
48             </activation>
49             <dependencies>
50                 <dependency>
51                     <groupId>org.opendaylight.mdsal</groupId>
52                     <artifactId>yang-binding</artifactId>
53                 </dependency>
54             </dependencies>
55             <build>
56                 <pluginManagement>
57                     <plugins>
58                         <plugin>
59                             <groupId>org.opendaylight.yangtools</groupId>
60                             <artifactId>yang-maven-plugin</artifactId>
61                             <version>7.0.3</version>
62                             <dependencies>
63                                 <dependency>
64                                     <groupId>org.opendaylight.mdsal</groupId>
65                                     <artifactId>mdsal-binding-generator-impl</artifactId>
66                                     <version>8.0.0-SNAPSHOT</version>
67                                 </dependency>
68                                 <dependency>
69                                     <groupId>org.opendaylight.mdsal</groupId>
70                                     <artifactId>mdsal-binding-java-api-generator</artifactId>
71                                     <version>8.0.0-SNAPSHOT</version>
72                                 </dependency>
73                             </dependencies>
74                             <executions>
75                                 <execution>
76                                     <id>binding</id>
77                                     <goals>
78                                         <goal>generate-sources</goal>
79                                     </goals>
80                                     <configuration>
81                                         <inspectDependencies>true</inspectDependencies>
82                                     </configuration>
83                                 </execution>
84                             </executions>
85                         </plugin>
86                         <plugin>
87                             <artifactId>maven-clean-plugin</artifactId>
88                             <configuration>
89                                 <filesets>
90                                     <fileset>
91                                         <directory>${salGeneratorPath}</directory>
92                                         <includes>
93                                             <include>**</include>
94                                         </includes>
95                                     </fileset>
96                                 </filesets>
97                             </configuration>
98                         </plugin>
99                         <plugin>
100                             <groupId>org.codehaus.mojo</groupId>
101                             <artifactId>build-helper-maven-plugin</artifactId>
102                             <executions>
103                                 <execution>
104                                     <id>add-yang-sources</id>
105                                     <phase>generate-sources</phase>
106                                     <goals>
107                                         <goal>add-source</goal>
108                                     </goals>
109                                     <configuration>
110                                         <sources>
111                                             <source>${salGeneratorPath}</source>
112                                         </sources>
113                                     </configuration>
114                                 </execution>
115                             </executions>
116                         </plugin>
117
118                         <!-- This has to match the definition in odlparent and exists only
119                              because for some reason PMD does not understand wildcards. -->
120                         <plugin>
121                             <groupId>org.apache.maven.plugins</groupId>
122                             <artifactId>maven-pmd-plugin</artifactId>
123                             <executions>
124                                 <execution>
125                                     <id>cpd</id>
126                                     <phase>process-sources</phase>
127                                     <goals>
128                                         <goal>cpd-check</goal>
129                                     </goals>
130                                     <configuration>
131                                         <excludeRoots>
132                                             <excludeRoot>${salGeneratorPath}</excludeRoot>
133                                         </excludeRoots>
134                                     </configuration>
135                                 </execution>
136                             </executions>
137                         </plugin>
138                     </plugins>
139                 </pluginManagement>
140                 <plugins>
141                     <plugin>
142                         <groupId>org.opendaylight.yangtools</groupId>
143                         <artifactId>yang-maven-plugin</artifactId>
144                     </plugin>
145                     <plugin>
146                         <groupId>org.codehaus.mojo</groupId>
147                         <artifactId>build-helper-maven-plugin</artifactId>
148                     </plugin>
149                 </plugins>
150             </build>
151         </profile>
152     </profiles>
153 </project>