Rename Ada runtime to SPARK runtime

The minimal-footprint Ada runtime for implementing library-like
functionality in SPARK is now called "spark" runtime.

The full Ada runtime for entire components written in Ada and using the
libc as glue to the underlying system will move to the world repository
as "ada" runtime.

Issue #3144
This commit is contained in:
Alexander Senier 2019-01-29 18:01:47 +01:00 committed by Norman Feske
parent 3b41e02ea5
commit 5ccae43552
88 changed files with 250 additions and 250 deletions

View File

@ -84,13 +84,13 @@ CUSTOM_ADA_INCLUDE ?= -I- $(INCLUDES)
%.ali %.o: %.adb
$(MSG_COMP)$@
$(VERBOSE)$(CC) $(CUSTOM_ADA_FLAGS) $(CUSTOM_ADA_OPT) $(CUSTOM_ADA_INCLUDE) -c $<
$(VERBOSE)$(ALI2DEP) $(ALL_INC_DIR) $*.ali
$(VERBOSE)$(CUSTOM_ADA_CC) $(CUSTOM_ADA_FLAGS) $(CUSTOM_ADA_OPT) $(CUSTOM_ADA_INCLUDE) -c $<
$(VERBOSE)$(ALI2DEP) $(dir $<) $(ALL_INC_DIR) $*.ali
%.ali %.o: %.ads
$(MSG_COMP)$@
$(VERBOSE)$(CC) $(CUSTOM_ADA_FLAGS) $(CUSTOM_ADA_OPT) $(CUSTOM_ADA_INCLUDE) -c $<
$(VERBOSE)$(ALI2DEP) $(ALL_INC_DIR) $*.ali
$(VERBOSE)$(CUSTOM_ADA_CC) $(CUSTOM_ADA_FLAGS) $(CUSTOM_ADA_OPT) $(CUSTOM_ADA_INCLUDE) -c $<
$(VERBOSE)$(ALI2DEP) $(dir $<) $(ALL_INC_DIR) $*.ali
#
# Compiling Rust sources

View File

@ -25,7 +25,7 @@ CUSTOM_STRIP ?= $(CROSS_DEV_PREFIX)strip
CUSTOM_GNATBIND ?= $(CROSS_DEV_PREFIX)gnatbind
CUSTOM_HOST_CC ?= gcc
CUSTOM_ADA_CC ?= $(CUSTOM_CC)
CUSTOM_ALI2DEP ?= echo " WARNING: ali2dep not used, get it from https://github.com/Componolit/ali2dep and make CUSTUM_ALI2DEP point to the binary." \#
CUSTOM_ALI2DEP ?= echo " WARNING: ali2dep not used, get it from https://github.com/Componolit/ali2dep and make CUSTOM_ALI2DEP point to the binary." \#
#
# GNU utilities

View File

@ -111,7 +111,9 @@ CUSTOM_BINDER_FLAGS ?= -n -we
OBJECTS += b~$(TARGET).o
ALIS := $(addsuffix .ali, $(basename $(SRC_ADS) $(SRC_ADB)))
BINDER_SEARCH_DIRS = $(addprefix -I$(BUILD_BASE_DIR)/var/libcache/, $(LIBS))
ALI_DIRS := $(foreach LIB,$(LIBS),$(call select_from_repositories,lib/ali/$(LIB)))
BINDER_SEARCH_DIRS = $(addprefix -I$(BUILD_BASE_DIR)/var/libcache/, $(LIBS)) $(addprefix -aO, $(ALI_DIRS))
BINDER_SRC := b~$(TARGET).ads b~$(TARGET).adb
$(BINDER_SRC): $(ALIS)

View File

