spack/var/spack/repos/builtin/packages/fio/package.py
Massimiliano Culpo 245c1bb208 libaio: fixed a condition that checks whether we are running on OS X (#12976)
* libaio: fixed a condition that checks whether we are running on OS X

* libaio: simplified package by adding an explicit conflict for darwin

* libaio: added information to the docstring

* fio: added version 3.16, added conflict when using libaio, docstring

* lvm2: conflict due to libaio dep, improved docstring, simpler install

* mariadb: conflict due to libaio dep, improved docstring, version 10.4.7

* mariadb: the dependency on libaio is now conditional, removed conflict

* mariadb: fixed a typo in previous commit

Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>

* libaio: turned into a MakefilePackage
2019-10-01 15:35:50 -05:00

48 lines
1.6 KiB
Python

# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class Fio(AutotoolsPackage):
"""Flexible I/O Tester.
Fio spawns a number of threads or processes doing a particular type of I/O
action as specified by the user. fio takes a number of global parameters,
each inherited by the thread unless otherwise parameters given to them
overriding that setting is given.
"""
homepage = "https://github.com/axboe/fio"
url = "https://github.com/axboe/fio/archive/fio-2.19.tar.gz"
version('3.16', sha256='c7731a9e831581bab7104da9ea60c9f44e594438dbe95dff26726ca0285e7b93')
version('2.19', '67125b60210a4daa689a4626fc66c612')
variant('gui', default=False, description='Enable building of gtk gfio')
variant('doc', default=False, description='Generate documentation')
variant('libaio', default=False, description='Enable libaio engine')
depends_on('gtkplus@2.18:', when='+gui')
depends_on('cairo', when='+gui')
depends_on('libaio', when='+libaio')
depends_on('py-sphinx', type='build', when='+doc')
conflicts('+libaio', when='platform=darwin',
msg='libaio does not support Darwin')
def configure_args(self):
config_args = []
if '+gui' in self.spec:
config_args.append('--enable-gfio')
return config_args
@run_after('build')
def build_docs(self):
if '+doc' in self.spec:
make('-C', 'doc', 'html')
make('-C', 'doc', 'man')