diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/spack/docs/build_systems/mavenpackage.rst | 18 | ||||
-rw-r--r-- | lib/spack/spack/build_systems/maven.py | 8 |
2 files changed, 24 insertions, 2 deletions
diff --git a/lib/spack/docs/build_systems/mavenpackage.rst b/lib/spack/docs/build_systems/mavenpackage.rst index e8a8a1b86c..6f833e8bec 100644 --- a/lib/spack/docs/build_systems/mavenpackage.rst +++ b/lib/spack/docs/build_systems/mavenpackage.rst @@ -76,6 +76,24 @@ should add: depends_on('maven@3.5.4:', type='build') +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Passing arguments to the build phase +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The default build and install phases should be sufficient to install +most packages. However, you may want to pass additional flags to +the build phase. For example: + +.. code-block:: python + + def build_args(self): + return [ + '-Pdist,native', + '-Dtar', + '-Dmaven.javadoc.skip=true' + ] + + ^^^^^^^^^^^^^^^^^^^^^^ External documentation ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/lib/spack/spack/build_systems/maven.py b/lib/spack/spack/build_systems/maven.py index c7faaf2014..e9df34e791 100644 --- a/lib/spack/spack/build_systems/maven.py +++ b/lib/spack/spack/build_systems/maven.py @@ -35,15 +35,19 @@ class MavenPackage(PackageBase): """The directory containing the ``pom.xml`` file.""" return self.stage.source_path + def build_args(self): + """List of args to pass to build phase.""" + return [] + def build(self, spec, prefix): """Compile code and package into a JAR file.""" with working_dir(self.build_directory): mvn = which('mvn') if self.run_tests: - mvn('verify') + mvn('verify', *self.build_args()) else: - mvn('package', '-DskipTests') + mvn('package', '-DskipTests', *self.build_args()) def install(self, spec, prefix): """Copy to installation prefix.""" |