|
1 | 1 | inherit: [meson, wayland-scanner] |
2 | 2 |
|
3 | 3 | metaEnvironment: |
4 | | - PKG_VERSION: "24.2.8" |
| 4 | + PKG_DESCRIPTION: "Mesa OpenGL library" |
| 5 | + PKG_VERSION: "25.0.5" |
5 | 6 | PKG_LICENSE: "MIT, SGI, Khronos" |
6 | 7 |
|
7 | | -depends: |
8 | | - - libs::zlib-dev |
9 | | - - virtual::libs::libdrm-dev |
10 | | - - graphics::wayland::wayland-protocols |
11 | | - - graphics::wayland::wayland-dev |
| 8 | +Config: |
| 9 | + MESA3D_GALLIUM_DRIVERS: |
| 10 | + help: "List of gallium drivers to build" |
| 11 | + type: str |
| 12 | + # crocus,etnaviv,freedreno,i915,iris,lima,nouveau,panfrost,r300,r600,radeonsi,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl |
| 13 | + # this is the maximum we support right now: |
| 14 | + default: "crocus,lima,panfrost,svga,nouveau,tegra,v3d,vc4,virgl" |
| 15 | + MESA3D_GLX: |
| 16 | + help: "Build support for GLX platform. Default: disabled" |
| 17 | + type: choice |
| 18 | + choice: |
| 19 | + auto: |
| 20 | + disabled: |
| 21 | + dri: |
| 22 | + xlib: |
| 23 | + default: "disabled" |
| 24 | + MESA3D_GLX_READ_ONLY_TEXT: |
| 25 | + help: "Disable writable .text section on x86" |
| 26 | + type: bool |
| 27 | + default: False |
| 28 | + MESA3D_PLATFORM: |
| 29 | + help: "Window system to support. Default: wayland" |
| 30 | + type: choice |
| 31 | + choice: |
| 32 | + wayland: |
| 33 | + x11: |
| 34 | + default: wayland |
12 | 35 |
|
| 36 | +depends: |
13 | 37 | - tools: |
14 | 38 | target-toolchain: host-compat-toolchain |
15 | 39 | depends: |
16 | 40 | - python::mako |
17 | 41 | - python::pyyaml |
18 | | - - python::pycparser |
| 42 | + - name: python::pycparser |
| 43 | + if: "$(eq,$MESA3D_PLATFORM,wayland)" |
19 | 44 |
|
| 45 | + - libs::expat-dev |
20 | 46 | - use: [] |
21 | 47 | depends: |
22 | | - - libs::zlib-tgt |
23 | | - - virtual::libs::libdrm-tgt |
24 | | - - graphics::wayland::wayland-tgt |
| 48 | + - libs::expat-tgt |
25 | 49 |
|
26 | 50 | checkoutSCM: |
27 | 51 | scm: url |
28 | 52 | url: https://archive.mesa3d.org/mesa-${PKG_VERSION}.tar.xz |
29 | | - digestSHA1: c7994d1bf40879518b6ae331dd92e04b6e9d436e |
| 53 | + digestSHA1: d6427cb320fcbd8bbe223ad69b16619391812fee |
30 | 54 | stripComponents: 1 |
31 | 55 |
|
32 | 56 | buildTools: [bison, flex, m4] |
33 | | -buildVars: [CONFIG_MESA3D_GALLIUM_DRIVERS] |
34 | | -buildScript: | |
35 | | - # crocus,etnaviv,freedreno,i915,iris,lima,nouveau,panfrost,r300,r600,radeonsi,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl |
36 | | - # this is the maximum we support right now: |
37 | | - CONFIG_MESA3D_GALLIUM_DRIVERS=${CONFIG_MESA3D_GALLIUM_DRIVERS:-crocus,lima,panfrost,svga,nouveau,tegra,v3d,vc4,virgl} |
38 | | -
|
39 | | - mesonBuild $1 \ |
40 | | - -Dglx=disabled \ |
41 | | - -Dgallium-xa=disabled \ |
42 | | - -Dglvnd=disabled \ |
43 | | - -Dgallium-opencl=disabled \ |
44 | | - -Dgallium-drivers="$CONFIG_MESA3D_GALLIUM_DRIVERS" \ |
45 | | - -Dvulkan-drivers="" \ |
46 | | - -Dplatforms=wayland \ |
47 | | - -Dgbm=enabled \ |
48 | | - -Degl=enabled \ |
49 | | - -Dopengl=false \ |
50 | | - -Dshared-glapi=enabled \ |
51 | | - -Dgles1=enabled \ |
52 | | - -Dgles2=enabled |
53 | 57 |
|
54 | 58 | multiPackage: |
| 59 | + clc: |
| 60 | + depends: |
| 61 | + - devel::llvm-libclc-dev |
| 62 | + - libs::spirv-tools-dev |
| 63 | + - libs::spirv-llvm-translator-dev |
| 64 | + - use: [] |
| 65 | + depends: |
| 66 | + - devel::llvm-libclc-tgt |
| 67 | + - libs::spirv-tools-tgt |
| 68 | + - libs::spirv-llvm-translator-tgt |
| 69 | + buildTools: [llvm] |
| 70 | + buildSetup: | |
| 71 | + if [ -e cross_file.txt ] && ! grep -q llvm-config cross_file.txt ; then |
| 72 | + sed -i \ |
| 73 | + "/\[binaries\]/a llvm-config = '${BOB_DEP_PATHS['devel::llvm-libs-dev']}\/usr\/bin\/llvm-config'" \ |
| 74 | + cross_file.txt |
| 75 | + fi |
| 76 | +
|
| 77 | + buildScript: | |
| 78 | + mesonBuild $1 \ |
| 79 | + -Dintel-clc=enabled \ |
| 80 | + -Dinstall-intel-clc=True \ |
| 81 | + -Dmesa-clc=enabled \ |
| 82 | + -Dinstall-mesa-clc=True \ |
| 83 | + -Dgallium-xa=disabled \ |
| 84 | + -Dglvnd=disabled \ |
| 85 | + -Dgallium-opencl=disabled \ |
| 86 | + -Dgallium-drivers="" \ |
| 87 | + -Dvulkan-drivers="" \ |
| 88 | + -Dplatforms="" \ |
| 89 | + -Dvalgrind=disabled \ |
| 90 | + -Dosmesa=false \ |
| 91 | + -Dshared-llvm=disabled \ |
| 92 | +
|
| 93 | + multiPackage: |
| 94 | + dev: |
| 95 | + packageScript: mesonPackageDev |
| 96 | + provideDeps: ['*-dev'] |
| 97 | + tgt: |
| 98 | + packageScript: mesonPackageLibs |
| 99 | + provideDeps: ['*-tgt'] |
| 100 | + "": |
| 101 | + depends: |
| 102 | + - use: [] |
| 103 | + name: libs::mesa3d-clc-tgt |
| 104 | + provideDeps: ['*-tgt'] |
| 105 | + packageScript: | |
| 106 | + mesonPackageBin |
| 107 | + provideTools: |
| 108 | + mesa_clc: "usr/bin" |
| 109 | + |
55 | 110 | "": |
56 | 111 | depends: |
57 | | - - name: libs::mesa3d-tgt |
58 | | - use: [] |
59 | | - packageScript: mesonPackageBin |
60 | | - provideDeps: [ "*-tgt" ] |
61 | | - |
62 | | - dev: |
63 | | - packageScript: mesonPackageDev |
64 | | - provideDeps: [ "*-dev" ] |
65 | | - |
66 | | - tgt: |
67 | | - packageScript: mesonPackageLib |
68 | | - provideDeps: [ "*-tgt" ] |
| 112 | + |
| 113 | + - if: "$(eq,$MESA3D_PLATFORM,wayland)" |
| 114 | + depends: |
| 115 | + - graphics::wayland::wayland-protocols |
| 116 | + - graphics::wayland::wayland-dev |
| 117 | + |
| 118 | + - if: "$(eq,$MESA3D_PLATFORM,x11)" |
| 119 | + depends: |
| 120 | + - graphics::xorg::proto::xorgproto |
| 121 | + - libs::xcb::libxcb-dev |
| 122 | + - libs::xorg::libX11-dev |
| 123 | + - libs::xorg::libXdamage-dev |
| 124 | + - libs::xorg::libXext-dev |
| 125 | + - libs::xorg::libXfixes-dev |
| 126 | + - libs::xorg::libXrandr-dev |
| 127 | + - libs::xorg::libXshmfence-dev |
| 128 | + - libs::xorg::libXt-dev |
| 129 | + - libs::xorg::libXxf86vm-dev |
| 130 | + - virtual::core::udev-dev |
| 131 | + |
| 132 | + - if: "$(match,$MESA3D_GALLIUM_DRIVERS,iris)" |
| 133 | + tools: |
| 134 | + target-toolchain: host-compat-toolchain |
| 135 | + depends: |
| 136 | + - name: libs::mesa3d-clc |
| 137 | + use: [tools] |
| 138 | + |
| 139 | + - libs::libunwind-dev |
| 140 | + - libs::zlib-dev |
| 141 | + - virtual::libs::libdrm-dev |
| 142 | + - use: [] |
| 143 | + depends: |
| 144 | + - libs::libunwind-tgt |
| 145 | + - libs::zlib-tgt |
| 146 | + - virtual::libs::libdrm-tgt |
| 147 | + |
| 148 | + - if: "$(eq,$MESA3D_PLATFORM,wayland)" |
| 149 | + name: graphics::wayland::wayland-tgt |
| 150 | + |
| 151 | + - if: "$(eq,$MESA3D_PLATFORM,x11)" |
| 152 | + depends: |
| 153 | + - libs::xcb::libxcb-tgt |
| 154 | + - libs::xorg::libX11-tgt |
| 155 | + - libs::xorg::libXdamage-tgt |
| 156 | + - libs::xorg::libXext-tgt |
| 157 | + - libs::xorg::libXfixes-tgt |
| 158 | + - libs::xorg::libXrandr-tgt |
| 159 | + - libs::xorg::libXshmfence-tgt |
| 160 | + - libs::xorg::libXt-tgt |
| 161 | + - libs::xorg::libXxf86vm-tgt |
| 162 | + - virtual::core::udev-tgt |
| 163 | + |
| 164 | + buildTools: |
| 165 | + - if: "$(match,$MESA3D_GALLIUM_DRIVERS,iris)" |
| 166 | + name: mesa_clc |
| 167 | + buildVars: [MESA3D_GALLIUM_DRIVERS, MESA3D_GLX, MESA3D_PLATFORM, |
| 168 | + MESA3D_GLX_READ_ONLY_TEXT] |
| 169 | + buildScript: | |
| 170 | + mesonBuild $1 \ |
| 171 | + -Dglx=${MESA3D_GLX} \ |
| 172 | + -Dgallium-xa=disabled \ |
| 173 | + -Dglvnd=disabled \ |
| 174 | + -Dgallium-opencl=disabled \ |
| 175 | + -Dgallium-drivers="$MESA3D_GALLIUM_DRIVERS" \ |
| 176 | + -Dvulkan-drivers="" \ |
| 177 | + -Dplatforms=${MESA3D_PLATFORM} \ |
| 178 | + -Dgbm=enabled \ |
| 179 | + -Degl=enabled \ |
| 180 | + -Dshared-glapi=enabled \ |
| 181 | + -Dgles1=enabled \ |
| 182 | + -Dgles2=enabled \ |
| 183 | + -Dglx-read-only-text=$([[ $MESA3D_GLX_READ_ONLY_TEXT -ne 0 ]] && echo true || echo false) \ |
| 184 | + -Dvalgrind=disabled \ |
| 185 | + -Dllvm=disabled \ |
| 186 | + -Dintel-clc=system \ |
| 187 | + ${BOB_TOOL_PATHS[mesa_clc]+-Dmesa-clc=system} \ |
| 188 | + -Dosmesa=false |
| 189 | +
|
| 190 | + multiPackage: |
| 191 | + "": |
| 192 | + depends: |
| 193 | + - name: libs::mesa3d-tgt |
| 194 | + use: [] |
| 195 | + packageScript: mesonPackageBin |
| 196 | + provideDeps: [ "*-tgt" ] |
| 197 | + |
| 198 | + dev: |
| 199 | + packageScript: mesonPackageDev |
| 200 | + provideDeps: [ "*-dev" ] |
| 201 | + |
| 202 | + tgt: |
| 203 | + packageScript: mesonPackageLib |
| 204 | + provideDeps: [ "*-tgt" ] |
0 commit comments