Files
chromebrew/packages/mesa.rb
Satadru Pramanik, DO, MPH, MEng cd0b9fe26f llvm => 18.1.0 (#9329)
* llvm18: initial builds

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* sync with master

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* updste to llvm 18.1-rc4

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update packages to llvm18 versions

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* make more llvm17=>llvm18 changes

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add non-x86_64 binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* more llvm17 => llvm18 changes

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add spirv_llvm_translator update

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update openmp

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* lint

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild llvm part 1

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* llvm rebuilds

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* test dep additions

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust compatibility for vkd3d

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* libvdpau => 1.5

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* revert glslang change

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild llvm for x86

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* finish llvm18 rebuilds

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add more llvm patches

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild flex

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild arm w/o rc suffix

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* upload arm sub-packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add new x86_64 binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update more binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fix flex license

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update spirv_llvm_translator binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add x86_64 binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add more rebuild binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* build vkd3d

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add i686 llvm binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust deps, add i686 packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update remaining i686 binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

---------

Signed-off-by: Satadru Pramanik <satadru@gmail.com>
2024-03-08 08:40:39 -06:00

100 lines
3.2 KiB
Ruby

require 'package'
class Mesa < Package
description 'Open-source implementation of the OpenGL specification'
homepage 'https://www.mesa3d.org'
@_ver = '24.0.2'
version "#{@_ver}-llvm18"
license 'MIT'
compatibility 'x86_64 aarch64 armv7l'
source_url 'https://gitlab.freedesktop.org/mesa/mesa.git'
git_hashtag "mesa-#{@_ver}"
binary_compression 'tar.zst'
binary_sha256({
aarch64: '5f27a8e4a5793becc36c7dc4283976d90ab1f0837838d8a06a0e308c3da9f705',
armv7l: '5f27a8e4a5793becc36c7dc4283976d90ab1f0837838d8a06a0e308c3da9f705',
x86_64: '3cf14fc8db0590c8f976ea26a1aefb7c138985de54cb06bfd4e52cb7e174b799'
})
depends_on 'elfutils' # R
depends_on 'eudev' # R
depends_on 'expat' # R
depends_on 'gcc_dev' => :build
depends_on 'gcc_lib' # R
depends_on 'glibc' # R
depends_on 'glibc_lib' #
depends_on 'glslang' => :build
depends_on 'libdrm' # R
depends_on 'libglvnd' # R
depends_on 'libomxil_bellagio' => :build
depends_on 'libunwind' # R
depends_on 'libva' => :build
depends_on 'libvdpau' => :build
depends_on 'libx11' # R
depends_on 'libxcb' # R
depends_on 'libxdamage' => :build
depends_on 'libxdmcp' => :build
depends_on 'libxext' # R
depends_on 'libxfixes' # R
depends_on 'libxrandr' # R
depends_on 'libxshmfence' # R
depends_on 'libxv' => :build
depends_on 'libxvmc' # R
depends_on 'libxv' # R
depends_on 'libxxf86vm' # R
depends_on 'llvm18_dev' => :build
depends_on 'llvm18_lib' # R
depends_on 'lm_sensors' # R
depends_on 'py3_mako' => :build
depends_on 'valgrind' => :build
depends_on 'vulkan_headers' => :build
depends_on 'vulkan_icd_loader' # R
depends_on 'wayland_protocols' => :build
depends_on 'wayland' # R
depends_on 'xcb_util_keysyms' # R
depends_on 'zlibpkg' # R
depends_on 'zstd' # R
def self.build
system "mold -run meson setup #{CREW_MESON_OPTIONS.gsub('-mfpu=vfpv3-d16', '-mfpu=neon-fp16')} \
-Db_asneeded=false \
-Ddri3=enabled \
-Degl=enabled \
-Dgbm=enabled \
-Dgles1=disabled \
-Dgles2=enabled \
-Dglvnd=true \
-Dglx=dri \
-Dllvm=enabled \
-Dgallium-drivers='#{ARCH == 'x86_64' ? 'i915,r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink' : 'v3d,freedreno,etnaviv,nouveau,svga,tegra,virgl,lima,panfrost,swrast,iris,zink'}' \
-Dvulkan-drivers='#{ARCH == 'x86_64' ? 'amd, intel, intel_hasvk, swrast' : 'auto'}' \
-Dvideo-codecs='all' \
builddir"
system 'meson configure --no-pager builddir'
system "mold -run #{CREW_NINJA} -C builddir"
end
def self.install
system "DESTDIR=#{CREW_DEST_DIR} #{CREW_NINJA} -C builddir install"
# The following are hacks to keep sommelier from complaining.
Dir.chdir("#{CREW_DEST_LIB_PREFIX}/dri") do
FileUtils.ln_s '.', 'tls' unless File.exist?('tls')
end
FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/gbm/tls"
case ARCH
when 'x86_64'
Dir.chdir("#{CREW_DEST_LIB_PREFIX}/gbm/tls") do
# For Intel GPUs
FileUtils.ln_s '../../libgbm.so', 'i915_gbm.so'
# For AMD GPUs
FileUtils.ln_s '../../libgbm.so', 'amdgpu_gbm.so'
end
when 'armv7l', 'aarch64'
Dir.chdir("#{CREW_DEST_LIB_PREFIX}/gbm/tls") do
FileUtils.ln_s '../../libgbm.so', 'pvr_gbm.so'
end
end
end
end