mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-26 07:50:20 +01:00
Add a comment about updating tags in .gitlab-ci/image-tags.yml to the .gitlab-ci/container/create-android-cross-file.sh as it is not immediate that it gets called from .gitlab-ci/container/debian/android_build.sh which also requires to update DEBIAN_BUILD_TAG. Reviewed-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36710>
43 lines
1.5 KiB
Bash
Executable file
43 lines
1.5 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# When changing this file, you need to bump the following
|
|
# .gitlab-ci/image-tags.yml tags:
|
|
# DEBIAN_BUILD_TAG
|
|
|
|
ndk=$1
|
|
arch=$2
|
|
cpu_family=$3
|
|
cpu=$4
|
|
cross_file="/cross_file-$arch.txt"
|
|
sdk_version=$5
|
|
|
|
# armv7 has the toolchain split between two names.
|
|
arch2=${6:-$2}
|
|
|
|
# Note that we disable C++ exceptions, because Mesa doesn't use exceptions,
|
|
# and allowing it in code generation means we get unwind symbols that break
|
|
# the libEGL and driver symbol tests.
|
|
|
|
cat > "$cross_file" <<EOF
|
|
[binaries]
|
|
ar = '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar'
|
|
c = ['ccache', '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/${arch2}${sdk_version}-clang', '-fno-exceptions', '-fno-unwind-tables', '-fno-asynchronous-unwind-tables']
|
|
cpp = ['ccache', '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/${arch2}${sdk_version}-clang++', '-fno-exceptions', '-fno-unwind-tables', '-fno-asynchronous-unwind-tables', '--start-no-unused-arguments', '-static-libstdc++', '--end-no-unused-arguments']
|
|
c_ld = 'lld'
|
|
cpp_ld = 'lld'
|
|
strip = '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip'
|
|
rust = ['rustc', '--target', '${arch2}']
|
|
pkg-config = ['/usr/bin/pkgconf']
|
|
|
|
[host_machine]
|
|
system = 'android'
|
|
cpu_family = '$cpu_family'
|
|
cpu = '$cpu'
|
|
endian = 'little'
|
|
|
|
[properties]
|
|
needs_exe_wrapper = true
|
|
bindgen_clang_arguments = ['-target', '${arch2}', '--sysroot', '$ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot']
|
|
pkg_config_libdir = '/usr/local/lib/${arch2}/pkgconfig/:/${ndk}/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/${arch2}/pkgconfig/'
|
|
|
|
EOF
|