Bug #273

Parallel build fails with `build/util/cbfstool/cbfstool: option requires an argument -- 'P'`

Added by Paul Menzel 2 months ago. Updated 2 months ago.

Status:NewStart date:07/18/2020
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:build system
Target version:-

Description

Using Debian Sid/unstable with GNU Make 4.3, building coreboot in parallel, for example commit 24ee0b5991 (Revert "mb/google/zork: Increase RO section to 5MB"), sometimes fails with the error below.

$ LANG=C make -j4 V=1
[…]
    LINK       cbfs/fallback/postcar.debug
x86_64-linux-gnu-ld.bfd -b elf32-i386 -melf_i386 --gc-sections -nostdlib -nostartfiles -static --emit-relocs  -Map build/cbfs/fallback/postcar.map -o build/cbfs/fallback/postcar.debug -Lbuild --wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3 --whole-archive --start-group build/postcar/mainboard/lenovo/t60/static.o build/postcar/arch/x86/acpi_s3.o build/postcar/arch/x86/boot.o build/postcar/arch/x86/cf9_reset.o build/postcar/arch/x86/cpu_common.o build/postcar/arch/x86/exit_car.o build/postcar/arch/x86/gdt_init.o build/postcar/arch/x86/memcpy.o build/postcar/arch/x86/memmove.o build/postcar/arch/x86/memset.o build/postcar/arch/x86/mmap_boot.o build/postcar/arch/x86/post.o build/postcar/arch/x86/postcar.o build/postcar/arch/x86/timestamp.o build/postcar/commonlib/bsd/lz4_wrapper.o build/postcar/commonlib/cbfs.o build/postcar/commonlib/iobuf.o build/postcar/commonlib/mem_pool.o build/postcar/commonlib/region.o build/postcar/console/console.o build/postcar/console/die.o build/postcar/console/init.o build/postcar/console/post.o build/postcar/console/printk.o build/postcar/console/vsprintf.o build/postcar/console/vtxprintf.o build/postcar/cpu/intel/car/p4-netburst/exit_car.o build/postcar/cpu/intel/common/fsb.o build/postcar/cpu/x86/lapic/boot_cpu.o build/postcar/cpu/x86/mtrr/debug.o build/postcar/cpu/x86/pae/pgtbl.o build/postcar/cpu/x86/smm/tseg_region.o build/postcar/cpu/x86/tsc/delay_tsc.o build/postcar/device/device_const.o build/postcar/device/pci_early.o build/postcar/device/pci_ops.o build/postcar/drivers/pc80/pc/i8254.o build/postcar/drivers/pc80/rtc/mc146818rtc.o build/postcar/drivers/pc80/rtc/mc146818rtc_boot.o build/postcar/drivers/spi/adesto.o build/postcar/drivers/spi/amic.o build/postcar/drivers/spi/atmel.o build/postcar/drivers/spi/bitbang.o build/postcar/drivers/spi/eon.o build/postcar/drivers/spi/gigadevice.o build/postcar/drivers/spi/macronix.o build/postcar/drivers/spi/spansion.o build/postcar/drivers/spi/spi-generic.o build/postcar/drivers/spi/spi_flash.o build/postcar/drivers/spi/sst.o build/postcar/drivers/spi/stmicro.o build/postcar/drivers/spi/winbond.o build/postcar/drivers/uart/uart8250io.o build/postcar/drivers/uart/util.o build/postcar/ec/lenovo/h8/sense.o build/postcar/lib/boot_device.o build/postcar/lib/bootmode.o build/postcar/lib/cbfs.o build/postcar/lib/cbmem_common.o build/postcar/lib/cbmem_console.o build/postcar/lib/crc_byte.o build/postcar/lib/delay.o build/postcar/lib/ext_stage_cache.o build/postcar/lib/fmap.o build/postcar/lib/gcc.o build/postcar/lib/halt.o build/postcar/lib/hexdump.o build/postcar/lib/imd.o build/postcar/lib/imd_cbmem.o build/postcar/lib/libgcc.o build/postcar/lib/lzma.o build/postcar/lib/lzmadecode.o build/postcar/lib/memchr.o build/postcar/lib/memcmp.o build/postcar/lib/prog_loaders.o build/postcar/lib/prog_ops.o build/postcar/lib/reset.o build/postcar/lib/rmodule.o build/postcar/lib/romstage_handoff.o build/postcar/lib/string.o build/postcar/lib/timestamp.o build/postcar/lib/version.o build/postcar/northbridge/intel/i945/memmap.o build/postcar/security/memory/memory.o build/postcar/southbridge/intel/common/pmbase.o build/postcar/southbridge/intel/common/reset.o build/postcar/southbridge/intel/common/rtc.o build/postcar/southbridge/intel/common/spi.o --no-whole-archive /usr/lib/gcc/x86_64-linux-gnu/10/32/libgcc.a --end-group -T build/postcar/arch/x86/memlayout.ld
x86_64-linux-gnu-gcc-nm -n build/cbfs/fallback/romstage.elf.tmp | sort > build/cbfs/fallback/romstage.map
x86_64-linux-gnu-objcopy --strip-debug build/cbfs/fallback/romstage.elf.tmp
x86_64-linux-gnu-objcopy --add-gnu-debuglink=build/cbfs/fallback/romstage.debug build/cbfs/fallback/romstage.elf.tmp
mv build/cbfs/fallback/romstage.elf.tmp build/cbfs/fallback/romstage.elf
build/util/cbfstool/rmodtool -i build/cbfs/fallback/postcar.debug -o build/cbfs/fallback/postcar.debug.rmod
cp build/cbfs/fallback/postcar.debug.rmod build/cbfs/fallback/postcar.elf
    CC         cbfs/fallback/ramstage.debug
