Merge branch 'it4i-barbora'

This commit is contained in:
Lukáš Krupčík 2020-07-30 13:45:59 +02:00
commit 2b39373d1e
4 changed files with 148 additions and 0 deletions

View File

@ -0,0 +1,74 @@
# Automatically converted from Mesa-17.2.4-intel-2017b.eb
# Original message:
# the purpose of the easyconfig is to build a Mesa for software rendering,
# not hardware rendering. This means you want at least SSE4.2. We build:
# - llvmpipe: the high-performance Gallium LLVM driver
# - swr: Intel's OpenSWR
# it will try to use the llvmpipe by default. It you want swr, do:
# GALLIUM_DRIVER=swr
easyblock = 'MesonNinja'
name = 'Mesa'
version = '19.0.1'
homepage = 'http://www.mesa3d.org/'
description = """Mesa is an open-source implementation of the OpenGL specification -
a system for rendering interactive 3D graphics."""
toolchain = {'name': 'GCCcore', 'version': '9.3.0'}
# swr detects and builds parts specific for AVX and AVX2. If we use
# -xHost, this always gets overwritten and will fail.
toolchainopts = {'optarch': False}
source_urls = [
'https://www.mesa3d.org/archive/',
'https://mesa.freedesktop.org/archive/',
'https://mesa.freedesktop.org/archive/%(version)s',
'ftp://ftp.freedesktop.org/pub/mesa/%(version)s',
'ftp://ftp.freedesktop.org/pub/mesa/older-versions/%(version_major)s.x/%(version)s',
]
sources = [SOURCELOWER_TAR_XZ]
checksums = [
'6884163c0ea9e4c98378ab8fecd72fe7b5f437713a14471beda378df247999d4', # mesa-19.0.1.tar.xz
]
builddependencies = [
('binutils', '2.34'),
('Meson', '0.53.2', '-Python-3.8.2'),
('Ninja', '1.10.0'),
('flex', '2.6.4'),
('Bison', '3.5.3'),
('pkg-config', '0.29.2'),
('Mako', '1.1.2'),
('libxml2', '2.9.10'),
('expat', '2.2.9'),
('gettext', '0.20.1'),
]
dependencies = [
('zlib', '1.2.11'),
('nettle', '3.5.1'),
('libdrm', '2.4.100'),
('LLVM', '9.0.1'),
('X11', '20200222'),
('libunwind', '1.3.1'),
]
configopts = " -Dplatforms=x11 -Dosmesa=gallium -Ddri3=false -Ddri-drivers='' -Dvulkan-drivers=''"
configopts += " -Dgbm=false -Dglx-direct=false -Dgallium-drivers='swrast,swr' -Degl=false"
configopts += " -Dllvm=true -Dshared-llvm=true"
configopts += " -Dlibunwind=true -Dglx=xlib"
sanity_check_paths = {
'files': ['lib/libGL.%s' % SHLIB_EXT, 'lib/libOSMesa.%s' % SHLIB_EXT,
'lib/libGLESv1_CM.%s' % SHLIB_EXT, 'lib/libGLESv2.%s' % SHLIB_EXT,
'include/GL/glext.h', 'include/GL/gl_mangle.h',
'include/GL/glx.h', 'include/GL/osmesa.h',
'include/GL/gl.h', 'include/GL/glxext.h',
'include/GL/glx_mangle.h', 'include/GLES/gl.h',
'include/GLES2/gl2.h', 'include/GLES3/gl3.h'],
'dirs': []
}
moduleclass = 'vis'

View File

@ -0,0 +1,38 @@
# JH 2020
easyblock = 'ConfigureMake'
name = 'nettle'
version = '3.5.1'
homepage = 'http://www.lysator.liu.se/~nisse/nettle/'
description = """Nettle is a cryptographic library that is designed to fit easily
in more or less any context: In crypto toolkits for object-oriented
languages (C++, Python, Pike, ...), in applications like LSH or GNUPG,
or even in kernel space."""
toolchain = {'name': 'GCCcore', 'version': '9.3.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['75cca1998761b02e16f2db56da52992aef622bf55a3b45ec538bc2eedadc9419']
builddependencies = [
('binutils', '2.34'),
('M4', '1.4.18'),
]
dependencies = [
('GMP', '6.2.0'),
]
sanity_check_paths = {
'files': ['bin/%s' % x for x in ['nettle-hash', 'nettle-lfib-stream', 'pkcs1-conv', 'sexp-conv']] +
[('lib/libhogweed.a', 'lib64/libhogweed.a'),
('lib/libhogweed.%s' % SHLIB_EXT, 'lib64/libhogweed.%s' % SHLIB_EXT),
('lib/libnettle.a', 'lib64/libnettle.a'),
('lib/libnettle.%s' % SHLIB_EXT, 'lib64/libnettle.%s' % SHLIB_EXT)],
'dirs': ['include/nettle'],
}
moduleclass = 'lib'

View File

@ -0,0 +1,30 @@
fix for "libuct_ib.so.0: undefined symbol: uct_ib_exp_qp_fill_attr"
see https://github.com/openucx/ucx/issues/4883 + https://github.com/openucx/ucx/pull/4900
From 40d6991eca6b36c6bc2c557dccfbad7a48ce5f62 Mon Sep 17 00:00:00 2001
From: Artemy Kovalyov <artemyko@mellanox.com>
Date: Tue, 17 Mar 2020 13:34:19 +0200
Subject: [PATCH] UCT/IB/MLX5: Fix EXP accel compilation
---
src/uct/ib/mlx5/exp/ib_exp.h | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/uct/ib/mlx5/exp/ib_exp.h b/src/uct/ib/mlx5/exp/ib_exp.h
index ab1d9237e1..e97f574b17 100644
--- a/src/uct/ib/mlx5/exp/ib_exp.h
+++ b/src/uct/ib/mlx5/exp/ib_exp.h
@@ -7,7 +7,11 @@
#ifndef UCT_IB_MLX5_EXP_H_
#define UCT_IB_MLX5_EXP_H_
-#if HAVE_VERBS_EXP_H
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#if HAVE_MLX5_HW && HAVE_VERBS_EXP_H
void uct_ib_exp_qp_fill_attr(uct_ib_iface_t *iface, uct_ib_qp_attr_t *attr);
#else
static inline void uct_ib_exp_qp_fill_attr(uct_ib_iface_t *iface, uct_ib_qp_attr_t *attr) { }

View File

@ -18,6 +18,10 @@ toolchainopts = {'pic': True}
source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
sources = ['%(namelower)s-%(version)s.tar.gz']
patches = [
'UCX-1.8.0_fix-undefined-symbol.patch',
]
builddependencies = [
('pkg-config', '0.29.2', '', True),
]
@ -33,6 +37,8 @@ configopts += '--without-java --disable-doxygen-doc '
buildopts = 'V=1'
sanity_check_commands = ["ucx_info -d"]
sanity_check_paths = {
'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'],
'dirs': ['include', 'lib', 'share']