[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT PATCH v2 0/5] build: smarter dependencies
This series depends on staging-sched branch Currently, any modification to the configuration forces a full Unikraft rebuild. This patch series brings a solution from Linux. In fact, Unikraft has a part of this solution already, because its build system is based on Kbuild. I just implemented missing parts. The "introduce tool for adding CONFIG_ prefix for kconfig symbols" is optional. It does only one job - adds prefixes to every kconfig symbol in the project and subprojects (other libs and apps). And it is not needed afterward. Either we do not take it at all, or we revert it later when all related repositories have been converted too. Changes since v1: 1) when grepping for symbols, consider comma as separator too, so expressions like foo(KCONFIG_SYMBOL, blah) affected as well 2) do not touch UK_CODENAME and UK_FULLVERSION, since they are not really belong to configuration 3) rebased to the current Unikraft tree Yuri Volchkov (5): build: save kconfig dependency files in the separate dir build: import fixdep.c from linux kernel build: Integrate fixdep in Unikraft build system build: introduce tool for adding CONFIG_ prefix for kconfig symbols build: add prefix CONFIG_ to every kconfig symbol Makefile | 126 +++++----- Makefile.uk | 46 ++-- arch/Arch.uk | 8 +- arch/arm/Compiler.uk | 6 +- arch/arm/Makefile.uk | 16 +- arch/arm/ldivmod_helper.c | 2 +- arch/x86_64/Compiler.uk | 6 +- arch/x86_64/Makefile.uk | 60 ++--- include/uk/plat/memory.h | 2 +- lib/Makefile.uk | 18 +- lib/fdt/Makefile.uk | 6 +- lib/nolibc/Makefile.uk | 12 +- lib/nolibc/include/stdlib.h | 4 +- lib/ukalloc/Makefile.uk | 6 +- lib/ukalloc/alloc.c | 2 +- lib/ukalloc/include/uk/alloc.h | 18 +- lib/ukallocbbuddy/Makefile.uk | 6 +- lib/ukallocbbuddy/bbuddy.c | 4 +- lib/ukargparse/Makefile.uk | 6 +- lib/ukboot/Makefile.uk | 6 +- lib/ukboot/boot.c | 28 +-- lib/ukdebug/Makefile.uk | 6 +- lib/ukdebug/hexdump.c | 14 +- lib/ukdebug/include/uk/assert.h | 2 +- lib/ukdebug/include/uk/hexdump.h | 4 +- lib/ukdebug/include/uk/print.h | 28 +-- lib/ukdebug/print.c | 34 +-- lib/uksched/Makefile.uk | 6 +- lib/uksched/include/uk/thread.h | 4 +- lib/uksched/sched.c | 4 +- lib/uksched/thread.c | 2 +- lib/ukschedcoop/Makefile.uk | 6 +- plat/Makefile.uk | 2 +- plat/kvm/Linker.uk | 16 +- plat/kvm/Makefile.uk | 22 +- plat/kvm/memory.c | 16 +- plat/kvm/x86/setup.c | 2 +- plat/linuxu/Linker.uk | 10 +- plat/linuxu/Makefile.uk | 6 +- plat/linuxu/memory.c | 4 +- plat/linuxu/setup.c | 2 +- plat/xen/Linker.uk | 34 +-- plat/xen/Makefile.uk | 24 +- plat/xen/arm/setup.c | 8 +- plat/xen/console.c | 4 +- plat/xen/include/xen-x86/mm.h | 2 +- plat/xen/memory.c | 12 +- plat/xen/x86/setup.c | 4 +- support/build/Makefile.rules | 30 ++- support/kconfig/Makefile | 2 + support/kconfig/confdata.c | 63 ++++- support/kconfig/fixdep.c | 409 +++++++++++++++++++++++++++++++ support/scripts/rename_config.py | 117 +++++++++ 53 files changed, 944 insertions(+), 343 deletions(-) create mode 100644 support/kconfig/fixdep.c create mode 100755 support/scripts/rename_config.py -- 2.17.0 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |