diff --git a/repos/base-codezero/src/core/target.inc b/repos/base-codezero/src/core/target.inc index bc74b52d1..c2313dd04 100644 --- a/repos/base-codezero/src/core/target.inc +++ b/repos/base-codezero/src/core/target.inc @@ -7,6 +7,7 @@ SRC_CC += \ ram_session_component.cc \ ram_session_support.cc \ rom_session_component.cc \ + cap_session_component.cc \ cpu_session_component.cc \ cpu_session_support.cc \ pd_session_component.cc \ @@ -41,6 +42,7 @@ include $(GEN_CORE_DIR)/version.inc vpath main.cc $(GEN_CORE_DIR) vpath ram_session_component.cc $(GEN_CORE_DIR) vpath rom_session_component.cc $(GEN_CORE_DIR) +vpath cap_session_component.cc $(GEN_CORE_DIR) vpath cpu_session_component.cc $(GEN_CORE_DIR) vpath pd_session_component.cc $(GEN_CORE_DIR) vpath rm_session_component.cc $(GEN_CORE_DIR) diff --git a/repos/base-fiasco/src/core/target.inc b/repos/base-fiasco/src/core/target.inc index e3b444148..de3d42a16 100644 --- a/repos/base-fiasco/src/core/target.inc +++ b/repos/base-fiasco/src/core/target.inc @@ -7,6 +7,7 @@ SRC_CC += main.cc \ ram_session_component.cc \ ram_session_support.cc \ rom_session_component.cc \ + cap_session_component.cc \ cpu_session_component.cc \ cpu_session_support.cc \ pd_session_component.cc \ @@ -42,6 +43,7 @@ vpath main.cc $(GEN_CORE_DIR) vpath multiboot_info.cc $(GEN_CORE_DIR) vpath ram_session_component.cc $(GEN_CORE_DIR) vpath rom_session_component.cc $(GEN_CORE_DIR) +vpath cap_session_component.cc $(GEN_CORE_DIR) vpath cpu_session_component.cc $(GEN_CORE_DIR) vpath pd_session_component.cc $(GEN_CORE_DIR) vpath rm_session_component.cc $(GEN_CORE_DIR) diff --git a/repos/base-foc/src/core/include/cap_session_component.h b/repos/base-foc/src/core/include/cap_session_component.h index 914d9a1d8..70098ae03 100644 --- a/repos/base-foc/src/core/include/cap_session_component.h +++ b/repos/base-foc/src/core/include/cap_session_component.h @@ -22,10 +22,6 @@ namespace Genode { class Cap_session_component : public Rpc_object { - private: - - static long _unique_id_cnt; /* TODO: remove this from generic core code */ - public: Cap_session_component(Allocator *md_alloc, const char *args) {} diff --git a/repos/base-hw/lib/mk/core.inc b/repos/base-hw/lib/mk/core.inc index f86b7e17c..669b3e65c 100644 --- a/repos/base-hw/lib/mk/core.inc +++ b/repos/base-hw/lib/mk/core.inc @@ -19,6 +19,7 @@ INC_DIR += $(BASE_DIR)/src/platform # add C++ sources SRC_CC += console.cc +SRC_CC += cap_session_component.cc SRC_CC += cpu_session_component.cc SRC_CC += cpu_session_support.cc SRC_CC += core_rm_session.cc diff --git a/repos/base-linux/src/core/include/cap_session_component.h b/repos/base-linux/src/core/include/cap_session_component.h index 28ec535dc..03aa9498d 100644 --- a/repos/base-linux/src/core/include/cap_session_component.h +++ b/repos/base-linux/src/core/include/cap_session_component.h @@ -15,6 +15,7 @@ #define _CORE__INCLUDE__LINUX__CAP_SESSION_COMPONENT_H_ #include +#include #include #include diff --git a/repos/base-linux/src/core/target.mk b/repos/base-linux/src/core/target.mk index c1ff26894..05e5afb01 100644 --- a/repos/base-linux/src/core/target.mk +++ b/repos/base-linux/src/core/target.mk @@ -11,6 +11,7 @@ SRC_CC = main.cc \ ram_session_component.cc \ ram_session_support.cc \ rom_session_component.cc \ + cap_session_component.cc \ cpu_session_component.cc \ cpu_session_extension.cc \ cpu_session_support.cc \ @@ -49,6 +50,7 @@ include $(GEN_CORE_DIR)/version.inc vpath main.cc $(GEN_CORE_DIR) vpath ram_session_component.cc $(GEN_CORE_DIR) +vpath cap_session_component.cc $(GEN_CORE_DIR) vpath cpu_session_component.cc $(GEN_CORE_DIR) vpath platform_services.cc $(GEN_CORE_DIR) vpath signal_session_component.cc $(GEN_CORE_DIR) diff --git a/repos/base-nova/src/core/include/cap_session_component.h b/repos/base-nova/src/core/include/cap_session_component.h index 79602d22f..bbe70693e 100644 --- a/repos/base-nova/src/core/include/cap_session_component.h +++ b/repos/base-nova/src/core/include/cap_session_component.h @@ -27,8 +27,6 @@ namespace Genode { { private: - static long _unique_id_cnt; - struct Cap_object : List::Element { Genode::addr_t _cap_sel; diff --git a/repos/base-okl4/src/core/target.inc b/repos/base-okl4/src/core/target.inc index d7fbcf5ed..6585aa38e 100644 --- a/repos/base-okl4/src/core/target.inc +++ b/repos/base-okl4/src/core/target.inc @@ -8,6 +8,7 @@ SRC_CC += main.cc \ ram_session_component.cc \ ram_session_support.cc \ rom_session_component.cc \ + cap_session_component.cc \ cpu_session_component.cc \ cpu_session_support.cc \ pd_session_component.cc \ @@ -44,6 +45,7 @@ include $(GEN_CORE_DIR)/version.inc vpath main.cc $(GEN_CORE_DIR) vpath ram_session_component.cc $(GEN_CORE_DIR) vpath rom_session_component.cc $(GEN_CORE_DIR) +vpath cap_session_component.cc $(GEN_CORE_DIR) vpath cpu_session_component.cc $(GEN_CORE_DIR) vpath pd_session_component.cc $(GEN_CORE_DIR) vpath rm_session_component.cc $(GEN_CORE_DIR) diff --git a/repos/base-pistachio/src/core/target.inc b/repos/base-pistachio/src/core/target.inc index e5fa0abd2..c4472e67a 100644 --- a/repos/base-pistachio/src/core/target.inc +++ b/repos/base-pistachio/src/core/target.inc @@ -9,6 +9,7 @@ SRC_CC = main.cc \ ram_session_component.cc \ ram_session_support.cc \ rom_session_component.cc \ + cap_session_component.cc \ cpu_session_component.cc \ cpu_session_platform.cc \ pd_session_component.cc \ @@ -41,6 +42,7 @@ include $(GEN_CORE_DIR)/version.inc vpath main.cc $(GEN_CORE_DIR) vpath ram_session_component.cc $(GEN_CORE_DIR) vpath rom_session_component.cc $(GEN_CORE_DIR) +vpath cap_session_component.cc $(GEN_CORE_DIR) vpath cpu_session_component.cc $(GEN_CORE_DIR) vpath pd_session_component.cc $(GEN_CORE_DIR) vpath rm_session_component.cc $(GEN_CORE_DIR) diff --git a/repos/base/src/core/cap_session_component.cc b/repos/base/src/core/cap_session_component.cc new file mode 100644 index 000000000..ce7a37e1a --- /dev/null +++ b/repos/base/src/core/cap_session_component.cc @@ -0,0 +1,17 @@ +/* + * \brief Core implementation of the Cap session interface + * \author Stefan Kalkowski + * \date 2015-03-10 + */ + +/* + * Copyright (C) 2015 Genode Labs GmbH + * + * This file is part of the Genode OS framework, which is distributed + * under the terms of the GNU General Public License version 2. + */ + +/* core includes */ +#include + +long Genode::Cap_session_component::_unique_id_cnt; diff --git a/repos/base/src/core/include/cap_session_component.h b/repos/base/src/core/include/cap_session_component.h index 5f68610ac..74c07d7bb 100644 --- a/repos/base/src/core/include/cap_session_component.h +++ b/repos/base/src/core/include/cap_session_component.h @@ -14,6 +14,7 @@ #ifndef _CORE__INCLUDE__CAP_SESSION_COMPONENT_H_ #define _CORE__INCLUDE__CAP_SESSION_COMPONENT_H_ +#include #include #include diff --git a/repos/base/src/core/main.cc b/repos/base/src/core/main.cc index c4ed6a8a0..cf300aca6 100644 --- a/repos/base/src/core/main.cc +++ b/repos/base/src/core/main.cc @@ -38,9 +38,6 @@ using namespace Genode; -/* support for cap session component */ -long Cap_session_component::_unique_id_cnt; - /* pool of provided core services */ static Service_registry local_services;