mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-29 15:44:02 +00:00
253097314c
This patch makes the benefit of the recently introduced unified Genode ABI available to developers by enabling the use of multiple kernels from within a single build directory. The create_builddir tool has gained a new set of kernel-agnostic platform arguments such as x86_32, or panda. Most build targets within directories are in principle compatible with all kernels that support the selected hardware platform. To execute a scenario via the run tool, one has to select the kernel to use by setting the 'KERNEL' argument in the build configuration (etc/build.conf). Alternatively, the 'KERNEL' can be specified as command-line argument of the Genode build system, e.g.: make run/log KERNEL=nova This allows us to easily switch from one kernel to another without rebuilding any Genode component except for the very few kernel-specific ones. The new version of the 'create_builddir' tool is still compatible with the old version. The old kernel-specific build directories can still be created. However, those variants will eventually be removed. Note that the commit removes the 'ports-foc' repository from the generated 'build.conf' files. As this is only meaningful for 'foc', I did not want to include it in the list of regular repositories (as visible in a 'x86_32' build directory). Hence, the repository must now be manually added in order to use L4Linux. Issue #2190
This directory contains tools for managing and using the source code of Genode. :'create_builddir' The 'create_builddir' tool provides a convenient way to create build directories for different platforms. Its usage information is printed when starting the tool without arguments. :'builddir/': This directory contains a Makefile template and configuration snippets used by the 'create_builddir' tool. :'tool_chain': This tool downloads, builds, and installs the tool chain needed to build the Genode OS Framework. For getting usage information, start the tool without arguments. :'create_iso': This simple tool helps to build bootable ISO images from your build of Genode. For getting usage information, start the tool without arguments. :'create_grub2': This tool prepares a partitioned disk image with GRUB2 as boot loader. :'grub2-head.img': This file is the head part of a partioned disk image including an installation of GRUB2 as boot loader. GRUB2 is available from http://www.gnu.org/software/grub/ and in major Linux distributions. Steps to reproduce the image creation can be found in 'create_grub2'. :'beautify': Beautify is a coding-style checking tool that analyzes source code for its adherence to Genode's coding style as described in 'doc/coding_style.txt'. Whenever possible, the tool tries to fix the issues and outputs a corrected file. Some corrections, however, require human interaction. In this case, the tool stops the analysis with an error. :'parse_cxx': This tool is a C++ parser used as front-end for Beautify. :'cxx_to_html': This tool converts a C++ source file to a HTML view to be used for the API documentation at the genode.org website. It relies on 'parse_cxx' to do the actual C++ parsing. :'fix_include_ifndef': This tool helps with assigning consistent include guards to header files. :'boot': This directory contains boot-loader files needed to create boot images. :'autopilot': Autopilot is a tool for the automatic execution of run scripts among multiple base platforms.