maven-plugins/native/xdocs/properties.xml
brett 1fedf1acfc MPNATIVE-7
Submitted By: Joachim Bader
Add support for native dependencies and Add support for optional include path (includepath/sysincludepath)


git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@116138 13f79535-47bb-0310-9956-ffa450edef68
2004-10-15 10:10:17 +00:00

200 lines
5.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven Native Plugin Properties</title>
<author email="apache@kav.dk">Kasper Nielsen</author>
<author email="info@joachim-bader.de">Joachim Bader</author>
</properties>
<body>
<section name="Native Plugin Properties">
<table>
<tr>
<th>Property</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.jni.dest</td>
<td>Yes</td>
<td>
<p>Default value is
<code>${maven.build.dir}/jni</code>.</p>
</td>
</tr>
<tr>
<td>maven.native.src</td>
<td>Yes</td>
<td>
<p>Directory for native source files.
Default value is <code>src/unix</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.src.includes</td>
<td>Yes</td>
<td>
Specifies a list of patterns to include into the native compile process.
Default value is <code>**/*.h **/*.c **/*.cpp</code>.
</td>
</tr>
<tr>
<td>maven.native.src.excludes</td>
<td>Yes</td>
<td>
Specifies a list of patterns to exclude from the native compile process.
Default value is empty.
</td>
</tr>
<tr>
<td>maven.native.link</td>
<td>Yes</td>
<td>
<p>Sets the output file type. Supported values "executable",
"shared", and "static".
Default value is <code>shared</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.compiler.name</td>
<td>Yes</td>
<td>
<p>Sets compiler type.
Default value is <code>gcc</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.linker.name</td>
<td>Yes</td>
<td>
<p>Sets linker type.
Default value is <code>${maven.native.compiler.name}</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.debug</td>
<td>Yes</td>
<td>
<p>If set true, all targets will be built for debugging.
Default value is <code>true</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.include.os</td>
<td>Yes</td>
<td>
<p>JDK directory for plattform depended include files.
Default value is <code>linux</code>.
</p>
</td>
</tr>
<tr>
<td>maven.native.compiler.target</td>
<td>Yes</td>
<td>
Optional compiler target. Used for cross compile.
<code>arm-linux</code> means that <code>arm-linux-gcc</code> is
used.
</td>
</tr>
<tr>
<td>maven.native.linker.target</td>
<td>Yes</td>
<td>
Optional linker target. Used for cross compile.
Default value <code>${maven.native.compiler.target}</code>
</td>
</tr>
<tr>
<td>maven.native.compiler.arg.start|mid|end</td>
<td>Yes</td>
<td>
Space delimted list of optional compiler arguments.
<code>start|mid|end</code> spcifies the position in the compiler
argument list.
</td>
</tr>
<tr>
<td>maven.native.linke.arg.start|mid|end</td>
<td>Yes</td>
<td>
Space delimted list of optional linke arguments.
<code>start|mid|end</code> spcifies the position in the linker
argument list.
</td>
</tr>
<tr>
<td>maven.native.compile.includepath</td>
<td>Yes</td>
<td>
Space delimted list of optional include pathes.
</td>
</tr>
<tr>
<td>maven.native.compile.sysincludepath</td>
<td>Yes</td>
<td>
Space delimted list of optional system include pathes.
</td>
</tr>
</table>
</section>
<section name="Dependencies on native libraries">
<p>
Dependencies on native libraries can be handled by the maven
dependency mechanism.
The property <code>native.syslib</code> is optional. If set the
<code>syslibset</code> tag is used insted of the normal
<code>libset</code> tag.
Only <code>so</code>s are supported a the moment.
</p>
<source><![CDATA[
<dependency>
<groupId>group</groupId>
<artifactId>libmyDependendLib</artifactId
<version>1.0</version>
<type>so</type>
<properties>
<native.syslib>true</native.syslib>
</properties>
</dependency>
]]></source>
</section>
</body>
</document>