Add correct license to atomix-storage artifact
[controller.git] / third-party / atomix / storage / pom.xml
1 <!--
2   ~ Copyright 2017-2021 Open Networking Foundation
3   ~ Copyright 2023 PANTHEON.tech, s.r.o.
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at
8   ~
9   ~     http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   -->
17 <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">
18   <modelVersion>4.0.0</modelVersion>
19
20   <parent>
21     <groupId>org.opendaylight.controller</groupId>
22     <artifactId>bundle-parent</artifactId>
23     <version>7.0.5-SNAPSHOT</version>
24     <relativePath>../../../bundle-parent</relativePath>
25   </parent>
26
27   <artifactId>atomix-storage</artifactId>
28   <name>Atomix Storage</name>
29   <packaging>bundle</packaging>
30
31   <properties>
32     <odlparent.checkstyle.skip>true</odlparent.checkstyle.skip>
33     <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
34   </properties>
35
36   <dependencies>
37     <dependency>
38       <groupId>com.google.guava</groupId>
39       <artifactId>guava</artifactId>
40     </dependency>
41     <dependency>
42       <groupId>org.apache.commons</groupId>
43       <artifactId>commons-lang3</artifactId>
44     </dependency>
45     <dependency>
46       <groupId>com.esotericsoftware</groupId>
47       <artifactId>kryo</artifactId>
48       <version>4.0.2</version>
49       <scope>provided</scope>
50     </dependency>
51     <dependency>
52       <groupId>com.esotericsoftware</groupId>
53       <artifactId>minlog</artifactId>
54       <version>1.3.1</version>
55       <scope>provided</scope>
56     </dependency>
57     <dependency>
58       <groupId>com.esotericsoftware</groupId>
59       <artifactId>reflectasm</artifactId>
60       <version>1.11.8</version>
61       <scope>provided</scope>
62     </dependency>
63     <dependency>
64       <groupId>org.ow2.asm</groupId>
65       <artifactId>asm</artifactId>
66       <version>5.2</version>
67       <scope>provided</scope>
68     </dependency>
69     <dependency>
70       <groupId>org.objenesis</groupId>
71       <artifactId>objenesis</artifactId>
72       <version>2.6</version>
73       <scope>provided</scope>
74     </dependency>
75
76     <dependency>
77       <groupId>com.google.guava</groupId>
78       <artifactId>guava-testlib</artifactId>
79     </dependency>
80   </dependencies>
81
82   <build>
83     <plugins>
84       <!-- This project has a different license -->
85       <plugin>
86         <artifactId>maven-dependency-plugin</artifactId>
87         <executions>
88           <execution>
89             <id>unpack-license</id>
90             <configuration>
91               <skip>true</skip>
92             </configuration>
93           </execution>
94         </executions>
95       </plugin>
96       <plugin>
97         <artifactId>maven-antrun-plugin</artifactId>
98         <executions>
99           <execution>
100             <id>copy-license</id>
101             <phase>prepare-package</phase>
102             <goals>
103               <goal>run</goal>
104             </goals>
105             <configuration>
106               <target>
107                 <copy file="LICENSE" tofile="${project.build.directory}/classes/LICENSE"/>
108               </target>
109             </configuration>
110           </execution>
111         </executions>
112       </plugin>
113       <plugin>
114         <artifactId>maven-checkstyle-plugin</artifactId>
115         <executions>
116           <execution>
117             <id>check-license</id>
118             <goals>
119               <goal>check</goal>
120             </goals>
121             <configuration>
122               <skip>true</skip>
123             </configuration>
124           </execution>
125         </executions>
126       </plugin>
127
128       <plugin>
129         <groupId>org.apache.felix</groupId>
130         <artifactId>maven-bundle-plugin</artifactId>
131         <extensions>true</extensions>
132         <configuration>
133           <instructions>
134             <Export-Package>
135               io.atomix.storage.journal.*,
136               io.atomix.utils.serializer.*,
137               com.esotericsoftware.kryo.*;version=4.0.2
138             </Export-Package>
139             <Import-Package>
140               sun.nio.ch;resolution:=optional,
141               sun.misc;resolution:=optional,
142               !COM.newmonics.*,
143               !android.os,
144               *
145             </Import-Package>
146
147             <!-- Kryo is using ancient objenesis, so let's embed it to prevent duplicates -->
148             <Embed-Dependency>
149                 *;inline=true;groupId=com.esotericsoftware,
150                 *;inline=true;groupId=org.objenesis,
151                 *;inline=true;groupId=org.ow2.asm,
152             </Embed-Dependency>
153           </instructions>
154         </configuration>
155       </plugin>
156     </plugins>
157   </build>
158 </project>