Split out mdsal-binding-runtime-{api,spi}
[mdsal.git] / binding / mdsal-binding-dom-codec / 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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
11     <modelVersion>4.0.0</modelVersion>
12     <parent>
13         <groupId>org.opendaylight.mdsal</groupId>
14         <artifactId>dom-parent</artifactId>
15         <version>6.0.0-SNAPSHOT</version>
16         <relativePath>../../dom/dom-parent</relativePath>
17     </parent>
18
19     <artifactId>mdsal-binding-dom-codec</artifactId>
20     <packaging>bundle</packaging>
21
22     <properties>
23         <shade.source>net.bytebuddy</shade.source>
24         <shade.target>org.opendaylight.mdsal.binding.dom.codec.jar.bytebuddy</shade.target>
25     </properties>
26
27     <dependencies>
28         <dependency>
29             <!-- We are going to shade this -->
30             <groupId>net.bytebuddy</groupId>
31             <artifactId>byte-buddy</artifactId>
32             <version>1.10.7</version>
33         </dependency>
34         <dependency>
35             <groupId>org.opendaylight.yangtools</groupId>
36             <artifactId>yang-data-impl</artifactId>
37         </dependency>
38         <dependency>
39             <groupId>org.opendaylight.mdsal</groupId>
40             <artifactId>mdsal-binding-generator-api</artifactId>
41         </dependency>
42         <dependency>
43             <groupId>org.opendaylight.mdsal</groupId>
44             <artifactId>mdsal-binding-generator-util</artifactId>
45         </dependency>
46         <dependency>
47             <groupId>org.opendaylight.mdsal</groupId>
48             <artifactId>mdsal-binding-dom-codec-spi</artifactId>
49         </dependency>
50
51         <dependency>
52             <groupId>org.opendaylight.yangtools</groupId>
53             <artifactId>mockito-configuration</artifactId>
54         </dependency>
55         <dependency>
56             <groupId>org.opendaylight.mdsal</groupId>
57             <artifactId>mdsal-binding-test-model</artifactId>
58         </dependency>
59         <dependency>
60             <groupId>org.opendaylight.mdsal</groupId>
61             <artifactId>mdsal-binding-generator-impl</artifactId>
62             <scope>test</scope>
63         </dependency>
64         <dependency>
65             <groupId>org.opendaylight.mdsal</groupId>
66             <artifactId>mdsal-binding-runtime-spi</artifactId>
67             <scope>test</scope>
68         </dependency>
69     </dependencies>
70
71     <build>
72         <plugins>
73             <plugin>
74                 <groupId>org.apache.felix</groupId>
75                 <artifactId>maven-bundle-plugin</artifactId>
76                 <extensions>true</extensions>
77                 <configuration>
78                     <instructions>
79                         <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
80                         <Export-Package>
81                             org.opendaylight.mdsal.binding.dom.codec.*,
82                             ;-split-package:=error
83                         </Export-Package>
84                         <Private-Package>
85                             org.opendaylight.mdsal.binding.dom.codec.loader,
86                         </Private-Package>
87                         <Import-Package>
88                             !net.bytebuddy.*,
89                             *
90                         </Import-Package>
91                     </instructions>
92                 </configuration>
93             </plugin>
94
95             <!-- Shade Byte-Buddy -->
96             <plugin>
97                 <groupId>org.apache.maven.plugins</groupId>
98                 <artifactId>maven-shade-plugin</artifactId>
99                 <executions>
100                     <execution>
101                         <phase>package</phase>
102                         <goals>
103                             <goal>shade</goal>
104                         </goals>
105                         <configuration>
106                             <shadedArtifactAttached>false</shadedArtifactAttached>
107                             <createDependencyReducedPom>true</createDependencyReducedPom>
108                             <createSourcesJar>true</createSourcesJar>
109                             <shadeSourcesContent>true</shadeSourcesContent>
110                             <minimizeJar>true</minimizeJar>
111                             <relocations>
112                                 <relocation>
113                                     <pattern>${shade.source}</pattern>
114                                     <shadedPattern>${shade.target}</shadedPattern>
115                                 </relocation>
116                             </relocations>
117                             <artifactSet>
118                                 <includes>
119                                     <include>net.bytebuddy:byte-buddy</include>
120                                 </includes>
121                             </artifactSet>
122                             <filters>
123                                 <filter>
124                                     <artifact>net.bytebuddy:byte-buddy</artifact>
125                                     <excludes>
126                                         <exclude>META-INF/**</exclude>
127                                     </excludes>
128                                 </filter>
129                             </filters>
130                         </configuration>
131                     </execution>
132                 </executions>
133             </plugin>
134         </plugins>
135     </build>
136 </project>