No, still broken: ERROR: systemd-boot-236-r0 do_compile: oe_runmake failed ERROR: systemd-boot-236-r0 do_compile: Function failed: do_compile (log file is located at /data/poky-tmp/master/work/corei7-64-intel-common-poky-linux/systemd-boot/236-r0/temp/log.do_compile.31074) ERROR: Logfile of failure stored in: /data/poky-tmp/master/work/corei7-64-intel-common-poky-linux/systemd-boot/236-r0/temp/log.do_compile.31074 Log data follows: | DEBUG: Executing shell function do_compile | [1/10] Generating console.c.o with a custom command. | [2/10] Generating graphics.c.o with a custom command. | [3/10] Generating pe.c.o with a custom command. | [4/10] Generating measure.c.o with a custom command. | [5/10] Generating disk.c.o with a custom command. | [6/10] Generating util.c.o with a custom command. | [7/10] Generating shim.c.o with a custom command. | [8/10] Generating boot.c.o with a custom command. | [9/10] Generating systemd_boot.so with a custom command. | [10/10] Generating systemd-bootx64.efi with a custom command. | NOTE: make -j 20 linuxx64.efi.stub | make: *** No rule to make target 'linuxx64.efi.stub'. Stop. | ERROR: oe_runmake failed | WARNING: exit code 1 from a shell command. | ERROR: Function failed: do_compile (log file is located at /data/poky-tmp/master/work/corei7-64-intel-common-poky-linux/systemd-boot/236-r0/temp/log.do_compile.31074) ERROR: Task (/home/ross/Yocto/poky/meta/recipes-core/systemd/systemd-boot_236.bb:do_compile) failed with exit code '1'
Ross On 28 February 2018 at 13:30, Burton, Ross <ross.bur...@intel.com> wrote: > ERROR: systemd-boot-236-r0 do_compile: Function failed: do_compile (log > file is located at /data/poky-tmp/master/work/corei7-64-intel-common-poky- > linux/systemd-boot/236-r0/temp/log.do_compile.10165) > ERROR: Logfile of failure stored in: /data/poky-tmp/master/work/ > corei7-64-intel-common-poky-linux/systemd-boot/236-r0/ > temp/log.do_compile.10165 > Log data follows: > | DEBUG: Executing shell function do_compile > | /data/poky-tmp/master/work/corei7-64-intel-common-poky- > linux/systemd-boot/236-r0/temp/run.do_compile.10165: 109: [: x86_64: > unexpected operator > | ninja: error: unknown target 'src/boot/efi/systemd-bootia32.efi' > > + if [ "${TARGET_ARCH}" == "x86_64" ]; then > > Remember that == is a bashism and the correct operator for [ is =. > > (fix squashed here) > > Ross > > On 28 February 2018 at 05:56, Chen Qi <qi.c...@windriver.com> wrote: > >> Upgrade systemd-boot to 236. >> >> As systemd has dropped autotools support, fix configure and compile >> failures related to meson. >> >> Signed-off-by: Chen Qi <qi.c...@windriver.com> >> --- >> meta/recipes-core/systemd/systemd-boot_234.bb | 43 --------------- >> meta/recipes-core/systemd/systemd-boot_236.bb | 49 >> +++++++++++++++++ >> .../systemd/0001-Also-check-i586-for-ia32.patch | 28 ++++++++++ >> ...efi_cc-and-efi_ld-correctly-when-cross-co.patch | 62 >> ++++++++++++++++++++++ >> 4 files changed, 139 insertions(+), 43 deletions(-) >> delete mode 100644 meta/recipes-core/systemd/systemd-boot_234.bb >> create mode 100644 meta/recipes-core/systemd/systemd-boot_236.bb >> create mode 100644 meta/recipes-core/systemd/syst >> emd/0001-Also-check-i586-for-ia32.patch >> create mode 100644 meta/recipes-core/systemd/syst >> emd/0001-Fix-to-run-efi_cc-and-efi_ld-correctly-when-cross-co.patch >> >> diff --git a/meta/recipes-core/systemd/systemd-boot_234.bb >> b/meta/recipes-core/systemd/systemd-boot_234.bb >> deleted file mode 100644 >> index 88a14ac..0000000 >> --- a/meta/recipes-core/systemd/systemd-boot_234.bb >> +++ /dev/null >> @@ -1,43 +0,0 @@ >> -require systemd.inc >> -FILESEXTRAPATHS =. "${FILE_DIRNAME}/systemd:" >> - >> -DEPENDS = "intltool-native libcap util-linux gnu-efi gperf-native" >> - >> -SRC_URI += "file://0007-use-lnr-wrapper-instead-of-looking-for-relative >> -opti.patch" >> - >> -inherit autotools pkgconfig gettext >> -inherit deploy >> - >> -EFI_CC ?= "${CC}" >> -# Man pages are packaged through the main systemd recipe >> -EXTRA_OECONF = " --enable-gnuefi \ >> - --with-efi-includedir=${STAGING_INCDIR} \ >> - --with-efi-ldsdir=${STAGING_LIBDIR} \ >> - --with-efi-libdir=${STAGING_LIBDIR} \ >> - --disable-manpages \ >> - EFI_CC='${EFI_CC}' \ >> - " >> - >> -# Imported from the old gummiboot recipe >> -TUNE_CCARGS_remove = "-mfpmath=sse" >> -COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux" >> -COMPATIBLE_HOST_x86-x32 = "null" >> - >> -do_compile() { >> - SYSTEMD_BOOT_EFI_ARCH="ia32" >> - if [ "${TARGET_ARCH}" = "x86_64" ]; then >> - SYSTEMD_BOOT_EFI_ARCH="x64" >> - fi >> - >> - oe_runmake systemd-boot${SYSTEMD_BOOT_EFI_ARCH}.efi >> -} >> - >> -do_install() { >> - # Bypass systemd installation with a NOP >> - : >> -} >> - >> -do_deploy () { >> - install ${B}/systemd-boot*.efi ${DEPLOYDIR} >> -} >> -addtask deploy before do_build after do_compile >> diff --git a/meta/recipes-core/systemd/systemd-boot_236.bb >> b/meta/recipes-core/systemd/systemd-boot_236.bb >> new file mode 100644 >> index 0000000..1a0135a >> --- /dev/null >> +++ b/meta/recipes-core/systemd/systemd-boot_236.bb >> @@ -0,0 +1,49 @@ >> +require systemd.inc >> +FILESEXTRAPATHS =. "${FILE_DIRNAME}/systemd:" >> + >> +DEPENDS = "intltool-native libcap util-linux gnu-efi gperf-native" >> + >> +SRC_URI += >> "file://0003-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch >> \ >> + file://0027-remove-nobody-user-group-checking.patch \ >> + file://0001-Also-check-i586-for-ia32.patch \ >> + >> file://0001-Fix-to-run-efi_cc-and-efi_ld-correctly-when-cross-co.patch >> \ >> + " >> + >> +inherit meson pkgconfig gettext >> +inherit deploy >> + >> +EFI_CC ?= "${CC}" >> + >> +EXTRA_OEMESON += "-Defi=true \ >> + -Dgnu-efi=true \ >> + -Defi-includedir=${STAGING_INCDIR}/efi \ >> + -Defi-ldsdir=${STAGING_LIBDIR} \ >> + -Defi-libdir=${STAGING_LIBDIR} \ >> + -Dman=false \ >> + -Defi-cc='${EFI_CC}' \ >> + -Defi-ld='${LD}' \ >> + " >> + >> + >> +# Imported from the old gummiboot recipe >> +TUNE_CCARGS_remove = "-mfpmath=sse" >> +COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux" >> +COMPATIBLE_HOST_x86-x32 = "null" >> + >> +do_compile() { >> + SYSTEMD_BOOT_EFI_ARCH="ia32" >> + if [ "${TARGET_ARCH}" == "x86_64" ]; then >> + SYSTEMD_BOOT_EFI_ARCH="x64" >> + fi >> + ninja src/boot/efi/systemd-boot${SYSTEMD_BOOT_EFI_ARCH}.efi >> +} >> + >> +do_install() { >> + # Bypass systemd installation with a NOP >> + : >> +} >> + >> +do_deploy () { >> + install ${B}/src/boot/efi/systemd-boot*.efi ${DEPLOYDIR} >> +} >> +addtask deploy before do_build after do_compile >> diff --git >> a/meta/recipes-core/systemd/systemd/0001-Also-check-i586-for-ia32.patch >> b/meta/recipes-core/systemd/systemd/0001-Also-check-i586-for-ia32.patch >> new file mode 100644 >> index 0000000..892b25e >> --- /dev/null >> +++ b/meta/recipes-core/systemd/systemd/0001-Also-check-i586-for >> -ia32.patch >> @@ -0,0 +1,28 @@ >> +From 4616e6f228d2678420ee7d5bb1c8a0c8ebb27be8 Mon Sep 17 00:00:00 2001 >> +From: Chen Qi <qi.c...@windriver.com> >> +Date: Tue, 27 Feb 2018 20:42:41 -0800 >> +Subject: [PATCH] Also check i586 for ia32 >> + >> +Upstream-Status: Pending >> + >> +Signed-off-by: Chen Qi <qi.c...@windriver.com> >> +--- >> + meson.build | 2 +- >> + 1 file changed, 1 insertion(+), 1 deletion(-) >> + >> +diff --git a/meson.build b/meson.build >> +index ddc061c12..abd1261d6 100644 >> +--- a/meson.build >> ++++ b/meson.build >> +@@ -1182,7 +1182,7 @@ conf.set10('SYSTEMD_SLOW_TESTS_DEFAULT', >> get_option('slow-tests')) >> + if get_option('efi') >> + efi_arch = host_machine.cpu_family() >> + >> +- if efi_arch == 'x86' >> ++ if efi_arch == 'x86' or efi_arch == 'i586' >> + EFI_MACHINE_TYPE_NAME = 'ia32' >> + gnu_efi_arch = 'ia32' >> + elif efi_arch == 'x86_64' >> +-- >> +2.13.0 >> + >> diff --git a/meta/recipes-core/systemd/systemd/0001-Fix-to-run-efi_cc- >> and-efi_ld-correctly-when-cross-co.patch b/meta/recipes-core/systemd/sy >> stemd/0001-Fix-to-run-efi_cc-and-efi_ld-correctly-when-cross-co.patch >> new file mode 100644 >> index 0000000..e2e19ba >> --- /dev/null >> +++ b/meta/recipes-core/systemd/systemd/0001-Fix-to-run-efi_cc- >> and-efi_ld-correctly-when-cross-co.patch >> @@ -0,0 +1,62 @@ >> +From 527413ec243564a89ffaad6368d446de44415970 Mon Sep 17 00:00:00 2001 >> +From: Chen Qi <qi.c...@windriver.com> >> +Date: Tue, 27 Feb 2018 21:42:23 -0800 >> +Subject: [PATCH] Fix to run efi_cc and efi_ld correctly when >> cross-compiling >> + >> +When cross-compiling, efi_cc and efi_ld may take the form of >> +'xxx-gcc --sysroot=xxx', and this would cause run_command and >> +the alike fail. >> + >> +Fix to split them to make commands run correctly. >> + >> +Upstream-Status: Pending >> + >> +Signed-off-by: Chen Qi <qi.c...@windriver.com> >> +--- >> + src/boot/efi/meson.build | 16 +++++++++++++--- >> + 1 file changed, 13 insertions(+), 3 deletions(-) >> + >> +diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build >> +index 992a3ba4c..9f9ec4911 100644 >> +--- a/src/boot/efi/meson.build >> ++++ b/src/boot/efi/meson.build >> +@@ -157,7 +157,7 @@ if have_gnu_efi >> + o_file = custom_target(file + '.o', >> + input : file, >> + output : file + '.o', >> +- command : [efi_cc, '-c', '@INPUT@', >> '-o', '@OUTPUT@'] >> ++ command : efi_cc.split() + >> ['-c', '@INPUT@', '-o', '@OUTPUT@'] >> + + compile_args, >> + depend_files : efi_headers) >> + if (common_sources + systemd_boot_sources).contains >> (file) >> +@@ -168,7 +168,17 @@ if have_gnu_efi >> + endif >> + endforeach >> + >> +- libgcc_file_name = run_command(efi_cc, >> '-print-libgcc-file-name').stdout().strip() >> ++ find_libgcc_cmd_all = efi_cc + ' -print-libgcc-file-name' >> ++ find_libgcc_cmd = find_libgcc_cmd_all.split()[0] >> ++ find_libgcc_args = [] >> ++ cmd_args_all = find_libgcc_cmd_all.split() >> ++ foreach arg : cmd_args_all >> ++ if arg != find_libgcc_cmd >> ++ find_libgcc_args += arg >> ++ endif >> ++ endforeach >> ++ >> ++ libgcc_file_name = run_command(find_libgcc_cmd, >> find_libgcc_args).stdout().strip() >> + systemd_boot_efi_name = 'systemd-boot@0@.efi'.format(E >> FI_MACHINE_TYPE_NAME) >> + stub_efi_name = 'linux@0...@.efi.stub'.format(EFI >> _MACHINE_TYPE_NAME) >> + no_undefined_symbols = find_program('no-undefined-symbols.sh') >> +@@ -179,7 +189,7 @@ if have_gnu_efi >> + tuple[0], >> + input : tuple[2], >> + output : tuple[0], >> +- command : [efi_ld, '-o', '@OUTPUT@'] + >> ++ command : efi_ld.split() + ['-o', '@OUTPUT@'] + >> + efi_ldflags + tuple[2] + >> + ['-lefi', '-lgnuefi', >> libgcc_file_name]) >> + >> +-- >> +2.13.0 >> + >> -- >> 1.9.1 >> >> -- >> _______________________________________________ >> Openembedded-core mailing list >> Openembedded-core@lists.openembedded.org >> http://lists.openembedded.org/mailman/listinfo/openembedded-core >> > >
-- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core