x86_64-linux-gnu-ld.bfd -b elf32-i386 -melf_i386  --gc-sections -nostdlib -nostartfiles -static --emit-relocs  -o build/cbfs/fallback/ramstage.debug -Lbuild build/generated/ramstage.o -T build/ramstage/arch/x86/memlayout.ld
build/util/cbfstool/rmodtool -i build/cbfs/fallback/ramstage.debug -o build/cbfs/fallback/ramstage.debug.rmod
cp build/cbfs/fallback/ramstage.debug.rmod build/cbfs/fallback/ramstage.elf
build/util/cbfstool/cbfstool build/coreboot.pre.tmp create -M build/fmap.fmap -r COREBOOT
Created CBFS (capacity = 2096600 bytes)
build/util/cbfstool/cbfstool build/coreboot.pre.tmp add \
    -f build/cbfs/fallback/bootblock.bin \
    -n bootblock \
    -t bootblock \
     \
    -b -32768  \

build/util/cbfstool/cbfstool build/coreboot.pre.tmp add-master-header 
printf "    CBFS       fallback/romstage\n"
    CBFS       fallback/romstage
build/util/cbfstool/cbfstool build/coreboot.pre.tmp add-stage -f build/cbfs/fallback/romstage.elf -n fallback/romstage  -c none  -r COREBOOT -a 64 -S ".car.data" --xip -P 
build/util/cbfstool/cbfstool: option requires an argument -- 'P'
cbfstool: Management utility for CBFS formatted ROM images

USAGE:
 build/util/cbfstool/cbfstool [-h]
 build/util/cbfstool/cbfstool FILE COMMAND [-v] [PARAMETERS]...

OPTIONs:
[…]
make: *** [Makefile.inc:1033: build/coreboot.pre] Error 1
rm build/util/cbfstool/fmd_scanner.c build/util/cbfstool/fmd_parser.c

Running make again afterward, completes the build.

History

#1 Updated by Paul Menzel 2 months ago

I am building the Lenovo T60, and the configuration contains:

$ grep XIP_ROM_SIZE .config
# CONFIG_NO_FIXED_XIP_ROM_SIZE is not set
CONFIG_XIP_ROM_SIZE=0x10000

Also available in: Atom PDF