mirror of
https://gitee.com/openharmony/third_party_mesa3d
synced 2024-11-23 15:30:09 +00:00
0767af3ffe
To support Android drivers, we're going to want to be tracking that Mesa's build succeeds on a real android toolchain. This still uses the android stubs since these libs aren't in the NDK. Note that I had to drop the Intel and AMD drivers currently: we don't have LLVM cross-compiled for Android in this container, and I'm honestly hoping ACO saves us from that. Intel has dependencies on libexpat, which AOSP really doesn't want to bring in, and it looks to me like those dependencies could be optional. Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6700>
34 lines
1.0 KiB
Bash
34 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
ndk=$1
|
|
arch=$2
|
|
cpu_family=$3
|
|
cpu=$4
|
|
cross_file="/cross_file-$arch.txt"
|
|
|
|
# armv7 has the toolchain split between two names.
|
|
arch2=${5:-$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/$arch-ar'
|
|
c = ['ccache', '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/${arch2}29-clang', '-fuse-ld=lld', '-fno-exceptions', '-fno-unwind-tables', '-fno-asynchronous-unwind-tables']
|
|
cpp = ['ccache', '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/${arch2}29-clang++', '-fuse-ld=lld', '-fno-exceptions', '-fno-unwind-tables', '-fno-asynchronous-unwind-tables', '-static-libstdc++']
|
|
strip = '$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/$arch-strip'
|
|
pkgconfig = ['/usr/bin/pkg-config']
|
|
|
|
[host_machine]
|
|
system = 'linux'
|
|
cpu_family = '$cpu_family'
|
|
cpu = '$cpu'
|
|
endian = 'little'
|
|
|
|
[properties]
|
|
needs_exe_wrapper = true
|
|
|
|
EOF
|