diff --git a/x11/library/mesa/actions.py b/x11/library/mesa/actions.py old mode 100644 new mode 100755 index b4eb97a4cf..19706f20dd --- a/x11/library/mesa/actions.py +++ b/x11/library/mesa/actions.py @@ -11,57 +11,105 @@ from pisi.actionsapi import shelltools Libdir = "/usr/lib32" if get.buildTYPE() == "emul32" else "/usr/lib" + def setup(): - autotools.autoreconf("-vif") + #autotools.autoreconf("-vif") # --enable-sysfs option provides better hardware information support with "lspci" # --enable-32-bit option is not present anymore. Although build fails in emul32. With --disable-asm option, not fail. Needs to be tested. - options ="\ - --with-dri-driverdir=/usr/lib/xorg/modules/dri \ - --with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl \ - --with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \ - --with-platforms=x11,drm,wayland \ - --enable-xa \ - --enable-dri \ - --enable-egl \ - --enable-gbm \ - --enable-glx \ - --enable-dri3 \ - --enable-gles1 \ - --enable-gles2 \ - --enable-vdpau \ - --enable-osmesa \ - --enable-xvmc \ - --enable-glx-tls \ - --enable-llvm \ - --enable-nine \ - --enable-libunwind \ - --enable-llvm-shared-libs \ - --enable-shared-glapi \ - --enable-texture-float \ - " + shelltools.system("sed -i 's|python2|python|g' \ + meson.build \ + src/meson.build") + shelltools.system("sed -i 's|prog_python2|prog_python|g' \ + src/util/xmlpool/meson.build \ + src/util/meson.build \ + src/mapi/glapi/gen/meson.build \ + src/mapi/shared-glapi/meson.build \ + src/mapi/es1api/meson.build \ + src/mapi/es2api/meson.build \ + src/compiler/meson.build \ + src/compiler/spirv/meson.build \ + src/compiler/nir/meson.build \ + src/compiler/glsl/meson.build \ + src/vulkan/util/meson.build \ + src/amd/common/meson.build \ + src/amd/vulkan/meson.build \ + src/intel/genxml/meson.build \ + src/intel/isl/meson.build \ + src/intel/compiler/meson.build \ + src/intel/vulkan/meson.build \ + src/mesa/main/meson.build \ + src/mesa/meson.build \ + src/mesa/drivers/dri/i965/meson.build \ + src/egl/meson.build \ + src/gallium/auxiliary/meson.build \ + src/gallium/drivers/r600/meson.build \ + src/gallium/drivers/radeonsi/meson.build") + + shelltools.makedirs("build") + shelltools.cd("build") + options = "meson --prefix=/usr \ + --sysconfdir=/etc \ + --buildtype=release \ + -Ddri-drivers-path=/usr/lib/xorg/modules/dri \ + -Db_ndebug=true \ + -Dplatforms=x11,wayland,drm,surfaceless \ + -Ddri3=true \ + -Ddri-drivers=i915,i965,r200,nouveau \ + -Dgallium-drivers=r300,r600,nouveau,radeonsi,svga,swrast,virgl \ + -Dgallium-extra-hud=true \ + -Dgallium-vdpau=true \ + -Dgallium-xvmc=true \ + -Dgallium-va=false \ + -Dgallium-xa=true \ + -Dgallium-nine=true \ + -Dvulkan-drivers=amd,intel \ + -Dshared-glapi=true \ + -Dgles1=true \ + -Dgles2=true \ + -Dopengl=true \ + -Dgbm=true \ + -Dglx=dri \ + -Degl=true \ + -Dglvnd=false \ + -Dasm=true \ + -Dllvm=true \ + -Dvalgrind=false \ + -Dlibunwind=true \ + -Dbuild-tests=false \ + -Dtexture-float=true \ + -Dosmesa=gallium \ + -Dlmsensors=false \ + -Dswr-arches=avx,avx2" + + if get.buildTYPE() == "emul32": + shelltools.export("CC", "gcc -m32") + shelltools.export("CXX", "g++ -m32") shelltools.export("PKG_CONFIG_PATH","/usr/lib32/pkgconfig") shelltools.export("LLVM_CONFIG","/usr/bin/llvm-config-32") - options += " --with-dri-driverdir=/usr/lib32/xorg/modules/dri \ - --with-clang-libdir=/usr/lib32 \ - --disable-asm " + options += " --libdir=/usr/lib32 \ + -Ddri-drivers-path=/usr/lib32/xorg/modules/dri \ + -Dclang-libdir-path=/usr/lib32 \ + -Dgallium-opencl=disabled" elif get.ARCH() == "x86_64": - options += " --with-clang-libdir=/usr/lib \ - --enable-omx-bellagio \ - --enable-opencl-icd " + options += " -Dclang-libdir-path=/usr/lib \ + -Dgallium-omx=bellagio \ + -Dgallium-opencl=disabled .." - autotools.configure(options) - pisitools.dosed("libtool","( -shared )", " -Wl,--as-needed\\1") + shelltools.system(options) + #pisitools.dosed("libtool","( -shared )", " -Wl,--as-needed\\1") def build(): - autotools.make() + shelltools.cd("build") + shelltools.system("ninja") def install(): - autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + shelltools.cd("build") + shelltools.system("DESTDIR=%s ninja install" % get.installDIR()) pisitools.domove("%s/libGL.so.1.2.0" % Libdir, "%s/mesa" % Libdir) pisitools.dosym("libGL.so.1.2.0", "%s/libGL.so.1.2" % Libdir) @@ -70,6 +118,8 @@ def install(): #pisitools.remove("/usr/lib32/pkgconfig/wayland-egl.pc") #pisitools.remove("/usr/lib32/libwayland-egl.so*") return + + shelltools.cd("..") #pisitools.dodoc("docs/COPYING") pisitools.dohtml("docs/*") diff --git a/x11/library/mesa/files/old.actions.py b/x11/library/mesa/files/old.actions.py new file mode 100644 index 0000000000..b4eb97a4cf --- /dev/null +++ b/x11/library/mesa/files/old.actions.py @@ -0,0 +1,79 @@ +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import get +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools + + +Libdir = "/usr/lib32" if get.buildTYPE() == "emul32" else "/usr/lib" + +def setup(): + autotools.autoreconf("-vif") + +# --enable-sysfs option provides better hardware information support with "lspci" +# --enable-32-bit option is not present anymore. Although build fails in emul32. With --disable-asm option, not fail. Needs to be tested. + + options ="\ + --with-dri-driverdir=/usr/lib/xorg/modules/dri \ + --with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl \ + --with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \ + --with-platforms=x11,drm,wayland \ + --enable-xa \ + --enable-dri \ + --enable-egl \ + --enable-gbm \ + --enable-glx \ + --enable-dri3 \ + --enable-gles1 \ + --enable-gles2 \ + --enable-vdpau \ + --enable-osmesa \ + --enable-xvmc \ + --enable-glx-tls \ + --enable-llvm \ + --enable-nine \ + --enable-libunwind \ + --enable-llvm-shared-libs \ + --enable-shared-glapi \ + --enable-texture-float \ + " + + if get.buildTYPE() == "emul32": + shelltools.export("PKG_CONFIG_PATH","/usr/lib32/pkgconfig") + shelltools.export("LLVM_CONFIG","/usr/bin/llvm-config-32") + options += " --with-dri-driverdir=/usr/lib32/xorg/modules/dri \ + --with-clang-libdir=/usr/lib32 \ + --disable-asm " + + elif get.ARCH() == "x86_64": + options += " --with-clang-libdir=/usr/lib \ + --enable-omx-bellagio \ + --enable-opencl-icd " + + autotools.configure(options) + pisitools.dosed("libtool","( -shared )", " -Wl,--as-needed\\1") + +def build(): + autotools.make() + +def install(): + autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + + pisitools.domove("%s/libGL.so.1.2.0" % Libdir, "%s/mesa" % Libdir) + pisitools.dosym("libGL.so.1.2.0", "%s/libGL.so.1.2" % Libdir) + + if get.buildTYPE() == "emul32": + #pisitools.remove("/usr/lib32/pkgconfig/wayland-egl.pc") + #pisitools.remove("/usr/lib32/libwayland-egl.so*") + return + + #pisitools.dodoc("docs/COPYING") + pisitools.dohtml("docs/*") + + #pisitools.remove("/usr/lib/libwayland-egl.so*") + #pisitools.remove("/usr/lib/pkgconfig/wayland-egl.pc") + diff --git a/x11/library/mesa/pspec.xml b/x11/library/mesa/pspec.xml index 584769f8f7..036191437d 100644 --- a/x11/library/mesa/pspec.xml +++ b/x11/library/mesa/pspec.xml @@ -15,6 +15,7 @@ Mesa is an open-source implementation of the OpenGL specification - a system for rendering interactive 3D graphics. https://mesa.freedesktop.org/archive/mesa-18.2.5.tar.xz + meson zlib-devel xorg-proto openssl-devel @@ -35,9 +36,9 @@ eudev-devel nettle-devel python-mako - llvm - llvm-libs - llvm-clang-devel + llvm + llvm-libs + llvm-clang-devel libxshmfence-devel automake libunwind-devel @@ -82,15 +83,16 @@ nettle libunwind libxshmfence - llvm - llvm-clang - llvm-libs + llvm + llvm-clang + llvm-libs /etc /usr/bin /usr/lib /usr/lib/libGL.so.1.2 + /usr/share/vulkan/icd.d /usr/share/doc @@ -154,7 +156,7 @@ libxshmfence-32bit nettle-32bit libunwind-32bit - llvm-32bit + llvm-32bit libXrandr-32bit @@ -182,7 +184,7 @@ wayland-32bit libunwind-32bit mesa - llvm-32bit + llvm-32bit /usr/lib32 @@ -193,6 +195,13 @@ + + 2018-12-15 + 18.2.5 + Rebuild llvm. + Mustafa Cinasal + muscnsl@gmail.com + 2018-11-17 18.2.5