Implementation - Repositories and Branches
This is the specification that has been worked out according to the design on repositories and branches.
Textual Specification
The five repositories form the base structure which allows an independent management for the different products. Each repository holds the content necessary for building the product. The content will be processed by a central buildserver.
Repository Name | Desired build output |
---|---|
linux-specs | Linux-Kernel images, DeviceTreeBlobs, module archives |
uboot-specs | U-Boot image blobs |
toolchain-specs | Toolchain archives |
rootfs-specs | RootFS content archives |
misc-specs | Miscellaneous files archives (needed on boot and root partitions) |
Visualization
This is a visualization of the relations between the different products and their corresponding repositories. It shall be used by Administrators and Users to understand the structure. The Administrator can learn how the repositories should be setup, and the User should be able to understand the importance of the different repositories and branches for the embEDUx project.
Footnotes
-
Source branch
Each version of the Linux kernel needs to have exactly one version_generic branch in the linux repository. Also for each version of U-Boot, exactly one version_generic branch is needed in the uboot repository.
-
Platform branch
For each platform there needs to be one version_platform branch in the linux, uboot and misc repository.
-
RootFS repository
For each RootFS -> architekture dependency (which can be directly inherited from the platform) there needs to be one branch.
-
Toolchain repository
For each architecture, there needs to be a toolchain branch in the toolchains repository. These toolchains are statically linked, so that everyone can use them on their own development system. Theoretically also a canadian toolchain can be possible.