Fork me on GitHub

nar:nar-gnu-configure

Full name:

com.github.maven-nar:nar-maven-plugin:3.4.1-SNAPSHOT:nar-gnu-configure

Description:

Copies the GNU style source files to a target area, autogens and configures them.

Attributes:

  • Requires a Maven project to be executed.
  • Binds by default to the lifecycle phase: process-sources.

Required Parameters

Name Type Since Description
gnuUseOnWindows boolean - Use GNU goals on Windows
Default value is: nar.gnu.useonwindows.
layout String - Layout to be used for building and unpacking artifacts
Default value is: com.github.maven_nar.NarLayout21.
User property is: nar.layout.
resourceBinDir String - Binary directory
Default value is: bin.
resourceIncludeDir String - Include directory
Default value is: include.
resourceLibDir String - Library directory
Default value is: lib.

Optional Parameters

Name Type Since Description
aol String - Architecture-OS-Linker name. Defaults to: arch-os-linker.
architecture String - The Architecture for the nar, Some choices are: "x86", "i386", "amd64", "ppc", "sparc", ... Defaults to a derived value from ${os.arch}
User property is: nar.arch.
classifiers List - List of classifiers which you want download/unpack/assemble Example ppc-MacOSX-g++, x86-Windows-msvc, i386-Linux-g++. Not setting means all.
gnuAutogenSkip boolean - Skip running of autogen.sh (aka buildconf).
User property is: nar.gnu.autogen.skip.
gnuBuildconfArgs String - Arguments to pass to GNU buildconf.
User property is: nar.gnu.buildconf.args.
gnuConfigureArgs String - Arguments to pass to GNU configure.
User property is: nar.gnu.configure.args.
gnuConfigureInPlace boolean - If true, we run ./configure in the source directory instead of copying the source code to the target/ directory first (this saves disk space but violates Maven's paradigm of keeping generated files inside the target/ directory structure.
User property is: nar.gnu.configure.in-place.
gnuConfigureSkip boolean - Skip running of configure and therefore also autogen.sh
User property is: nar.gnu.configure.skip.
gnuSourceDirectory File - Source directory for GNU style project
Default value is: ${basedir}/src/gnu.
gnuTargetDirectory File - Directory in which gnu sources are copied and "configured"
Default value is: ${project.build.directory}/nar/gnu.
ignore boolean - Ignore errors and failures.
Default value is: false.
User property is: nar.ignore.
javah Javah - Javah info
libraries List - List of libraries to create
libsName String - Name of the libraries included
linker Linker - Linker
msvc Msvc - (no description)
os String - The Operating System for the nar. Some choices are: "Windows", "Linux", "MacOSX", "SunOS", ... Defaults to a derived value from ${os.name} FIXME table missing
User property is: nar.os.
output String - Name of the output - for jni default-value="${project.artifactId}-${project.version}" - for libs default-value="${project.artifactId}-${project.version}" - for exe default-value="${project.artifactId}" -- for tests default-value="${test.name}"
skip boolean - Skip running of NAR plugins (any) altogether.
Default value is: false.
User property is: nar.skip.
skipTests boolean - Skip the tests. Listens to Maven's general 'maven.skip.test'.
User property is: maven.test.skip.
targetDirectory File - Target directory for Nar file construction. Defaults to "${project.build.directory}/nar" for "nar-compile" goal
testTargetDirectory File - Target directory for Nar test construction. Defaults to "${project.build.directory}/test-nar" for "nar-testCompile" goal
testUnpackDirectory File - Target directory for Nar test unpacking. Defaults to "${testTargetDirectory}"
unpackDirectory File - Target directory for Nar file unpacking. Defaults to "${targetDirectory}"

Parameter Details

aol:

Architecture-OS-Linker name. Defaults to: arch-os-linker.
  • Type: java.lang.String
  • Required: No

architecture:

The Architecture for the nar, Some choices are: "x86", "i386", "amd64", "ppc", "sparc", ... Defaults to a derived value from ${os.arch}
  • Type: java.lang.String
  • Required: No
  • User Property: nar.arch

classifiers:

List of classifiers which you want download/unpack/assemble Example ppc-MacOSX-g++, x86-Windows-msvc, i386-Linux-g++. Not setting means all.
  • Type: java.util.List
  • Required: No

gnuAutogenSkip:

Skip running of autogen.sh (aka buildconf).
  • Type: boolean
  • Required: No
  • User Property: nar.gnu.autogen.skip

gnuBuildconfArgs:

Arguments to pass to GNU buildconf.
  • Type: java.lang.String
  • Required: No
  • User Property: nar.gnu.buildconf.args

gnuConfigureArgs:

Arguments to pass to GNU configure.
  • Type: java.lang.String
  • Required: No
  • User Property: nar.gnu.configure.args

gnuConfigureInPlace:

If true, we run ./configure in the source directory instead of copying the source code to the target/ directory first (this saves disk space but violates Maven's paradigm of keeping generated files inside the target/ directory structure.
  • Type: boolean
  • Required: No
  • User Property: nar.gnu.configure.in-place

gnuConfigureSkip:

Skip running of configure and therefore also autogen.sh
  • Type: boolean
  • Required: No
  • User Property: nar.gnu.configure.skip

gnuSourceDirectory:

Source directory for GNU style project
  • Type: java.io.File
  • Required: No
  • Default: ${basedir}/src/gnu

gnuTargetDirectory:

Directory in which gnu sources are copied and "configured"
  • Type: java.io.File
  • Required: No
  • Default: ${project.build.directory}/nar/gnu

gnuUseOnWindows:

Use GNU goals on Windows
  • Type: boolean
  • Required: Yes
  • Default: nar.gnu.useonwindows

ignore:

Ignore errors and failures.
  • Type: boolean
  • Required: No
  • User Property: nar.ignore
  • Default: false

javah:

Javah info
  • Type: com.github.maven_nar.Javah
  • Required: No

layout:

Layout to be used for building and unpacking artifacts
  • Type: java.lang.String
  • Required: Yes
  • User Property: nar.layout
  • Default: com.github.maven_nar.NarLayout21

libraries:

List of libraries to create
  • Type: java.util.List
  • Required: No

libsName:

Name of the libraries included
  • Type: java.lang.String
  • Required: No

linker:

Linker
  • Type: com.github.maven_nar.Linker
  • Required: No

msvc:

(no description)
  • Type: com.github.maven_nar.Msvc
  • Required: No

os:

The Operating System for the nar. Some choices are: "Windows", "Linux", "MacOSX", "SunOS", ... Defaults to a derived value from ${os.name} FIXME table missing
  • Type: java.lang.String
  • Required: No
  • User Property: nar.os

output:

Name of the output - for jni default-value="${project.artifactId}-${project.version}" - for libs default-value="${project.artifactId}-${project.version}" - for exe default-value="${project.artifactId}" -- for tests default-value="${test.name}"
  • Type: java.lang.String
  • Required: No

resourceBinDir:

Binary directory
  • Type: java.lang.String
  • Required: Yes
  • Default: bin

resourceIncludeDir:

Include directory
  • Type: java.lang.String
  • Required: Yes
  • Default: include

resourceLibDir:

Library directory
  • Type: java.lang.String
  • Required: Yes
  • Default: lib

skip:

Skip running of NAR plugins (any) altogether.
  • Type: boolean
  • Required: No
  • User Property: nar.skip
  • Default: false

skipTests:

Skip the tests. Listens to Maven's general 'maven.skip.test'.
  • Type: boolean
  • Required: No
  • User Property: maven.test.skip

targetDirectory:

Target directory for Nar file construction. Defaults to "${project.build.directory}/nar" for "nar-compile" goal
  • Type: java.io.File
  • Required: No

testTargetDirectory:

Target directory for Nar test construction. Defaults to "${project.build.directory}/test-nar" for "nar-testCompile" goal
  • Type: java.io.File
  • Required: No

testUnpackDirectory:

Target directory for Nar test unpacking. Defaults to "${testTargetDirectory}"
  • Type: java.io.File
  • Required: No

unpackDirectory:

Target directory for Nar file unpacking. Defaults to "${targetDirectory}"
  • Type: java.io.File
  • Required: No