Use dylib on osx
[yaz4j-moved-to-github.git] / pom.xml
1 <project>
2   <modelVersion>4.0.0</modelVersion>
3   <groupId>org.yaz4j</groupId>
4   <artifactId>yaz4j</artifactId>
5   <version>1.2-SNAPSHOT</version>
6   <packaging>pom</packaging>
7
8   <!-- Project Information -->
9   <name>yaz4j</name>
10   <url>http://www.indexdata.com/yaz4j/</url>
11   <inceptionYear>2008</inceptionYear>
12   <licenses>
13     <license>
14       <name>BSD</name>
15       <url>http://www.opensource.org/licenses/bsd-license.php</url>
16     </license>
17   </licenses>
18   <description>Java wrapper for the ZOOM API of YAZ</description>
19
20   <developers>
21     <developer>
22       <name>Rob Styles</name>
23       <id>rob</id>
24       <email>Rob.Styles@talis.com</email>
25       <organization>Talis</organization>
26       <organizationUrl>http://www.talis.com/</organizationUrl>
27       <roles />
28       <timezone />
29     </developer>
30     <developer>
31       <name>Adam Dickmeiss</name>
32       <id>adam</id>
33       <email>adam@indexdata.dk</email>
34       <organization>Index Data</organization>
35       <organizationUrl>http://www.indexdata.com/</organizationUrl>
36       <roles />
37       <timezone />
38     </developer>
39     <developer>
40       <name>Jakub Skoczen</name>
41       <id>jakub</id>
42       <email>jakub@indexdata.dk</email>
43       <organization>Index Data</organization>
44       <organizationUrl>http://www.indexdata.com/</organizationUrl>
45       <roles />
46       <timezone />
47     </developer>
48     <developer>
49       <name>Juan Cayetano</name>
50       <id>cayetano</id>
51       <email>juancayetano.delgado@gmail.com</email>
52       <organization />
53       <organizationUrl />
54       <roles />
55       <timezone />
56     </developer>
57   </developers>
58
59   <modules>
60     <module>any</module>
61   </modules>
62
63   <dependencies>
64     <dependency>
65       <groupId>junit</groupId>
66       <artifactId>junit</artifactId>
67       <version>4.3.1</version>
68       <scope>test</scope>
69     </dependency>
70   </dependencies>
71
72   <build>
73     <plugins>
74       <plugin>
75         <artifactId>maven-antrun-plugin</artifactId>
76         <executions>
77           <execution>
78             <id>generate-sources</id>
79             <phase>generate-sources</phase>
80             <inherited>false</inherited>
81             <configuration>
82               <tasks>
83                 <echo message="Using include: ${yaz.include}"/>
84                 <mkdir dir="target/generated-sources/java/org/yaz4j/jni"/>
85                 <mkdir dir="target/generated-sources/native" />
86                 <exec executable="swig">
87                   <arg value="-Isrc/main/native" />
88                   <arg value="${yaz.include}"/>
89                   <arg value="-outdir"/>
90                   <arg value="${basedir}/target/generated-sources/java/org/yaz4j/jni"/>
91                   <arg value="-package"/>
92                   <arg value="org.yaz4j.jni"/>
93                   <arg value="-o"/>
94                   <arg value="${basedir}/target/generated-sources/native/libyaz4j.cpp"/>
95                   <arg value="-c++"/>
96                   <arg value="-java"/>
97                   <arg value="src/main/swig/libyaz4j.i"/>
98                 </exec>
99               </tasks>
100             </configuration>
101             <goals>
102               <goal>run</goal>
103             </goals>
104           </execution>
105         </executions>
106       </plugin>
107     </plugins>
108   </build>
109
110   <!-- Reporting -->
111   <reporting>
112     <plugins>
113       <plugin>
114         <groupId>org.apache.maven.plugins</groupId>
115         <artifactId>maven-checkstyle-plugin</artifactId>
116         <configuration>
117           <enableRSS>false</enableRSS>
118           <include>**/*.java</include>
119           <sourceDirectory>src/main/java</sourceDirectory>
120         </configuration>
121       </plugin>
122
123       <plugin>
124         <groupId>org.apache.maven.plugins</groupId>
125         <artifactId>
126           maven-project-info-reports-plugin
127         </artifactId>
128         <reportSets>
129           <reportSet>
130             <reports>
131               <report>dependencies</report>
132               <report>project-team</report>
133               <report>mailing-list</report>
134               <report>issue-tracking</report>
135               <report>summary</report>
136               <report>scm</report>
137               <report>index</report>
138             </reports>
139           </reportSet>
140         </reportSets>
141       </plugin>
142       <plugin>
143         <groupId>org.apache.maven.plugins</groupId>
144         <artifactId>maven-javadoc-plugin</artifactId>
145         <configuration>
146           <chartset>UTF-8</chartset>
147           <excludePackageNames>org.yaz4j.jni</excludePackageNames>
148         </configuration>
149       </plugin>
150     </plugins>
151   </reporting>
152   <!-- ////////////// -->
153
154   <!-- Environment Information -->
155   <mailingLists>
156     <mailingList>
157       <name>Yazlist</name>
158       <subscribe />
159       <unsubscribe />
160       <post>yazlist@lists.indexdata.dk</post>
161       <archive>http://lists.indexdata.dk/pipermail/yazlist/</archive>
162     </mailingList>
163   </mailingLists>
164
165   <scm>
166     <connection>scm:git:git://git.indexdata.com/yaz4j</connection>
167     <url>http://git.indexdata.com/?p=yaz4j.git</url>
168   </scm>
169
170   <issueManagement>
171     <system>Bugzilla</system>
172     <url>http://bugzilla.indexdata.dk</url>
173   </issueManagement>
174
175   <profiles>
176     <profile>
177       <id>win32</id>
178       <activation>
179         <os>
180           <family>windows</family>
181         </os>
182       </activation>
183       <properties>
184         <platform>win32</platform>
185         <yaz.path>C:\Program Files\YAZ\</yaz.path>
186         <!-- needed by swig -->
187         <yaz.include>-I${yaz.path}\include</yaz.include>
188       </properties>
189       <modules>
190         <module>win32</module>
191       </modules>
192     </profile>
193
194     <profile>
195       <id>unix</id>
196       <activation>
197         <os>
198           <family>unix</family>
199         </os>
200       </activation>
201       <properties>
202         <platform>linux</platform>
203         <packaging>so</packaging>
204         <!-- yaz-config executable -->
205         <yaz.config>yaz-config</yaz.config>
206         <javahOS>linux</javahOS>
207         <jdkIncludePath>${java.home}/../include</jdkIncludePath>
208       </properties>
209       <modules>
210         <module>unix</module>
211       </modules>
212       <build>
213         <plugins>
214           <plugin>
215             <artifactId>maven-antrun-plugin</artifactId>
216             <executions>
217               <execution>
218                 <id>write-swig-include</id>
219                 <phase>initialize</phase>
220                 <goals>
221                   <goal>run</goal>
222                 </goals>
223                 <configuration>
224                   <tasks>
225                     <exec executable="${yaz.config}" 
226                       outputproperty="yaz.include">
227                       <arg value="--include" />
228                     </exec>
229                     <echo message="YAZ INCLUDE=${yaz.include}"/>
230                     <mkdir dir="${basedir}/target"/>
231                     <echo file="${basedir}/target/swig.properties"
232                       message="yaz.include=${yaz.include}"/>
233                   </tasks>
234                 </configuration>
235               </execution>
236             </executions>
237           </plugin>
238           <plugin> 
239             <groupId>org.codehaus.mojo</groupId> 
240             <artifactId>properties-maven-plugin</artifactId> 
241             <version>1.0-alpha-1</version> 
242             <executions> 
243               <execution> 
244                 <id>read-swig-config</id> 
245                 <phase>initialize</phase> 
246                 <goals> 
247                   <goal>read-project-properties</goal> 
248                 </goals> 
249                 <configuration> 
250                   <files> 
251                     <file>${basedir}/target/swig.properties</file> 
252                   </files> 
253                 </configuration> 
254               </execution> 
255             </executions> 
256           </plugin>
257         </plugins>
258       </build>
259     </profile>
260
261     <profile>
262       <!-- osx is both 'unix' and 'mac' -->
263       <id>osx</id>
264       <activation>
265         <os>
266           <family>mac</family>
267         </os>
268       </activation>
269       <properties>
270         <platform>osx</platform>
271         <packaging>dylib</packaging>
272         <javahOS>mac</javahOS>
273         <jdkIncludePath>${java.home}/../Headers</jdkIncludePath>
274       </properties>
275       <modules>
276         <module>unix</module>
277       </modules>
278     </profile>
279   </profiles>
280 </project>
281