Hi guys,

I am a newbie of seL4 and I am trying to get some understanding of it.
So, my first question is about the build system of seL4:

1. Why cmake has been taken to build it? I think there are at least two
   shortcomings about current build system based on CMakeLists.txt:

   - Some build options were implied in the CMakeLists.txt. It's not
     easy to get a complete and comprehensive understanding of all the
     options. And some options depends on other options. Such as,
     ./init-build.sh -DPLATFORM=odroidc2 -DAARCH64=1
     A new guys couldn't get a support list of PLATFORM option, and
     know AARCH64 is only for ARMv8 SoC easily.

   - There are too much branches of platform or SoC Architectures. Such
     as:
     if(KernelArchARM)
         include_directories("include/arch/arm/armv/${KernelArmArmV}/")
         
include_directories("include/arch/arm/armv/${KernelArmArmV}/${KernelWordSize}")
     endif()
     if(KernelArmMach STREQUAL "exynos")
         include_directories("include/plat/exynos_common/")
     endif()
     if(KernelArchRiscV)
         
include_directories("include/arch/${KernelArch}/arch/${KernelWordSize}")
         
include_directories("include/plat/${KernelPlatform}/plat/${KernelWordSize}")
     endif()

    Linux Build System places the special build options and source files
    into the directory related with each architectures, and will
    generated a configure file (.config) during building. It's very good
    in my opinion.

    In Android Build System, a given project building inherits a common
    build options set, and update these parts only related the given
    project.  It's very good for integration.

    And I want to know if there is a plan to update the build system or
    accept patches from volunteer?

2. I notice that, all kernel source files have been concatenated into a
   kernel_all.c, and compile the kernel_all.c. Is there some special
   reason for this step? It's a slight strange for me?

Anyway, I am a new guy. I just want to understand it and if I could
provide something to change it. Any comments are appreciated.

Thanks,
Jerry
_______________________________________________
Devel mailing list -- devel@sel4.systems
To unsubscribe send an email to devel-leave@sel4.systems

Reply via email to