genode/repos/base/mk
Norman Feske 253097314c Add unified build directories to create_builddir
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
2017-01-13 13:05:44 +01:00
..
spec Add unified build directories to create_builddir 2017-01-13 13:05:44 +01:00
base-libs.mk Genode application binary interface (ABI) 2016-12-23 16:50:28 +01:00
dep_lib.mk Genode application binary interface (ABI) 2016-12-23 16:50:28 +01:00
dep_prg.mk toolchain: report missing ports at once 2016-03-07 12:34:43 +01:00
generic.mk Added rust support 2016-03-17 17:02:04 +01:00
global.mk mk: always use linker scripts from base 2016-07-15 11:38:26 +02:00
lib.mk Genode application binary interface (ABI) 2016-12-23 16:50:28 +01:00
prg.mk Genode application binary interface (ABI) 2016-12-23 16:50:28 +01:00
README Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00
util.inc mk: shortcircuit select_from_ports for pkg tool 2016-07-15 11:38:26 +02:00

This directory contains the build system. In consists mainly of makefile
templates for different directory roles.

:'global.mk': This file contains global variables, for example the
  definitions of the tools to use.

:'generic.mk': Generic rules for creating file types from others.

:'prg.mk': This file represents the target binary role of a directory.
  It must be included by all makefiles that build programs.

:'lib.mk': This file represents a library role. It is never used from
  within the 'src/' directory but only from the <libname>.mk files
  in 'lib/mk/'.