[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT PATCHv2 00/13] Prepare build scripts to support ARM64
Currently, Unikraft only supports arm32 and x86_64. The folder layout is not very convenient to add arm64 or x86_32 support to it. In this case we will modify the folder layout to support common code for the architectures of the same CPU families. We also would modify the build scripts which corresponding to this change at the same time. --- v1 -> v2: 1. Usecheckpatch to check the code-style. 2. Remove a blank EOF warning of patch#3. 3. Select closer subject prefix for each patch. 4. Fix typos in serval patches' commit messages. 5. Update serval patches descriptions. 6. Address Florian's comment in patch#1. 7. Simplify the patch#2. Only introduces UK_FAMILY. 8. Move reorganization work from patch#2 to patch#3. 9. Add a common GCC version test function in Makefile.rules 10. Add a common GCC version warning function in Makefile.rules 11. Add a function to check condition and set GCC flags 12. Place individual arch's Config/Makefile/Compiler files to its subfolder. 13. Rename MARCH_* of x86_64 to MARCH_X86_64_* to avoid conflict 14. Rename MARCH_* of arm32 to MARCH_ARM32_* to avoid conflict 15. Use common function to check and set processor optimization GCC flags for arm32/arm64 16. Add more arm32 CPU models to processor optimization list 17. Use generic-armv7-a as arm32's default processor Wei Chen (13): build: Adjust sed script to avoid treating arm64 as arm build: Introduce a new variable UK_FAMILY arch: Reorganize arch folder to reflect the CPU family schema include: Reorganize base include folder to reflect CPU family schema build: Add a makefile function to check GCC version build: Add a makefile function to warn user when GCC is too old build: Add a makefile function to check and set flags for valid gcc arch: Add arm64 architecture config to menuconfig arch/x86: Rename MARCH_* of x86_64 to MARCH_X86_64_* arch/arm: Rename MARCH_* of arm32 to MARCH_ARM32_* arch/arm64: Add processor optimization GCC flags for arm64 arch/arm: Check gcc version and set processor flags for arm32 arch/arm: Add more CPU models to processor optimization list Config.uk | 2 +- Makefile | 34 ++- arch/Arch.uk | 2 + arch/Config.uk | 10 +- arch/arm/Compiler.uk | 7 +- arch/arm/Config.uk | 18 -- arch/arm/Makefile.uk | 23 +- arch/arm/arm/Compiler.uk | 6 + arch/arm/arm/Config.uk | 71 ++++++ arch/arm/arm/Makefile.uk | 48 ++++ arch/arm/arm/divsi3.S | 403 +++++++++++++++++++++++++++++++++ arch/arm/arm/ldivmod.S | 68 ++++++ arch/arm/arm/ldivmod_helper.c | 67 ++++++ arch/arm/arm/qdivrem.c | 324 +++++++++++++++++++++++++++ arch/arm/arm64/Compiler.uk | 6 + arch/arm/arm64/Config.uk | 60 +++++ arch/arm/arm64/Makefile.uk | 27 +++ arch/arm/divsi3.S | 404 ---------------------------------- arch/arm/ldivmod.S | 68 ------ arch/arm/ldivmod_helper.c | 67 ------ arch/arm/qdivrem.c | 324 --------------------------- arch/x86/Compiler.uk | 4 + arch/x86/Makefile.uk | 4 + arch/x86/x86_64/Compiler.uk | 6 + arch/x86/x86_64/Config.uk | 89 ++++++++ arch/x86/x86_64/Makefile.uk | 37 ++++ arch/x86_64/Compiler.uk | 6 - arch/x86_64/Config.uk | 89 -------- arch/x86_64/Makefile.uk | 37 ---- include/uk/arch/arm/arm/atomic.h | 64 ++++++ include/uk/arch/arm/arm/intsizes.h | 45 ++++ include/uk/arch/arm/arm/lcpu.h | 59 +++++ include/uk/arch/arm/arm/limits.h | 45 ++++ include/uk/arch/arm/arm/types.h | 35 +++ include/uk/arch/arm/atomic.h | 64 ------ include/uk/arch/arm/intsizes.h | 45 ---- include/uk/arch/arm/lcpu.h | 59 ----- include/uk/arch/arm/limits.h | 45 ---- include/uk/arch/arm/types.h | 35 --- include/uk/arch/atomic.h | 8 +- include/uk/arch/lcpu.h | 8 +- include/uk/arch/limits.h | 16 +- include/uk/arch/types.h | 16 +- include/uk/arch/x86/x86_64/atomic.h | 45 ++++ include/uk/arch/x86/x86_64/intsizes.h | 45 ++++ include/uk/arch/x86/x86_64/lcpu.h | 73 ++++++ include/uk/arch/x86/x86_64/limits.h | 46 ++++ include/uk/arch/x86/x86_64/types.h | 38 ++++ include/uk/arch/x86_64/atomic.h | 45 ---- include/uk/arch/x86_64/intsizes.h | 45 ---- include/uk/arch/x86_64/lcpu.h | 73 ------ include/uk/arch/x86_64/limits.h | 46 ---- include/uk/arch/x86_64/types.h | 38 ---- support/build/Makefile.rules | 21 ++ 54 files changed, 1800 insertions(+), 1570 deletions(-) delete mode 100644 arch/arm/Config.uk create mode 100644 arch/arm/arm/Compiler.uk create mode 100644 arch/arm/arm/Config.uk create mode 100644 arch/arm/arm/Makefile.uk create mode 100644 arch/arm/arm/divsi3.S create mode 100644 arch/arm/arm/ldivmod.S create mode 100644 arch/arm/arm/ldivmod_helper.c create mode 100644 arch/arm/arm/qdivrem.c create mode 100644 arch/arm/arm64/Compiler.uk create mode 100644 arch/arm/arm64/Config.uk create mode 100644 arch/arm/arm64/Makefile.uk delete mode 100644 arch/arm/divsi3.S delete mode 100644 arch/arm/ldivmod.S delete mode 100644 arch/arm/ldivmod_helper.c delete mode 100644 arch/arm/qdivrem.c create mode 100644 arch/x86/Compiler.uk create mode 100644 arch/x86/Makefile.uk create mode 100644 arch/x86/x86_64/Compiler.uk create mode 100644 arch/x86/x86_64/Config.uk create mode 100644 arch/x86/x86_64/Makefile.uk delete mode 100644 arch/x86_64/Compiler.uk delete mode 100644 arch/x86_64/Config.uk delete mode 100644 arch/x86_64/Makefile.uk create mode 100644 include/uk/arch/arm/arm/atomic.h create mode 100644 include/uk/arch/arm/arm/intsizes.h create mode 100644 include/uk/arch/arm/arm/lcpu.h create mode 100644 include/uk/arch/arm/arm/limits.h create mode 100644 include/uk/arch/arm/arm/types.h delete mode 100644 include/uk/arch/arm/atomic.h delete mode 100644 include/uk/arch/arm/intsizes.h delete mode 100644 include/uk/arch/arm/lcpu.h delete mode 100644 include/uk/arch/arm/limits.h delete mode 100644 include/uk/arch/arm/types.h create mode 100644 include/uk/arch/x86/x86_64/atomic.h create mode 100644 include/uk/arch/x86/x86_64/intsizes.h create mode 100644 include/uk/arch/x86/x86_64/lcpu.h create mode 100644 include/uk/arch/x86/x86_64/limits.h create mode 100644 include/uk/arch/x86/x86_64/types.h delete mode 100644 include/uk/arch/x86_64/atomic.h delete mode 100644 include/uk/arch/x86_64/intsizes.h delete mode 100644 include/uk/arch/x86_64/lcpu.h delete mode 100644 include/uk/arch/x86_64/limits.h delete mode 100644 include/uk/arch/x86_64/types.h -- 2.7.4 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |