config: add aarch64 clang for Ubuntu 18.04
Create distribution specific meson cross-file arm64_armv8_linux_clang_ubuntu1804. The file is distribution specific because it contains paths to headers and libs specific to the distribution. The clang/LLVM toolchain does not provide its own c stdlib so the paths must be supplied in some manner. In the current version of meson, v0.47.1, the only place where the paths can be specified is the cross-file. Other possibilities do not work: * setting CFLAGS, LDFLAGS only sets these for non-cross builds. * setting -Dc_args, -Dc_link_args on the command line also only sets these for non-cross builds. Support for specifying these for cross builds was added in v0.51.0 [0]. * the cross-file can't be split into generic clang cross config and distribution specific config. Support added in v0.52.0 [1]. [0] https://mesonbuild.com/Builtin-options.html#specifying-options-per-machine [1] https://mesonbuild.com/Machine-files.html#loading-multiple-machine-files Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
This commit is contained in:
parent
7be7dc6dea
commit
3d01d65ba0
20
config/arm/arm64_armv8_linux_clang_ubuntu1804
Normal file
20
config/arm/arm64_armv8_linux_clang_ubuntu1804
Normal file
@ -0,0 +1,20 @@
|
||||
[binaries]
|
||||
c = 'clang'
|
||||
cpp = 'clang++'
|
||||
ar = 'llvm-ar'
|
||||
strip = 'llvm-strip'
|
||||
llvm-config = 'llvm-config'
|
||||
pcap-config = 'llvm-config'
|
||||
pkgconfig = 'aarch64-linux-gnu-pkg-config'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'aarch64'
|
||||
cpu = 'armv8-a'
|
||||
endian = 'little'
|
||||
|
||||
[properties]
|
||||
implementor_id = 'generic'
|
||||
implementor_pn = 'default'
|
||||
c_args = ['-target', 'aarch64-linux-gnu', '--sysroot', '/usr/aarch64-linux-gnu']
|
||||
c_link_args = ['-target', 'aarch64-linux-gnu', '-fuse-ld=lld', '--gcc-toolchain=/usr']
|
Loading…
Reference in New Issue
Block a user