[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCH v3 0/5] build: smarter dependencies



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.

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

Changes since v2:
1) Kill commit with the renaming tool - it has done it's work not
   needed anymore.
2) Rebase to the current staging branch
3) Update doccumentation

Patches 1-3 are just rebase - that is why I kept the 'Reviewed-by'.

Patch 4 is regenerated using the tool, which is not included in the
patchset anymore

Patch 5 is a new patch - I figured out that doccumentation actually
need an update

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: add prefix CONFIG_ to every kconfig symbol
  doc: add CONFIG_ to example kconfig symbols

 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 ++--
 doc/guides/developers-external-lib.rst |   2 +-
 doc/guides/developers-internal-lib.rst |   2 +-
 doc/guides/developers-platform.rst     |   2 +-
 include/uk/plat/memory.h               |   2 +-
 lib/Makefile.uk                        |  20 +-
 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                      |  30 +-
 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                    |  32 +-
 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 +-
 lib/uktimeconv/Makefile.uk             |   6 +-
 plat/Makefile.uk                       |   2 +-
 plat/kvm/Linker.uk                     |  16 +-
 plat/kvm/Makefile.uk                   |  30 +-
 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             |   9 +-
 support/kconfig/fixdep.c               | 409 +++++++++++++++++++++++++
 56 files changed, 785 insertions(+), 353 deletions(-)
 create mode 100644 support/kconfig/fixdep.c

-- 
2.17.0


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.