@ -646,9 +646,9 @@ if {[expr ![have_spec x86] && \
# ! find . -type d -wholename *recipes/pkg/test-* -printf '%f\n' | sort
#
set default_test_pkgs {
test-ada
test-ada_exception
test-ada_secondary_stack
test-spark
test-spark_exception
test-spark_secondary_stack
test-block
test-block_cache
test-clipboard

View File

@ -266,7 +266,7 @@ Integration
example content of this report:
! <query arch="x86_64">
! <blueprint pkg="genodelabs/pkg/test-ada/2018-11-02"/>
! <blueprint pkg="genodelabs/pkg/test-spark/2018-11-02"/>
! </query>
The format is compliant to that of the "query" ROM required by the Depot
@ -277,8 +277,8 @@ Integration
like this:
! <blueprint>
! <pkg name="test-ada" path="genodelabs/pkg/test-ada/2018-11-02">
! <rom label="ada.lib.so" path="genodelabs/bin/x86_64/ada/2018-11-01/ada.lib.so"/>
! <pkg name="test-spark" path="genodelabs/pkg/test-spark/2018-11-02">
! <rom label="spark.lib.so" path="genodelabs/bin/x86_64/spark/2018-11-01/spark.lib.so"/>
! <missing_rom label="ld.lib.so"/>
! ... # further <rom> and <missing_rom> tags
!
@ -298,7 +298,7 @@ Integration
! <config>
! ... # content of <static> tag in Autopilot configuration
!
! <start name="test-ada" caps="1000">
! <start name="test-spark" caps="1000">
! <binary name="init"/>
! <resource name="RAM" quantum="32M"/>
!
@ -308,8 +308,8 @@ Integration
! ... # content of <common_routes> tag in Autopilot configuration
!
! # routes for each <content><rom> tags in the tests runtime file
! <service name="ROM" label_last="test-ada">
! <parent label="genodelabs/bin/x86_64/test-ada/2018-11-02/test-ada"/>
! <service name="ROM" label_last="test-spark">
! <parent label="genodelabs/bin/x86_64/test-spark/2018-11-02/test-spark"/>
! </service>
! ...
!

View File

@ -1 +0,0 @@
ADA_RTS = $(BUILD_BASE_DIR)/var/libcache/ada

View File

@ -0,0 +1,13 @@
ADA_RTS = $(BUILD_BASE_DIR)/var/libcache/spark
ADA_RTS_SOURCE = $(call select_from_ports,ada-runtime)/ada-runtime/contrib/gcc-6.3.0
ADA_RUNTIME_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src/minimal
ADA_RUNTIME_LIB_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src/lib
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_RTS_SOURCE)
# Disable inline concatenation as this requires additinal runtime support
CC_ADA_OPT += -gnatd.c

View File

@ -1 +0,0 @@
INC_DIR += $(REP_DIR)/src/test/ada/lib

View File

@ -0,0 +1 @@
INC_DIR += $(REP_DIR)/src/test/spark/lib

View File

@ -1,12 +0,0 @@
include $(REP_DIR)/lib/import/import-ada.mk
ADA_RTS_SOURCE = $(call select_from_ports,gcc)/src/noux-pkg/gcc/gcc/ada
all: ada_source_path
ada_source_path: ada_object_path
$(VERBOSE)echo $(ADA_RTS_SOURCE) > $(ADA_RTS)/ada_source_path
ada_object_path:
$(VERBOSE)mkdir -p $(ADA_RTS)
$(VERBOSE)echo $(ADA_RTS) > $(ADA_RTS)/ada_object_path

View File

@ -1,58 +0,0 @@
include $(REP_DIR)/lib/mk/ada.inc
ADALIB = $(ADA_RTS)/adalib
ADAINCLUDE = $(ADA_RTS)/adainclude
ADA_RTS_SOURCE = $(call select_from_ports,ada-runtime)/ada-runtime/contrib/gcc-6.3.0
ADA_RUNTIME_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src
ADA_RUNTIME_LIB_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/src/lib
ADA_RUNTIME_PLATFORM_DIR = $(call select_from_ports,ada-runtime)/ada-runtime/platform
SRC_ADS += system.ads \
s-soflin.ads \
s-imgint.ads \
s-stoele.ads \
s-secsta.ads \
interfac.ads \
a-except.ads \
gnat.ads
SRC_ADB += g-io.adb
CUSTOM_ADA_FLAGS = -c -gnatg -gnatp -gnatpg -gnatn2
CUSTOM_ADA_OPT = $(CC_ADA_OPT)
CUSTOM_ADA_INCLUDE = -I- -I$(ADA_RUNTIME_DIR) -I$(ADA_RTS_SOURCE) -I$(ADA_RUNTIME_LIB_DIR)
INC_DIR += $(ADA_RUNTIME_LIB_DIR)
# C runtime glue code
SRC_CC += genode.cc
# Ada packages that implement runtime functionality
SRC_ADB += ss_utils.adb string_utils.adb platform.adb
vpath %.cc $(ADA_RUNTIME_PLATFORM_DIR)
vpath system.ads $(ADA_RTS_SOURCE)
vpath s-soflin.ads $(ADA_RUNTIME_DIR)
vpath s-stoele.ads $(ADA_RTS_SOURCE)
vpath s-secsta.ads $(ADA_RUNTIME_DIR)
vpath s-imgint.ads $(ADA_RTS_SOURCE)
vpath a-except.ads $(ADA_RUNTIME_DIR)
vpath interfac.ads $(ADA_RTS_SOURCE)
vpath gnat.ads $(ADA_RTS_SOURCE)
vpath g-io.ads $(ADA_RTS_SOURCE)
vpath s-stoele.adb $(ADA_RTS_SOURCE)
vpath s-secsta.adb $(ADA_RUNTIME_DIR)
vpath s-soflin.adb $(ADA_RUNTIME_DIR)
vpath s-imgint.adb $(ADA_RTS_SOURCE)
vpath a-except.adb $(ADA_RUNTIME_DIR)
vpath g-io.adb $(ADA_RTS_SOURCE)
vpath platform.% $(ADA_RUNTIME_LIB_DIR)
vpath string_utils.% $(ADA_RUNTIME_LIB_DIR)
vpath ss_utils.% $(ADA_RUNTIME_LIB_DIR)
SHARED_LIB = yes

View File

@ -0,0 +1,11 @@
include $(REP_DIR)/lib/import/import-spark.mk
all: ada_source_path
ada_source_path: ada_object_path
$(VERBOSE)echo $(ADA_RTS_SOURCE) > $(ADA_RTS)/ada_source_path
$(VERBOSE)echo $(ADA_RUNTIME_DIR) >> $(ADA_RTS)/ada_source_path
ada_object_path:
$(VERBOSE)mkdir -p $(ADA_RTS)
$(VERBOSE)echo $(ADA_RTS) > $(ADA_RTS)/ada_object_path

View File

@ -0,0 +1,45 @@
include $(REP_DIR)/lib/mk/spark.inc
ADALIB = $(ADA_RTS)/adalib
ADAINCLUDE = $(ADA_RTS)/adainclude
SRC_ADS += system.ads \
s-soflin.ads \
s-imgint.ads \
s-stoele.ads \
s-unstyp.ads \
interfac.ads \
a-except.ads \
gnat.ads \
ada.ads \
ada_exceptions.ads
SRC_ADB += g-io.adb s-stalib.adb s-secsta.adb s-parame.adb
CUSTOM_ADA_FLAGS = --RTS=$(ADA_RTS) -c -gnatg -gnatp -gnatpg -gnatn2
# C runtime glue code
SRC_CC += genode.cc
# Ada packages that implement runtime functionality
SRC_ADB += ss_utils.adb string_utils.adb platform.adb
vpath %.cc $(ADA_RUNTIME_PLATFORM_DIR)
vpath s-soflin.ads $(ADA_RUNTIME_DIR)
vpath a-except.ads $(ADA_RUNTIME_DIR)
vpath s-secsta.adb $(ADA_RUNTIME_DIR)
vpath s-soflin.adb $(ADA_RUNTIME_DIR)
vpath s-stalib.adb $(ADA_RUNTIME_DIR)
vpath s-parame.adb $(ADA_RUNTIME_DIR)
vpath a-except.adb $(ADA_RUNTIME_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)
SHARED_LIB = yes

View File

@ -1,6 +0,0 @@
LIBS += base ada
SRC_ADB += add_package.adb
include $(REP_DIR)/lib/import/import-test-ada.mk
vpath %.adb $(REP_DIR)/src/test/ada/lib

View File

@ -0,0 +1,6 @@
LIBS += base spark
SRC_ADB += add_package.adb
include $(REP_DIR)/lib/import/import-test-spark.mk
vpath %.adb $(REP_DIR)/src/test/spark/lib

View File

@ -1 +1 @@
eea97604807f7cbb9b9c1aea9d4f0da6256d75b9
6fcdbbc50a6e5d2bc031f9191bd57854a27c5e09

View File

@ -1,7 +1,11 @@
LICENSE := AGPLv3
LICENSE := AGPLv3 + GCC runtime library exception
VERSION := 0
DOWNLOADS := ada-runtime.git
DOWNLOADS := ada-runtime.git ada-runtime-alis.git
URL(ada-runtime) := https://github.com/Componolit/ada-runtime.git
REV(ada-runtime) := 6ebc27d7954eff4d027b3834f10a0934523c569b
REV(ada-runtime) := 6a84715677e7538240360ee41a52912e6250dc8e
DIR(ada-runtime) := ada-runtime
URL(ada-runtime-alis) := https://github.com/Componolit/ada-runtime-alis.git
REV(ada-runtime-alis) := cf9d8b99c783c080f8be9b39761f80469622b5c6
DIR(ada-runtime-alis) := ada-runtime-alis

View File

@ -1,53 +0,0 @@
ADA_RT_DIR := $(call port_dir,$(GENODE_DIR)/repos/libports/ports/ada-runtime)
MIRROR_FROM_ADA_RT_DIR := \
$(addprefix ada-runtime/contrib/gcc-6.3.0/,\
ada.ads \
system.ads \
s-stoele.ads \
a-unccon.ads \
gnat.ads \
g-io.ads \
)\
$(addprefix ada-runtime/src/,\
s-stalib.ads \
a-except.ads \
s-secsta.ads \
s-parame.ads \
s-soflin.ads \
)\
$(addprefix ada-runtime/src/lib/,\
ss_utils.ads \
)
# $(addprefix ada-runtime/src/,\
s-stache.ads \
s-conca2.ads \
s-arit64.ads \
)\
$(addprefix ada-runtime/contrib/gcc-6.3.0/,\
interfac.ads \
system.ads \
)
content: $(MIRROR_FROM_ADA_RT_DIR)
$(MIRROR_FROM_ADA_RT_DIR):
mkdir -p src/noux-pkg/gcc/gcc/ada/
cp -r $(ADA_RT_DIR)/$@ src/noux-pkg/gcc/gcc/ada/
MIRROR_FROM_REP_DIR := \
lib/import/import-ada.mk \
include/ada \
lib/symbols/ada
content: $(MIRROR_FROM_REP_DIR)
$(MIRROR_FROM_REP_DIR):
$(mirror_from_rep_dir)
content: lib/mk/ada.mk
lib/mk/ada.mk:
mkdir -p $(dir $@)
cp -r $(REP_DIR)/lib/mk/ada.inc $@

View File

@ -1 +0,0 @@
2019-01-03 f064c0ffc41ac5571bdaaf66dbad6b35c79db390

View File

@ -0,0 +1,67 @@
ADA_RT_DIR := $(call port_dir,$(GENODE_DIR)/repos/libports/ports/ada-runtime)
ADA_ALI_DIR := $(call port_dir,$(GENODE_DIR)/repos/libports/ports/ada-runtime)/ada-runtime-alis/alis
MIRROR_FROM_ADA_RT_DIR := \
$(addprefix ada-runtime/contrib/gcc-6.3.0/,\
ada.ads \
system.ads \
s-stoele.ads \
a-unccon.ads \
gnat.ads \
g-io.ads \
)\
$(addprefix ada-runtime/src/minimal/,\
s-stalib.ads \
a-except.ads \
s-secsta.ads \
s-parame.ads \
s-soflin.ads \
)\
$(addprefix ada-runtime/src/lib/,\
ss_utils.ads \
)
MIRROR_FROM_ADA_ALI_DIR := \
ada.ali \
ada_exceptions.ali \
a-except.ali \
g-io.ali \
gnat.ali \
interfac.ali \
platform.ali \
s-imgint.ali \
s-parame.ali \
s-secsta.ali \
s-soflin.ali \
s-stalib.ali \
s-stoele.ali \
ss_utils.ali \
string_utils.ali \
s-unstyp.ali \
system.ali \
content: $(MIRROR_FROM_ADA_RT_DIR) $(MIRROR_FROM_ADA_ALI_DIR)
$(MIRROR_FROM_ADA_RT_DIR):
mkdir -p include
cp $(ADA_RT_DIR)/$@ include/
$(MIRROR_FROM_ADA_ALI_DIR):
mkdir -p lib/ali/spark
cp $(ADA_ALI_DIR)/$@ lib/ali/spark/
MIRROR_FROM_REP_DIR := \
lib/import/import-spark.mk \
include/ada \
lib/symbols/spark \
content: $(MIRROR_FROM_REP_DIR)
$(MIRROR_FROM_REP_DIR):
$(mirror_from_rep_dir)
content: lib/mk/spark.mk
lib/mk/spark.mk:
mkdir -p $(dir $@)
cp -r $(REP_DIR)/lib/mk/spark.inc $@

View File

@ -0,0 +1 @@
2019-01-29 63905bc1bf4bb45aade024e1631dfd14b305c84b

View File

@ -1,3 +0,0 @@
_/src/init
_/src/test-ada
_/src/ada

View File

@ -1 +0,0 @@
2019-02-05 0966645d90d6eab87da8951d61022e3248f61c06

View File

@ -1,3 +0,0 @@
_/src/init
_/src/test-ada_exception
_/src/ada

View File

@ -1 +0,0 @@
2019-02-05 9cfdc496cd58731e3a80bb1bca37b4fc1518bace

View File

@ -1,3 +0,0 @@
_/src/init
_/src/test-ada_secondary_stack
_/src/ada

View File

@ -1 +0,0 @@
2019-02-05 4b84ad134f8c1386d31c38aec76e82ca2be256c8

View File

@ -1,4 +1,4 @@
_/src/init
_/src/test-gnatio
_/src/ada
_/src/spark
_/src/log_terminal

View File

@ -7,7 +7,7 @@
<content>
<rom label="ld.lib.so"/>
<rom label="ada.lib.so"/>
<rom label="spark.lib.so"/>
<rom label="test-gnatio"/>
<rom label="log_terminal"/>
</content>

View File

@ -0,0 +1,3 @@
_/src/init
_/src/test-spark
_/src/spark

View File

@ -0,0 +1 @@
2019-01-29 1715f0cbde7f27338678e6e215b074ac9ea55dc0

View File

@ -2,13 +2,13 @@
<events>
<timeout meaning="failed" sec="20" />
<log meaning="succeeded">child "test-ada" exited with exit value 0</log>
<log meaning="succeeded">child "test-spark" exited with exit value 0</log>
</events>
<content>
<rom label="ld.lib.so"/>
<rom label="ada.lib.so"/>
<rom label="test-ada"/>
<rom label="spark.lib.so"/>
<rom label="test-spark"/>
</content>
<config>
@ -22,7 +22,7 @@
<any-service> <parent/> </any-service>
</default-route>
<default caps="100"/>
<start name="test-ada">
<start name="test-spark">
<resource name="RAM" quantum="10M"/>
</start>
</config>

View File

@ -0,0 +1,3 @@
_/src/init
_/src/test-spark_exception
_/src/spark

View File

@ -0,0 +1 @@
2019-01-29 2018901ecdaf87894fde67c0e516b697f6f9481c

View File

@ -3,17 +3,17 @@
<events>
<timeout meaning="failed" sec="20" />
<log meaning="succeeded">
[init -> test-ada_exception] Ada exception test*
[init -> test-ada_exception] Error: Exception raised: explicit raise in except.adb: 6
[init -> test-ada_exception] Caught Ada::Exception::Program_Error*
[init] child "test-ada_exception" exited with exit value 0
[init -> test-spark_exception] Ada exception test*
[init -> test-spark_exception] Error: Exception raised: explicit raise in except.adb: 6
[init -> test-spark_exception] Caught Ada::Exception::Program_Error*
[init] child "test-spark_exception" exited with exit value 0
</log>
</events>
<content>
<rom label="ld.lib.so"/>
<rom label="ada.lib.so"/>
<rom label="test-ada_exception"/>
<rom label="spark.lib.so"/>
<rom label="test-spark_exception"/>
</content>
<config>
@ -27,7 +27,7 @@
<any-service> <parent/> </any-service>
</default-route>
<default caps="100"/>
<start name="test-ada_exception">
<start name="test-spark_exception">
<resource name="RAM" quantum="10M"/>
</start>
</config>

View File

@ -0,0 +1,3 @@
_/src/init
_/src/test-spark_secondary_stack
_/src/spark

View File

@ -0,0 +1 @@
2019-01-29 a0dc8be93bd22ba7a2efed4fadf7f8ee4065cdb4

View File

@ -3,15 +3,15 @@
<events>
<timeout meaning="failed" sec="20" />
<log meaning="succeeded">
[init -> test-ada_secondary_stack] secondary stack test successful
[init] child "test-ada_secondary_stack" exited with exit value 0
[init -> test-spark_secondary_stack] secondary stack test successful
[init] child "test-spark_secondary_stack" exited with exit value 0
</log>
</events>
<content>
<rom label="ld.lib.so"/>
<rom label="ada.lib.so"/>
<rom label="test-ada_secondary_stack"/>
<rom label="spark.lib.so"/>
<rom label="test-spark_secondary_stack"/>
</content>
<config>
@ -25,7 +25,7 @@
<any-service> <parent/> </any-service>
</default-route>
<default caps="100"/>
<start name="test-ada_secondary_stack">
<start name="test-spark_secondary_stack">
<resource name="RAM" quantum="10M"/>
</start>
</config>

View File

@ -1 +0,0 @@
ada

View File

@ -1 +0,0 @@
2019-02-05 4e40d13626ba0c64c5d049de73432f9488c453a6

View File

@ -0,0 +1 @@
spark

View File

@ -25,9 +25,9 @@ $(MIRROR_FROM_ADA_RT_DIR):
cp -r $(ADA_RT_DIR)/$@ $@
MIRROR_FROM_REP_DIR := \
lib/mk/ada.mk \
lib/mk/ada.inc \
lib/import/import-ada.mk \
lib/mk/spark.mk \
lib/mk/spark.inc \
lib/import/import-spark.mk \
include/ada/exception.h
content: $(MIRROR_FROM_REP_DIR)
@ -35,8 +35,8 @@ content: $(MIRROR_FROM_REP_DIR)
$(MIRROR_FROM_REP_DIR):
$(mirror_from_rep_dir)
content: src/lib/ada/target.mk
content: src/lib/spark/target.mk
src/lib/ada/target.mk:
src/lib/spark/target.mk:
mkdir -p $(dir $@)
echo "LIBS = ada" > $@
echo "LIBS = spark" > $@

View File

@ -0,0 +1 @@
2019-01-29 e51284845e676e98f36af6093bc0bb67da9655e0

View File

@ -1 +0,0 @@
2019-02-05 eb0d7ed5c6db72eba9a084e27796193806f01ef8

View File

@ -1,2 +0,0 @@
base
ada

View File

@ -1,13 +0,0 @@
#MIRROR_FROM_REP_DIR := \
# lib/mk/test-ada.mk \
# lib/import/import-test-ada.mk
#
#content: $(MIRROR_FROM_REP_DIR)
#
#$(MIRROR_FROM_REP_DIR):
# $(mirror_from_rep_dir)
SRC_DIR = src/test/ada_exception
include $(GENODE_DIR)/repos/base/recipes/src/content.inc

View File

@ -1 +0,0 @@
2019-02-05 8591b810822392691983ef0d27677bdb63b7a27f

View File

@ -1,2 +0,0 @@
base
ada

View File

@ -1,13 +0,0 @@
#MIRROR_FROM_REP_DIR := \
# lib/mk/test-ada.mk \
# lib/import/import-test-ada.mk
#
#content: $(MIRROR_FROM_REP_DIR)
#
#$(MIRROR_FROM_REP_DIR):
# $(mirror_from_rep_dir)
SRC_DIR = src/test/ada_secondary_stack
include $(GENODE_DIR)/repos/base/recipes/src/content.inc

View File

@ -1 +0,0 @@
2019-02-05 06269d42844d948e7af853d8bae5250ea6bad88a

View File

@ -1,3 +1,3 @@
base
ada
spark
terminal_session

View File

@ -1,6 +1,6 @@
MIRROR_FROM_REP_DIR := \
lib/mk/test-ada.mk \
lib/import/import-test-ada.mk
lib/mk/test-spark.mk \
lib/import/import-test-spark.mk
content: $(MIRROR_FROM_REP_DIR)
@ -8,6 +8,6 @@ $(MIRROR_FROM_REP_DIR):
$(mirror_from_rep_dir)
SRC_DIR = src/test/ada
SRC_DIR = src/test/spark
include $(GENODE_DIR)/repos/base/recipes/src/content.inc

View File

@ -0,0 +1 @@
2019-01-29 731bd8b8a5180e68af4be2a078ed89ad3dfde616

View File

@ -0,0 +1,2 @@
base
spark

View File

@ -0,0 +1,3 @@
SRC_DIR = src/test/spark_exception
include $(GENODE_DIR)/repos/base/recipes/src/content.inc

View File

@ -0,0 +1 @@
2019-01-29 59374f58e03b9cdabdaae070203b103c9d0af2bd

View File

@ -0,0 +1,2 @@
base
spark

View File

@ -0,0 +1,3 @@
SRC_DIR = src/test/spark_secondary_stack
include $(GENODE_DIR)/repos/base/recipes/src/content.inc

View File

@ -0,0 +1 @@
2019-01-29 3a2d2bb1d8c93c47d799b315fb4dd9845c7823c4

View File

@ -0,0 +1,2 @@
base
spark

View File

@ -1,14 +0,0 @@
package body add_package is
procedure Add(A: in Integer;
B: in Integer;
R: out Integer)
is
procedure ext_c_print_add(a, b : Integer; result : out Integer);
pragma import(C, ext_c_print_add, "print_add");
begin
ext_c_print_add(A, B, R);
R := A + B;
end Add;
end add_package;

View File

@ -1,4 +1,4 @@
TARGET = test-gnatio
SRC_ADB = main.adb
SRC_CC = startup.cc
LIBS = base ada
LIBS = base spark

View File

@ -0,0 +1,14 @@
package body add_package is
procedure Add (A : in Integer;
B : in Integer;
R : out Integer)
is
procedure Ext_C_Print_Add (A, B : Integer; Result : out Integer);
pragma Import (C, Ext_C_Print_Add, "print_add");
begin
Ext_C_Print_Add (A, B, R);
R := R + 1;
end Add;
end add_package;

View File

@ -1,7 +1,7 @@
TARGET = test-ada
TARGET = test-spark
SRC_ADB = main.adb machinery.adb
SRC_CC = print.cc startup.cc
LIBS = base ada test-ada
LIBS = base spark test-spark
CC_ADA_OPT += -gnatec=$(PRG_DIR)/spark.adc

View File

@ -1,5 +1,5 @@
TARGET = test-ada_exception
TARGET = test-spark_exception
SRC_ADB = except.adb
SRC_CC = main.cc
LIBS = base ada
LIBS = base spark
INC_DIR += $(PRG_DIR)

View File

@ -29,6 +29,7 @@ is
is
R : constant Integer := 0;
B : Buffer := Recursive_Alloc (R);
pragma Unreferenced (B);
begin
null;
end Ralloc;
@ -68,6 +69,7 @@ is
is
S : constant Integer := 16;
B : Buffer := Stage_1 (S);
pragma Unreferenced (B);
begin
Print_Stage (0);
end Salloc;
@ -107,7 +109,7 @@ is
Size : Integer
) return Buffer
is
Buf : Buffer (1 .. Size) := (others => '3');
Buf : constant Buffer (1 .. Size) := (others => '3');
begin
Print_Stage (3);
return Buf;

View File

@ -1,6 +1,6 @@
TARGET = test-ada_secondary_stack
TARGET = test-spark_secondary_stack
SRC_ADB = stack.adb
SRC_CC = main.cc
LIBS = base ada
LIBS = base spark
INC_DIR += $(PRG_DIR)