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
This commit is contained in:
parent
76178f31ca
commit
245c1bb208
@ -3,15 +3,20 @@
|
|||||||
#
|
#
|
||||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
from spack import *
|
|
||||||
|
|
||||||
|
|
||||||
class Fio(AutotoolsPackage):
|
class Fio(AutotoolsPackage):
|
||||||
"""Flexible I/O Tester."""
|
"""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"
|
homepage = "https://github.com/axboe/fio"
|
||||||
url = "https://github.com/axboe/fio/archive/fio-2.19.tar.gz"
|
url = "https://github.com/axboe/fio/archive/fio-2.19.tar.gz"
|
||||||
|
|
||||||
|
version('3.16', sha256='c7731a9e831581bab7104da9ea60c9f44e594438dbe95dff26726ca0285e7b93')
|
||||||
version('2.19', '67125b60210a4daa689a4626fc66c612')
|
version('2.19', '67125b60210a4daa689a4626fc66c612')
|
||||||
|
|
||||||
variant('gui', default=False, description='Enable building of gtk gfio')
|
variant('gui', default=False, description='Enable building of gtk gfio')
|
||||||
@ -24,6 +29,9 @@ class Fio(AutotoolsPackage):
|
|||||||
|
|
||||||
depends_on('py-sphinx', type='build', when='+doc')
|
depends_on('py-sphinx', type='build', when='+doc')
|
||||||
|
|
||||||
|
conflicts('+libaio', when='platform=darwin',
|
||||||
|
msg='libaio does not support Darwin')
|
||||||
|
|
||||||
def configure_args(self):
|
def configure_args(self):
|
||||||
config_args = []
|
config_args = []
|
||||||
|
|
||||||
|
@ -3,22 +3,24 @@
|
|||||||
#
|
#
|
||||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
from spack import *
|
|
||||||
|
|
||||||
|
class Libaio(MakefilePackage):
|
||||||
|
"""Linux native Asynchronous I/O interface library.
|
||||||
|
|
||||||
class Libaio(Package):
|
AIO enables even a single application thread to overlap I/O operations
|
||||||
"""This is the linux native Asynchronous I/O interface library."""
|
with other processing, by providing an interface for submitting one or
|
||||||
|
more I/O requests in one system call (io_submit()) without waiting for
|
||||||
|
completion, and a separate interface (io_getevents()) to reap completed
|
||||||
|
I/O operations associated with a given completion group.
|
||||||
|
"""
|
||||||
|
|
||||||
homepage = "http://lse.sourceforge.net/io/aio.html"
|
homepage = "http://lse.sourceforge.net/io/aio.html"
|
||||||
url = "https://debian.inf.tu-dresden.de/debian/pool/main/liba/libaio/libaio_0.3.110.orig.tar.gz"
|
url = "https://debian.inf.tu-dresden.de/debian/pool/main/liba/libaio/libaio_0.3.110.orig.tar.gz"
|
||||||
|
|
||||||
version('0.3.110', '2a35602e43778383e2f4907a4ca39ab8')
|
version('0.3.110', '2a35602e43778383e2f4907a4ca39ab8')
|
||||||
|
|
||||||
def install(self, spec, prefix):
|
conflicts('platform=darwin', msg="libaio is a linux specific library")
|
||||||
# libaio is not supported on OS X
|
|
||||||
if spec.satisfies('arch=darwin-x86_64'):
|
|
||||||
# create a dummy directory
|
|
||||||
mkdir(prefix.lib)
|
|
||||||
return
|
|
||||||
|
|
||||||
make('prefix={0}'.format(prefix), 'install')
|
@property
|
||||||
|
def install_targets(self):
|
||||||
|
return ['prefix={0}'.format(self.spec.prefix), 'install']
|
||||||
|
@ -3,17 +3,19 @@
|
|||||||
#
|
#
|
||||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
from spack import *
|
|
||||||
|
|
||||||
|
|
||||||
class Lvm2(AutotoolsPackage):
|
class Lvm2(AutotoolsPackage):
|
||||||
"""LVM2 is the userspace toolset that provides logical volume
|
"""LVM2 is the userspace toolset that provides logical volume
|
||||||
management facilities on linux. To use it you need 3 things:
|
management facilities on linux.
|
||||||
device-mapper in your kernel, the userspace device-mapper support
|
|
||||||
library (libdevmapper) and the userspace LVM2 tools (dmsetup). These
|
To use it you need 3 things: device-mapper in your kernel, the userspace
|
||||||
userspace components, and associated header files, are provided by this
|
device-mapper support library (libdevmapper) and the userspace LVM2 tools
|
||||||
package. See http://sources.redhat.com/dm/ for additional information
|
(dmsetup). These userspace components, and associated header files, are
|
||||||
about the device-mapper kernel and userspace components."""
|
provided by this package.
|
||||||
|
|
||||||
|
See http://sources.redhat.com/dm/ for additional information
|
||||||
|
about the device-mapper kernel and userspace components.
|
||||||
|
"""
|
||||||
|
|
||||||
homepage = "https://www.sourceware.org/lvm2"
|
homepage = "https://www.sourceware.org/lvm2"
|
||||||
url = "https://sourceware.org/pub/lvm2/releases/LVM2.2.03.05.tgz"
|
url = "https://sourceware.org/pub/lvm2/releases/LVM2.2.03.05.tgz"
|
||||||
@ -35,13 +37,11 @@ def url_for_version(self, version):
|
|||||||
depends_on('libaio')
|
depends_on('libaio')
|
||||||
depends_on('pkgconfig', type='build', when='+pkgconfig')
|
depends_on('pkgconfig', type='build', when='+pkgconfig')
|
||||||
|
|
||||||
|
conflicts('platform=darwin',
|
||||||
|
msg='lvm2 depends on libaio which does not support Darwin')
|
||||||
|
|
||||||
def configure_args(self):
|
def configure_args(self):
|
||||||
args = ['--with-confdir={0}'.
|
return [
|
||||||
format(self.prefix.etc),
|
'--with-confdir={0}'.format(self.prefix.etc),
|
||||||
'--with-default-system-dir={0}'.
|
'--with-default-system-dir={0}'.format(self.prefix.etc.lvm)
|
||||||
format(self.prefix.etc.lvm)]
|
] + self.enable_or_disable('pkgconfig')
|
||||||
if self.spec.satisfies('+pkgconfig'):
|
|
||||||
args.append('--enable-pkgconfig')
|
|
||||||
else:
|
|
||||||
args.append('--disable-pkgconfig')
|
|
||||||
return args
|
|
||||||
|
@ -7,15 +7,20 @@
|
|||||||
|
|
||||||
|
|
||||||
class Mariadb(CMakePackage):
|
class Mariadb(CMakePackage):
|
||||||
"""MariaDB turns data into structured information in a wide array of
|
"""MariaDB Server is one of the most popular database servers
|
||||||
|
in the world.
|
||||||
|
|
||||||
|
MariaDB turns data into structured information in a wide array of
|
||||||
applications, ranging from banking to websites. It is an enhanced, drop-in
|
applications, ranging from banking to websites. It is an enhanced, drop-in
|
||||||
replacement for MySQL. MariaDB is used because it is fast, scalable and
|
replacement for MySQL. MariaDB is used because it is fast, scalable and
|
||||||
robust, with a rich ecosystem of storage engines, plugins and many other
|
robust, with a rich ecosystem of storage engines, plugins and many other
|
||||||
tools make it very versatile for a wide variety of use cases."""
|
tools make it very versatile for a wide variety of use cases.
|
||||||
|
"""
|
||||||
|
|
||||||
homepage = "https://mariadb.org/about/"
|
homepage = "https://mariadb.org/about/"
|
||||||
url = "http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-10.2.8/source/mariadb-10.2.8.tar.gz"
|
url = "http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-10.2.8/source/mariadb-10.2.8.tar.gz"
|
||||||
|
|
||||||
|
version('10.4.7', sha256='c8e6a6d0bb4f22c416ed675d24682a3ecfa383c5283efee70c8edf131374d817')
|
||||||
version('10.2.8', 'f93cbd5bfde3c0d082994764ff7db580')
|
version('10.2.8', 'f93cbd5bfde3c0d082994764ff7db580')
|
||||||
version('10.1.23', '1a7392cc05c7c249acd4495022719ca8')
|
version('10.1.23', '1a7392cc05c7c249acd4495022719ca8')
|
||||||
version('5.5.56', '8bc7772fea3e11b0bc1a09d2278e2e32')
|
version('5.5.56', '8bc7772fea3e11b0bc1a09d2278e2e32')
|
||||||
@ -32,7 +37,7 @@ class Mariadb(CMakePackage):
|
|||||||
depends_on('pkgconfig', type='build')
|
depends_on('pkgconfig', type='build')
|
||||||
depends_on('bison', type='build')
|
depends_on('bison', type='build')
|
||||||
depends_on('jemalloc')
|
depends_on('jemalloc')
|
||||||
depends_on('libaio')
|
depends_on('libaio', when='platform=linux')
|
||||||
depends_on('libedit')
|
depends_on('libedit')
|
||||||
depends_on('libevent', when='+nonblocking')
|
depends_on('libevent', when='+nonblocking')
|
||||||
depends_on('ncurses')
|
depends_on('ncurses')
|
||||||
|
Loading…
Reference in New Issue
Block a user