mirror of
https://github.com/genodelabs/genode.git
synced 2025-02-20 09:46:20 +00:00
ada-runtime: update to 1.1
This commit is contained in:
parent
0c20bb6ab9
commit
1bdd18a196
@ -106,7 +106,7 @@ $(SRC_ADA:.adb=.o): FORCE
|
||||
#
|
||||
ifneq ($(SRC_ADS)$(SRC_ADB),)
|
||||
|
||||
CUSTOM_BINDER_FLAGS ?= -n -we
|
||||
CUSTOM_BINDER_FLAGS ?= -n -we -D768k
|
||||
|
||||
OBJECTS += b~$(TARGET).o
|
||||
|
||||
|
@ -667,7 +667,6 @@ set default_test_pkgs {
|
||||
test-fs_rom_update_fs
|
||||
test-fs_rom_update_ram
|
||||
test-fs_tool
|
||||
test-gnatio
|
||||
test-init
|
||||
test-init_loop
|
||||
test-ldso
|
||||
|
@ -6,10 +6,11 @@ ADA_RUNTIME_LIB_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src/lib
|
||||
ADA_RUNTIME_COMMON_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src/common
|
||||
ADA_RUNTIME_PLATFORM_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/platform
|
||||
|
||||
INC_DIR += $(ADA_RUNTIME_DIR)
|
||||
INC_DIR += $(ADA_RUNTIME_LIB_DIR)
|
||||
INC_DIR += $(ADA_RUNTIME_COMMON_DIR)
|
||||
INC_DIR += $(ADA_RTS_SOURCE)
|
||||
INC_DIR += $(ADA_RUNTIME_DIR) \
|
||||
$(ADA_RUNTIME_LIB_DIR) \
|
||||
$(ADA_RUNTIME_COMMON_DIR) \
|
||||
$(ADA_RTS_SOURCE) \
|
||||
$(ADA_RUNTIME_PLATFORM_DIR)
|
||||
|
||||
# Disable inline concatenation as this requires additinal runtime support
|
||||
CC_ADA_OPT += -gnatd.c
|
||||
|
@ -9,11 +9,9 @@ SRC_ADS += system.ads \
|
||||
interfac.ads \
|
||||
i-cexten.ads \
|
||||
a-except.ads \
|
||||
gnat.ads \
|
||||
ada.ads \
|
||||
ada_exceptions.ads
|
||||
ada.ads
|
||||
|
||||
SRC_ADB += g-io.adb s-stalib.adb s-secsta.adb s-parame.adb i-c.adb s-arit64.adb s-stoele.adb
|
||||
SRC_ADB += s-stalib.adb s-secsta.adb s-parame.adb i-c.adb s-arit64.adb s-stoele.adb s-init.adb
|
||||
CUSTOM_ADA_FLAGS = --RTS=$(ADA_RTS) -c -gnatg -gnatp -gnatpg -gnatn2
|
||||
|
||||
# C runtime glue code
|
||||
@ -21,9 +19,15 @@ SRC_CC += genode.cc
|
||||
SRC_C += init.c
|
||||
|
||||
# Ada packages that implement runtime functionality
|
||||
SRC_ADB += ss_utils.adb string_utils.adb platform.adb s-init.adb
|
||||
SRC_ADS += componolit.ads \
|
||||
componolit-runtime.ads \
|
||||
componolit-runtime-exceptions.ads
|
||||
SRC_ADB += componolit-runtime-strings.adb \
|
||||
componolit-runtime-debug.adb \
|
||||
componolit-runtime-platform.adb \
|
||||
componolit-runtime-conversions.adb
|
||||
|
||||
vpath %.cc $(ADA_RUNTIME_PLATFORM_DIR)
|
||||
vpath %.cc $(ADA_RUNTIME_PLATFORM_DIR)/genode
|
||||
|
||||
vpath s-soflin.ads $(ADA_RUNTIME_DIR)
|
||||
vpath a-except.ads $(ADA_RUNTIME_DIR)
|
||||
@ -34,15 +38,16 @@ vpath s-stalib.adb $(ADA_RUNTIME_DIR)
|
||||
vpath s-parame.adb $(ADA_RUNTIME_DIR)
|
||||
vpath a-except.adb $(ADA_RUNTIME_DIR)
|
||||
vpath i-c.adb $(ADA_RUNTIME_DIR)
|
||||
vpath s-arit64.adb $(ADA_RUNTIME_DIR)
|
||||
vpath system.ads $(ADA_RUNTIME_DIR)
|
||||
vpath s-stoele.adb $(ADA_RUNTIME_DIR)
|
||||
vpath s-init.adb $(ADA_RUNTIME_DIR)
|
||||
|
||||
vpath componolit% $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath init.c $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath s-init.adb $(ADA_RUNTIME_COMMON_DIR)
|
||||
|
||||
vpath %.ads $(ADA_RTS_SOURCE)
|
||||
vpath %.adb $(ADA_RTS_SOURCE)
|
||||
|
||||
vpath platform.% $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath string_utils.% $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath ss_utils.% $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath ada_exceptions.ads $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath init.c $(ADA_RUNTIME_LIB_DIR)
|
||||
vpath s-init.adb $(ADA_RUNTIME_COMMON_DIR)
|
||||
|
||||
SHARED_LIB = yes
|
||||
|
@ -15,7 +15,7 @@ __gl_time_slice_val D 4
|
||||
__gl_unreserve_all_interrupts B 4
|
||||
__gl_wc_encoding D 1
|
||||
__gnat_binder_ss_count B 4
|
||||
__gnat_default_ss_pool B 4
|
||||
__gnat_default_ss_pool B 8
|
||||
__gnat_default_ss_size B 4
|
||||
__gnat_finalize T
|
||||
__gnat_finalize_library_objects D 8
|
||||
@ -76,29 +76,51 @@ ada_exceptions__exception_typeA R 76
|
||||
ada_exceptions__exception_typeN R 78
|
||||
ada_exceptions__exception_typeRP T
|
||||
ada_exceptions__exception_typeS R 820
|
||||
allocate_secondary_stack T
|
||||
componolit__runtime__debug_E D 2
|
||||
componolit__runtime__debug__log_debug T
|
||||
componolit__runtime__debug__log_debug_private T
|
||||
componolit__runtime__debug__log_error T
|
||||
componolit__runtime__debug__log_error_private T
|
||||
componolit__runtime__debug__log_warning T
|
||||
componolit__runtime__debug__log_warning_private T
|
||||
componolit__runtime__exceptions_E D 2
|
||||
componolit__runtime__exceptions__exception_typeA R 76
|
||||
componolit__runtime__exceptions__exception_typeN R 78
|
||||
componolit__runtime__exceptions__exception_typeRP T
|
||||
componolit__runtime__exceptions__exception_typeS R 820
|
||||
componolit__runtime__platform_E D 2
|
||||
componolit__runtime__platform__raise_ada_exception T
|
||||
componolit__runtime__secondary_stack_E D 2
|
||||
componolit__runtime__secondary_stack__TregistryBIP T
|
||||
componolit__runtime__secondary_stack___elabs T
|
||||
componolit__runtime__secondary_stack__allocate_stack T
|
||||
componolit__runtime__secondary_stack__c_alloc T
|
||||
componolit__runtime__secondary_stack__get_mark T
|
||||
componolit__runtime__secondary_stack__invalid_thread R 8
|
||||
componolit__runtime__secondary_stack__markIP T
|
||||
componolit__runtime__secondary_stack__null_registry B 3072
|
||||
componolit__runtime__secondary_stack__registry_entryIP T
|
||||
componolit__runtime__secondary_stack__s_allocate T
|
||||
componolit__runtime__secondary_stack__s_mark T
|
||||
componolit__runtime__secondary_stack__s_release T
|
||||
componolit__runtime__secondary_stack__secondary_stack_size R 8
|
||||
componolit__runtime__secondary_stack__set_mark T
|
||||
componolit__runtime__strings_E D 2
|
||||
componolit__runtime__strings__convert_to_ada T
|
||||
componolit__runtime__strings__get_char T
|
||||
componolit__runtime__strings__image T
|
||||
componolit__runtime__strings__incr T
|
||||
componolit__runtime__strings__length T
|
||||
componolit__runtime__strings__null_pointer R 8
|
||||
componolit__runtime__strings__to_address T
|
||||
componolit__runtime__strings__to_pointer T
|
||||
componolit_log_debug T
|
||||
componolit_log_error T
|
||||
componolit_log_warning T
|
||||
componolit_runtime_finalize T
|
||||
componolit_runtime_initialize T
|
||||
componolit_runtime_raise_ada_exception T
|
||||
constraint_error D 40
|
||||
gnat_E D 2
|
||||
gnat__io_E D 2
|
||||
gnat__io__current_out D 1
|
||||
gnat__io__file_typeN R 4
|
||||
gnat__io__file_typeS R 16
|
||||
gnat__io__get T
|
||||
gnat__io__get__2 T
|
||||
gnat__io__get_line T
|
||||
gnat__io__new_line T
|
||||
gnat__io__new_line__2 T
|
||||
gnat__io__put T
|
||||
gnat__io__put__2 T
|
||||
gnat__io__put__3 T
|
||||
gnat__io__put__4 T
|
||||
gnat__io__put__5 T
|
||||
gnat__io__put__6 T
|
||||
gnat__io__put_line T
|
||||
gnat__io__put_line__2 T
|
||||
gnat__io__set_output T
|
||||
gnat__io__standard_error T
|
||||
gnat__io__standard_output T
|
||||
interfaces_E D 2
|
||||
interfaces__c_E D 2
|
||||
interfaces__c__char16_arrayIP T
|
||||
@ -111,45 +133,7 @@ interfaces__c__extensions__signed_128IP T
|
||||
interfaces__c__nul R 1
|
||||
interfaces__c__wchar_arrayIP T
|
||||
interfaces__c__wide_nul R 4
|
||||
log_debug T
|
||||
log_error T
|
||||
log_warning T
|
||||
platform_E D 2
|
||||
platform__log_debug T
|
||||
platform__log_debug_private T
|
||||
platform__log_error T
|
||||
platform__log_error_private T
|
||||
platform__log_warning T
|
||||
platform__log_warning_private T
|
||||
platform__raise_ada_exception T
|
||||
put_char T
|
||||
put_char_stderr T
|
||||
put_int T
|
||||
put_int_stderr T
|
||||
raise_ada_exception T
|
||||
ss_utils_E D 2
|
||||
ss_utils__TregistryBIP T
|
||||
ss_utils___elabs T
|
||||
ss_utils__allocate_stack T
|
||||
ss_utils__c_alloc T
|
||||
ss_utils__get_mark T
|
||||
ss_utils__invalid_thread R 8
|
||||
ss_utils__markIP T
|
||||
ss_utils__null_registry B 3072
|
||||
ss_utils__registry_entryIP T
|
||||
ss_utils__s_allocate T
|
||||
ss_utils__s_mark T
|
||||
ss_utils__s_release T
|
||||
ss_utils__secondary_stack_size R 8
|
||||
ss_utils__set_mark T
|
||||
string_utils_E D 2
|
||||
string_utils__convert_to_ada T
|
||||
string_utils__get_char T
|
||||
string_utils__incr T
|
||||
string_utils__length T
|
||||
string_utils__null_pointer R 8
|
||||
string_utils__to_address T
|
||||
string_utils__to_pointer T
|
||||
system__aamp R 1
|
||||
system__always_compatible_rep R 1
|
||||
system__arith_64__add_with_ovflo_check T
|
||||
@ -189,6 +173,7 @@ system__parameters__c_malloc_linkname R 16
|
||||
system__parameters__runtime_default_sec_stack_size R 4
|
||||
system__preallocated_stacks R 1
|
||||
system__secondary_stack_E D 2
|
||||
system__secondary_stack___elabb T
|
||||
system__secondary_stack___elabs T
|
||||
system__secondary_stack__mark_idIP T
|
||||
system__secondary_stack__memoryIP T
|
||||
|
@ -1 +1 @@
|
||||
4b6479e0bcbb8e5fc3210c20bea97045ce2f0002
|
||||
db898737bfc7439e637065a8f975097aad4741dc
|
||||
|
@ -3,9 +3,9 @@ VERSION := 0
|
||||
DOWNLOADS := ada-runtime.git ada-runtime-alis.git
|
||||
|
||||
URL(ada-runtime) := https://github.com/Componolit/ada-runtime.git
|
||||
REV(ada-runtime) := 4660d7becf9d7112ae371fb678253d9b5798e3d1
|
||||
REV(ada-runtime) := e09f9981ad7e02407b1710b80b701384ef5c32f7
|
||||
DIR(ada-runtime) := ada-runtime
|
||||
|
||||
URL(ada-runtime-alis) := https://github.com/Componolit/ada-runtime-alis.git
|
||||
REV(ada-runtime-alis) := d548a88f1e17ca1cdcf8f48238faf2563732cdd8
|
||||
REV(ada-runtime-alis) := a679a4097b416360efa9b37a4184479ce5adbae0
|
||||
DIR(ada-runtime-alis) := ada-runtime-alis
|
||||
|
@ -4,43 +4,48 @@ ADA_ALI_DIR := $(call port_dir,$(GENODE_DIR)/repos/libports/ports/ada-runtime)/a
|
||||
MIRROR_FROM_ADA_RT_DIR := \
|
||||
$(addprefix ada-runtime/contrib/gcc-8.3.0/,\
|
||||
ada.ads \
|
||||
system.ads \
|
||||
s-stoele.ads \
|
||||
a-unccon.ads \
|
||||
gnat.ads \
|
||||
g-io.ads \
|
||||
interfac.ads \
|
||||
i-cexten.ads \
|
||||
s-arit64.ads \
|
||||
s-maccod.ads \
|
||||
s-unstyp.ads \
|
||||
) \
|
||||
$(addprefix ada-runtime/src/minimal/,\
|
||||
s-stalib.ads \
|
||||
a-except.ads \
|
||||
s-secsta.ads \
|
||||
s-parame.ads \
|
||||
s-soflin.ads \
|
||||
s-exctab.ads \
|
||||
i-c.ads \
|
||||
system.ads \
|
||||
s-arit64.ads \
|
||||
s-exctab.ads \
|
||||
s-parame.ads \
|
||||
s-secsta.ads \
|
||||
s-soflin.ads \
|
||||
s-stalib.ads \
|
||||
s-stoele.ads \
|
||||
) \
|
||||
$(addprefix ada-runtime/src/lib/,\
|
||||
ss_utils.ads \
|
||||
string_utils.ads \
|
||||
platform.ads \
|
||||
ada_exceptions.ads \
|
||||
ada_exceptions.h \
|
||||
)
|
||||
componolit.ads \
|
||||
componolit-runtime.ads \
|
||||
componolit-runtime-conversions.ads \
|
||||
componolit-runtime-debug.ads \
|
||||
componolit-runtime-exceptions.ads \
|
||||
componolit-runtime-platform.ads \
|
||||
componolit-runtime-strings.ads \
|
||||
) \
|
||||
ada-runtime/src/common/s-init.ads
|
||||
|
||||
MIRROR_FROM_ADA_ALI_DIR := \
|
||||
a-except.ali \
|
||||
ada.ali \
|
||||
ada_exceptions.ali \
|
||||
a-except.ali \
|
||||
g-io.ali \
|
||||
gnat.ali \
|
||||
interfac.ali \
|
||||
componolit-runtime-conversions.ali \
|
||||
componolit-runtime-debug.ali \
|
||||
componolit-runtime-exceptions.ali \
|
||||
componolit-runtime-platform.ali \
|
||||
componolit-runtime-strings.ali \
|
||||
componolit-runtime.ali \
|
||||
componolit.ali \
|
||||
i-c.ali \
|
||||
i-cexten.ali \
|
||||
platform.ali \
|
||||
interfac.ali \
|
||||
s-arit64.ali \
|
||||
s-init.ali \
|
||||
s-parame.ali \
|
||||
@ -49,9 +54,7 @@ MIRROR_FROM_ADA_ALI_DIR := \
|
||||
s-stalib.ali \
|
||||
s-stoele.ali \
|
||||
s-unstyp.ali \
|
||||
ss_utils.ali \
|
||||
string_utils.ali \
|
||||
system.ali \
|
||||
system.ali
|
||||
|
||||
content: $(MIRROR_FROM_ADA_RT_DIR) $(MIRROR_FROM_ADA_ALI_DIR)
|
||||
|
||||
|
@ -1 +0,0 @@
|
||||
Test for the GNAT.IO support of the Ada runtime.
|
@ -1,4 +0,0 @@
|
||||
_/src/init
|
||||
_/src/test-gnatio
|
||||
_/src/spark
|
||||
_/src/log_terminal
|
@ -1 +0,0 @@
|
||||
2019-07-08 9b8a04ad6a71621edd81e6437061214a1fa9715d
|
@ -1,41 +0,0 @@
|
||||
<runtime ram="32M" caps="1000" binary="init">
|
||||
|
||||
<events>
|
||||
<timeout meaning="failed" sec="20" />
|
||||
<log meaning="succeeded">GNAT.IO test program started successfully.</log>
|
||||
</events>
|
||||
|
||||
<content>
|
||||
<rom label="ld.lib.so"/>
|
||||
<rom label="spark.lib.so"/>
|
||||
<rom label="test-gnatio"/>
|
||||
<rom label="log_terminal"/>
|
||||
</content>
|
||||
|
||||
<config>
|
||||
<parent-provides>
|
||||
<service name="LOG"/>
|
||||
<service name="PD"/>
|
||||
<service name="CPU"/>
|
||||
<service name="ROM"/>
|
||||
</parent-provides>
|
||||
<default-route>
|
||||
<any-service> <parent/> </any-service>
|
||||
</default-route>
|
||||
<default caps="100"/>
|
||||
|
||||
<start name="terminal">
|
||||
<binary name="log_terminal"/>
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<provides><service name="Terminal"/></provides>
|
||||
</start>
|
||||
|
||||
<start name="test-gnatio">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<route>
|
||||
<service name="Terminal"> <child name="terminal"/> </service>
|
||||
<any-service> <parent/> <any-child/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
</config>
|
||||
</runtime>
|
@ -3,36 +3,53 @@ ADA_RT_DIR := $(call port_dir,$(GENODE_DIR)/repos/libports/ports/ada-runtime)
|
||||
MIRROR_FROM_ADA_RT_DIR := \
|
||||
$(addprefix ada-runtime/contrib/gcc-8.3.0/,\
|
||||
ada.ads \
|
||||
system.ads \
|
||||
interfac.ads \
|
||||
s-unstyp.ads \
|
||||
s-stoele.ads \
|
||||
s-stoele.adb \
|
||||
a-unccon.ads \
|
||||
interfac.ads \
|
||||
i-cexten.ads \
|
||||
s-maccod.ads \
|
||||
s-unstyp.ads \
|
||||
) \
|
||||
$(addprefix ada-runtime/src/minimal/,\
|
||||
a-except.ads \
|
||||
a-except.adb \
|
||||
i-c.ads \
|
||||
i-c.adb \
|
||||
system.ads \
|
||||
s-arit64.ads \
|
||||
s-arit64.adb \
|
||||
gnat.ads \
|
||||
g-io.ads \
|
||||
g-io.adb \
|
||||
i-cexten.ads \
|
||||
s-exctab.ads \
|
||||
s-exctab.adb \
|
||||
s-parame.ads \
|
||||
s-parame.adb \
|
||||
s-secsta.ads \
|
||||
s-secsta.adb \
|
||||
s-soflin.ads \
|
||||
s-soflin.adb \
|
||||
s-stalib.ads \
|
||||
s-stalib.adb \
|
||||
s-stoele.ads \
|
||||
s-stoele.adb \
|
||||
) \
|
||||
$(addprefix ada-runtime/src/lib/,\
|
||||
ada_exceptions.ads \
|
||||
ada_exceptions.h \
|
||||
argv.c \
|
||||
exit.c \
|
||||
componolit.ads \
|
||||
componolit-runtime.ads \
|
||||
componolit-runtime-conversions.ads \
|
||||
componolit-runtime-conversions.adb \
|
||||
componolit-runtime-debug.ads \
|
||||
componolit-runtime-debug.adb \
|
||||
componolit-runtime-exceptions.ads \
|
||||
componolit-runtime-platform.ads \
|
||||
componolit-runtime-platform.adb \
|
||||
componolit-runtime-strings.ads \
|
||||
componolit-runtime-strings.adb \
|
||||
init.c \
|
||||
platform.ads \
|
||||
platform.adb \
|
||||
ss_utils.ads \
|
||||
ss_utils.adb \
|
||||
string_utils.ads \
|
||||
string_utils.adb \
|
||||
) \
|
||||
ada-runtime/src/common \
|
||||
ada-runtime/src/minimal \
|
||||
ada-runtime/platform/genode.cc \
|
||||
ada-runtime/platform/unwind.h
|
||||
ada-runtime/src/common/s-init.ads \
|
||||
ada-runtime/src/common/s-init.adb \
|
||||
ada-runtime/platform/genode/genode.cc \
|
||||
ada-runtime/platform/componolit_runtime.h \
|
||||
ada-runtime/platform/ada_exceptions.h \
|
||||
ada-runtime/platform/gnat_helpers.h
|
||||
|
||||
content: $(MIRROR_FROM_ADA_RT_DIR)
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
SRC_DIR = src/test/gnatio
|
||||
|
||||
include $(GENODE_DIR)/repos/base/recipes/src/content.inc
|
@ -1 +0,0 @@
|
||||
2019-07-08 39623ef76139921c1ece41ec937b023944a5139b
|
@ -1,3 +0,0 @@
|
||||
base
|
||||
spark
|
||||
terminal_session
|
@ -1,36 +0,0 @@
|
||||
--
|
||||
-- \brief GNAT.IO test program
|
||||
-- \author Alexander Senier
|
||||
-- \date 2019-01-03
|
||||
--
|
||||
|
||||
with GNAT.IO;
|
||||
|
||||
procedure Main is
|
||||
use GNAT.IO;
|
||||
begin
|
||||
Put (Standard_Output, "Hell");
|
||||
Put (Standard_Output, 'o');
|
||||
Put_Line (Standard_Output, " World!");
|
||||
New_Line (Standard_Output);
|
||||
Put (Standard_Output, 98765432);
|
||||
New_Line;
|
||||
|
||||
Put ("Integer: ");
|
||||
Put (123456);
|
||||
New_Line;
|
||||
|
||||
Put_Line ("Character: ");
|
||||
Put ('X');
|
||||
Put ('Y');
|
||||
Put ('Z');
|
||||
New_Line;
|
||||
|
||||
Put ("New_Line with spacing:");
|
||||
New_Line (Spacing => 5);
|
||||
|
||||
Set_Output (Standard_Error);
|
||||
Put (11223344);
|
||||
New_Line;
|
||||
Put_Line ("GNAT.IO test program started successfully.");
|
||||
end Main;
|
@ -1,23 +0,0 @@
|
||||
/*
|
||||
* \brief Wrapper for Ada main program using Terminal session
|
||||
* \author Alexander Senier
|
||||
* \date 2019-01-03
|
||||
*/
|
||||
|
||||
/* Genode includes */
|
||||
#include <base/component.h>
|
||||
#include <terminal_session/connection.h>
|
||||
|
||||
extern "C" void _ada_main(void);
|
||||
|
||||
/* Required in runtime */
|
||||
Terminal::Connection *__genode_terminal;
|
||||
|
||||
void Component::construct(Genode::Env &env)
|
||||
{
|
||||
Terminal::Connection _terminal (env, "Ada");
|
||||
__genode_terminal = &_terminal;
|
||||
|
||||
_ada_main();
|
||||
env.parent().exit(0);
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
TARGET = test-gnatio
|
||||
SRC_ADB = main.adb
|
||||
SRC_CC = startup.cc
|
||||
LIBS = base spark
|
Loading…
x
Reference in New Issue
Block a user