Mesa-18.1.3-GCC-6.3.0-2.27.eb 2.41 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
# 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 = 'ConfigureMake'

name = 'Mesa'
version = '18.1.3'

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': 'GCC', 'version': '6.3.0-2.27'}
# swr detects and builds parts specific for AVX and AVX2. If we use
# -xHost, this always gets overwritten and will fail.
toolchainopts = {'optarch': False}

sources = [SOURCELOWER_TAR_XZ]
source_urls = [
    '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',
]
#patches = ['Mesa-17.0.2_fix-strip-llvm-flags.patch']

builddependencies = [
    ('flex', '2.6.3', '', True),
    ('Bison', '3.0.4', '', True),
    ('Autotools', '20150215', '', True),
    ('pkg-config', '0.29.2', '', True),
    ('Mako', '1.0.6', '-Python-2.7.13', True),
    ('libxml2', '2.9.4', '-Python-2.7.13', True),
]

dependencies = [
    ('zlib', '1.2.11', '', True),
    ('nettle', '3.3'),
    ('libdrm', '2.4.76', '', True),
    ('LLVM', '6.0.1'),
    ('X11', '20170314', '', True),
    ('expat', '2.2.0', '', True),
]

# GLU is not part anymore of Mesa package!
configopts = " --disable-osmesa --enable-gallium-osmesa --enable-gallium-llvm --enable-glx --disable-dri"
configopts += " --disable-gbm --disable-driglx-direct --with-gallium-drivers='swrast,swr' --disable-egl"
configopts += " --with-osmesa-bits=32 --enable-texture-float --enable-llvm-shared-libs "

buildopts = 'V=1'

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'