From: Helmut Grohne Date: Thu, 27 Sep 2018 15:17:37 +0000 (+0200) Subject: meson: use the host architecture compiler/linker for src/boot/efi X-Git-Tag: archive/raspbian/239-15+rpi1^2~30 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e73e547f18fe8479e8e303640fe00502db843f85;p=systemd.git meson: use the host architecture compiler/linker for src/boot/efi cross building systemd to arm64 presently fails, because the build system uses plain gcc and plain ld (build architecture compiler and linker respectively) for building src/boot/efi. These values come from the efi-cc and efi-ld options respectively. It rather should be using host tools here. Fixes: b710072da441 ("add support for building efi modules") (cherry picked from commit df7cacae696ae3c1d13d2f9a4db24815e07e29a1) Gbp-Pq: Name meson-use-the-host-architecture-compiler-linker-for-src-b.patch --- diff --git a/meson_options.txt b/meson_options.txt index dc7951b9..8f9cfd97 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -278,9 +278,9 @@ option('dbus', type : 'combo', choices : ['auto', 'true', 'false'], option('gnu-efi', type : 'combo', choices : ['auto', 'true', 'false'], description : 'gnu-efi support for sd-boot') -option('efi-cc', type : 'string', value : 'gcc', +option('efi-cc', type : 'string', description : 'the compiler to use for EFI modules') -option('efi-ld', type : 'string', value : 'ld', +option('efi-ld', type : 'string', description : 'the linker to use for EFI modules') option('efi-libdir', type : 'string', description : 'path to the EFI lib directory') diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build index 8ec1fa7b..db47bb7c 100644 --- a/src/boot/efi/meson.build +++ b/src/boot/efi/meson.build @@ -34,7 +34,13 @@ stub_sources = ''' if conf.get('ENABLE_EFI') == 1 and get_option('gnu-efi') != 'false' efi_cc = get_option('efi-cc') + if efi_cc == '' + efi_cc = ' '.join(cc.cmd_array()) + endif efi_ld = get_option('efi-ld') + if efi_ld == '' + efi_ld = find_program('ld', required: true) + endif efi_incdir = get_option('efi-includedir') gnu_efi_path_arch = ''