genode/base/lib/mk
Stefan Kalkowski 42b7c01685 Unify policy name for Native_capability_tpl.
This commit unifies the policy name for the template argument for
Native_capability_tpl to Cap_dst_policy, like suggested by Norman in the
discussion resulting from issue #145. Moreover, it takes the memcpy
operation for copying a Native_capability out of the template, which is
included by a significant bunch of files, and separates it in a library,
analog to the suggestion in issue #145.
2012-03-10 15:52:13 +01:00
..
host Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
README Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
allocator_avl.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
avl_tree.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
cap_copy.mk Unify policy name for Native_capability_tpl. 2012-03-10 15:52:13 +01:00
console.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
cxx.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
elf.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
env.mk Facility for reinitializing Platform_env 2012-02-22 15:56:45 +01:00
heap.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
log_console.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
platform.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
process.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
raw_server.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
raw_signal.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
server.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
signal.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
slab.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
stdcxx.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
syscall.mk Follow-up for spin-lock unification, ref #123 2012-03-01 10:57:05 +01:00
thread.mk Imported Genode release 11.11 2011-12-22 16:19:25 +01:00

README

This directory contains library description files.  Each '<libname>.mk' file
holds the instruction for building the library '<libname>'. These makefiles are
never used directly but they are called from the build system when required.
When called, the build system passes the following variables:

:'BASE_DIR': This is the base directory of the source tree.

Source codes are specified by setting the 'SRC_CC' and 'SRC_C' variables.
The source code locations must be specified via 'vpath'.
A library can include other libraries by setting the 'LIBS'
variable.

Each '<libname>.mk' file must include the 'lib.mk' role file:

! include $(BASE_DIR)/mk/lib.mk

Libraries implementing one and the same library interface may have specific
implementations for different platforms. Such platform-specific '<libname>.mk'
files should be placed into corresponding subdirectories. For example, the
'linux'-specific implementation of the 'server' library resides in the 'linux/'
subdirectory. The build system automatically searches the right '<libname>.mk'
file by evaluating the 'SPECS' configuration variable. If 'SPECS' is set to
'host linux', the build system will look into the directories './', './host',
and './linux'.