Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
Ocarina
Commits
2bbd1b82
Commit
2bbd1b82
authored
Jun 11, 2016
by
yoogx
Browse files
Merge branch 'master' of
https://github.com/OpenAADL/ocarina
parents
d8cd7bfc
bf46eacf
Changes
24
Hide whitespace changes
Inline
Side-by-side
Makefile.am
View file @
2bbd1b82
...
...
@@ -54,11 +54,9 @@ install-exec-local:
$(INSTALL)
-d
$(DESTDIR)$(datadir)
/doc
$(INSTALL)
-d
$(DESTDIR)$(datadir)
/doc/ocarina
$(INSTALL_SCRIPT)
ocarina-config
$(DESTDIR)$(bindir)
$(INSTALL_DATA)
$(srcdir)
/ChangeLog
$(DESTDIR)$(datadir)
/doc/ocarina/ChangeLog_ocarina
uninstall-local
:
rm
-f
$(DESTDIR)$(bindir)
/ocarina-config
rm
-f
$(DESTDIR)$(datadir)
/doc/ocarina/ChangeLog_ocarina
release
:
rm
-rf
release/
...
...
autotest.sh
View file @
2bbd1b82
...
...
@@ -432,7 +432,6 @@ if test ${dotests} = "true" ; then
;;
*
)
if
test
-r
${
gprfile
}
;
then
ocarina_gpr
=
"
`
ocarina-config
--projects
`
"
command
=
"gnatmake -P
\"
`
${
path_conv
}
${
gprfile
}
`
\"
-aP
${
ocarina_gpr
}
-XOBJ_DIR=
\"
`
${
path_conv
}
${
tmpdir
}
`
\"
"
...
...
@@ -451,7 +450,13 @@ if test ${dotests} = "true" ; then
"
${
command
}
"
\
""
\
"
${
actual_output
}
"
failures
=
`
expr
${
failures
}
+ 1
`
# We do not increase the number of
# failures for compiled files, as those
# are dependent on external conditions,
# e.g. enabling code coverage, etc.
# failures=`expr ${failures} + 1`
else
./
`
basename
${
file
}
.adb
`
>
${
actual_output
}
2>&1
...
...
configure.ac
View file @
2bbd1b82
...
...
@@ -200,6 +200,7 @@ AC_ARG_WITH(ocarina-runtimes,
AS_HELP_STRING([--with-ocarina-runtimes=x], [enumerate runtimes]),
[
RUNTIME_LIST=""
AM_CONDITIONAL(AADLIB, false)
AM_CONDITIONAL(PO_HI_ADA, false)
AM_CONDITIONAL(PO_HI_C, false)
AM_CONDITIONAL(POK, false)
...
...
@@ -209,7 +210,7 @@ AS_HELP_STRING([--with-ocarina-runtimes=x], [enumerate runtimes]),
do
case ${R} in
all )
for P in polyorb-hi-ada polyorb-hi-c
for P in
aadlib
polyorb-hi-ada polyorb-hi-c
do
if test -d ${root}/resources/runtime/${P}
then
...
...
@@ -219,15 +220,27 @@ AS_HELP_STRING([--with-ocarina-runtimes=x], [enumerate runtimes]),
fi
done
AM_CONDITIONAL(AADLIB, true)
AM_CONDITIONAL(PO_HI_ADA, true)
AM_CONDITIONAL(PO_HI_C, true)
;;
none )
AM_CONDITIONAL(AADLIB, false)
AM_CONDITIONAL(PO_HI_ADA, false)
AM_CONDITIONAL(PO_HI_C, false)
;;
aadlib )
if test -d ${root}/resources/runtime/${R}
then
RUNTIME_LIST="${RUNTIME_LIST}${R} "
else
AC_MSG_ERROR([runtime ${R} not found])
fi
AM_CONDITIONAL(AADLIB, true)
;;
pok )
if test -d ${root}/resources/runtime/${R}
then
...
...
@@ -268,7 +281,7 @@ AS_HELP_STRING([--with-ocarina-runtimes=x], [enumerate runtimes]),
],
[
RUNTIME_LIST=""
for P in polyorb-hi-ada polyorb-hi-c
for P in
aadlib
polyorb-hi-ada polyorb-hi-c
do
if test -d ${root}/resources/runtime/${P}
then
...
...
@@ -276,6 +289,7 @@ AS_HELP_STRING([--with-ocarina-runtimes=x], [enumerate runtimes]),
fi
done
AM_CONDITIONAL(AADLIB, test -d "${root}/resources/runtime/aadlib")
AM_CONDITIONAL(POK, test -d "${root}/resources/runtime/pok")
AM_CONDITIONAL(PO_HI_ADA, test -d "${root}/resources/runtime/polyorb-hi-ada")
AM_CONDITIONAL(PO_HI_C, test -d "${root}/resources/runtime/polyorb-hi-c")
...
...
projects/ocarina-python.gpr
View file @
2bbd1b82
...
...
@@ -55,7 +55,6 @@ project Ocarina.Python is
for
Library_Interface
use
(
"ocarina.python_cmd"
);
for
Library_Standalone
use
"standard"
;
-- for Library_Standalone use "encapsulated";
package
Compiler
renames
Ocarina
.
Compiler
;
package
Binder
renames
Ocarina
.
Binder
;
...
...
projects/ocarina.gpr.in
View file @
2bbd1b82
...
...
@@ -52,8 +52,7 @@ project Ocarina is
case
Build
is
when
"debug"
=>
for
Default_Switches
(
"Ada"
)
use
(
"-fPIC"
,
"-g"
,
(
"-g"
,
"-gnatfy"
,
"-gnatwae"
,
"-gnatoa"
,
...
...
@@ -68,7 +67,6 @@ project Ocarina is
when
"release"
=>
for
Default_Switches
(
"Ada"
)
use
(
"-O2"
,
"-fPIC"
,
"-gnat12"
,
"-gnata"
,
"-gnaty"
,
...
...
resources/runtime/Makefile.am
View file @
2bbd1b82
...
...
@@ -5,6 +5,14 @@ SUBDIRS = cheddar aadl_xml python
################################################################################
maybe-reconfig-aadlib
:
@AADLIB_TRUE@maybe-reconfig-aadlib
:
reconfig-aadlib
reconfig-aadlib
:
r_dir
=
'aadlib'
;
\
test
-f
$(srcdir)
/
$
${r_dir}
/configure
&&
exit
0
||
true
;
\
test
-d
$(srcdir)
/
$
${r_dir}
||
exit
0
;
\
cd
$(srcdir)
/
$
${r_dir}
&&
./support/reconfig
maybe-reconfig-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-reconfig-polyorb-hi-ada
:
reconfig-polyorb-hi-ada
reconfig-polyorb-hi-ada
:
...
...
@@ -30,6 +38,17 @@ configure-pok:
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
configure
maybe-configure-aadlib
:
@AADLIB_TRUE@maybe-configure-aadlib
:
configure-aadlib
configure-aadlib
:
reconfig-aadlib
r_dir
=
'aadlib'
;
\
s_dir
=
`
(
cd
$(srcdir)
&&
pwd
)
`
;
\
test
-f
$
${r_dir}
/Makefile
&&
exit
0
||
true
;
\
test
-x
$(srcdir)
/
$
${r_dir}
/configure
||
exit
0
;
\
$(mkdir_p)
$
${r_dir}
&&
cd
$
${r_dir}
||
exit
1
;
\
$
${s_dir}
/
$
${r_dir}
/configure
$(DEBUG_FLAG)
$(DOC_FLAG)
\
--with-ocarina-prefix
=
'
$(prefix)
'
--disable-ocarina-version-check
maybe-configure-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-configure-polyorb-hi-ada
:
configure-polyorb-hi-ada
configure-polyorb-hi-ada
:
reconfig-polyorb-hi-ada
...
...
@@ -54,6 +73,13 @@ configure-polyorb-hi-c: reconfig-polyorb-hi-c
################################################################################
maybe-all-aadlib
:
@AADLIB_TRUE@maybe-all-aadlib
:
all-aadlib
all-aadlib
:
configure-aadlib
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
all
maybe-all-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-all-polyorb-hi-ada
:
all-polyorb-hi-ada
all-polyorb-hi-ada
:
configure-polyorb-hi-ada
...
...
@@ -86,6 +112,13 @@ dvi-polyorb-hi-c: configure-polyorb-hi-c
################################################################################
maybe-install-aadlib
:
@AADLIB_TRUE@maybe-install-aadlib
:
install-aadlib
install-aadlib
:
all-aadlib
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
DESTDIR
=
"
$(DESTDIR)
"
install
maybe-install-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-install-polyorb-hi-ada
:
install-polyorb-hi-ada
install-polyorb-hi-ada
:
all-polyorb-hi-ada
...
...
@@ -102,6 +135,13 @@ install-polyorb-hi-c: all-polyorb-hi-c
################################################################################
maybe-installcheck-aadlib
:
@AADLIB_TRUE@maybe-installcheck-aadlib
:
installcheck-aadlib
installcheck-aadlib
:
all-aadlib
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
installcheck
maybe-installcheck-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-installcheck-polyorb-hi-ada
:
installcheck-polyorb-hi-ada
installcheck-polyorb-hi-ada
:
all-polyorb-hi-ada
...
...
@@ -118,6 +158,13 @@ installcheck-polyorb-hi-c: all-polyorb-hi-c
################################################################################
maybe-uninstall-aadlib
:
@AADLIB_TRUE@maybe-uninstall-aadlib
:
uninstall-aadlib
uninstall-aadlib
:
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
DESTDIR
=
"
$(DESTDIR)
"
uninstall
maybe-uninstall-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-uninstall-polyorb-hi-ada
:
uninstall-polyorb-hi-ada
uninstall-polyorb-hi-ada
:
...
...
@@ -135,6 +182,13 @@ uninstall-polyorb-hi-c:
################################################################################
maybe-clean-aadlib
:
@AADLIB_TRUE@maybe-clean-aadlib
:
clean-aadlib
clean-aadlib
:
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
clean
maybe-clean-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-clean-polyorb-hi-ada
:
clean-polyorb-hi-ada
clean-polyorb-hi-ada
:
...
...
@@ -151,6 +205,13 @@ clean-polyorb-hi-c:
################################################################################
maybe-distclean-aadlib
:
@AADLIB_TRUE@maybe-distclean-aadlib
:
distclean-aadlib
distclean-aadlib
:
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
distclean
maybe-distclean-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-distclean-polyorb-hi-ada
:
distclean-polyorb-hi-ada
distclean-polyorb-hi-ada
:
...
...
@@ -174,6 +235,13 @@ check-pok: configure-pok
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
tests
maybe-check-aadlib
:
@AADLIB_TRUE@maybe-check-aadlib
:
check-aadlib
check-aadlib
:
r_dir
=
'aadlib'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
PATH
=
"
$(DESTDIR)$(bindir)
:
$$
PATH"
$(MAKE)
check
maybe-check-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-check-polyorb-hi-ada
:
check-polyorb-hi-ada
check-polyorb-hi-ada
:
...
...
@@ -190,6 +258,18 @@ check-polyorb-hi-c:
################################################################################
maybe-dist-aadlib
:
@AADLIB_TRUE@maybe-dist-aadlib
:
dist-aadlib
dist-aadlib
:
configure-aadlib
r_dir
=
'aadlib'
;
\
d_dir
=
'aadlib-dist'
;
\
test
-f
$
${r_dir}
/Makefile
||
exit
0
;
\
cd
$
${r_dir}
&&
$(MAKE)
distdir
"distdir=
$
${d_dir}
"
||
exit
1
;
\
cd
..
&&
chmod
-R
go
=
u-w
$
${r_dir}
/
$
${d_dir}
||
exit
1
;
\
$(mkdir_p)
$(distdir)
/
$
${r_dir}
||
exit
1
;
\
cp
-pR
$
${r_dir}
/
$
${d_dir}
/
*
$(distdir)
/
$
${r_dir}
||
exit
1
;
\
rm
-rf
$
${r_dir}
/
$
${d_dir}
maybe-dist-polyorb-hi-ada
:
@PO_HI_ADA_TRUE@maybe-dist-polyorb-hi-ada
:
dist-polyorb-hi-ada
dist-polyorb-hi-ada
:
configure-polyorb-hi-ada
...
...
@@ -214,11 +294,11 @@ dist-polyorb-hi-c: configure-polyorb-hi-c
cp
-pR
$
${r_dir}
/
$
${d_dir}
/
*
$(distdir)
/
$
${r_dir}
||
exit
1
;
\
rm
-rf
$
${r_dir}
/
$
${d_dir}
################################################################################
# Soft dependenciy against runtimes
all-local
:
\
maybe-all-aadlib
\
maybe-all-polyorb-hi-ada
\
maybe-all-polyorb-hi-c
...
...
@@ -227,30 +307,37 @@ dvi: \
maybe-dvi-polyorb-hi-c
install-data-local
:
\
maybe-install-aadlib
\
maybe-install-polyorb-hi-ada
\
maybe-install-polyorb-hi-c
installcheck
:
\
maybe-installcheck-aadlib
\
maybe-installcheck-polyorb-hi-ada
\
maybe-installcheck-polyorb-hi-c
uninstall-local
:
\
maybe-uninstall-aadlib
\
maybe-uninstall-polyorb-hi-ada
\
maybe-uninstall-polyorb-hi-c
clean-local
:
\
maybe-clean-aadlib
\
maybe-clean-polyorb-hi-ada
\
maybe-clean-polyorb-hi-c
distclean-local
:
\
maybe-distclean-aadlib
\
maybe-distclean-polyorb-hi-ada
\
maybe-distclean-polyorb-hi-c
maybe-check-runtimes
:
\
maybe-check-pok
\
maybe-check-aadlib
\
maybe-check-polyorb-hi-ada
\
maybe-check-polyorb-hi-c
dist-hook
:
\
maybe-dist-aadlib
\
maybe-dist-polyorb-hi-ada
\
maybe-dist-polyorb-hi-c
maybe-dist-polyorb-hi-c
src/backends/ocarina-backends-ada_values.adb
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2006-2009 Telecom ParisTech, 2010-201
5
ESA & ISAE. --
-- Copyright (C) 2006-2009 Telecom ParisTech, 2010-201
6
ESA & ISAE. --
-- --
-- Ocarina is free software; you can redistribute it and/or modify under --
-- terms of the GNU General Public License as published by the Free Soft- --
...
...
@@ -39,14 +39,8 @@ package body Ocarina.Backends.Ada_Values is
package
OV
renames
Ocarina
.
AADL_Values
;
Hex
:
constant
String
:=
"0123456789ABCDEF"
;
package
VT
is
new
GNAT
.
Table
(
Value_Type
,
Value_Id
,
No_Value
+
1
,
10
,
10
);
subtype
ULL
is
Unsigned_Long_Long
;
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
);
-----------
-- Reset --
-----------
...
...
@@ -341,20 +335,6 @@ package body Ocarina.Backends.Ada_Values is
return
LV
;
end
"xor"
;
----------------------------
-- Add_ULL_To_Name_Buffer --
----------------------------
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
)
is
Q
:
constant
ULL
:=
U
/
B
;
R
:
constant
ULL
:=
U
mod
B
;
begin
if
Q
/=
0
or
else
S
>
1
then
Add_ULL_To_Name_Buffer
(
Q
,
B
,
S
-
1
);
end
if
;
Add_Char_To_Name_Buffer
(
Hex
(
Hex
'
First
+
Natural
(
R
)));
end
Add_ULL_To_Name_Buffer
;
-----------
-- Image --
-----------
...
...
src/backends/ocarina-backends-asn1_values.adb
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2012-201
5
ESA & ISAE. --
-- Copyright (C) 2012-201
6
ESA & ISAE. --
-- --
-- Ocarina is free software; you can redistribute it and/or modify under --
-- terms of the GNU General Public License as published by the Free Soft- --
...
...
@@ -39,14 +39,8 @@ package body Ocarina.Backends.ASN1_Values is
package
OV
renames
Ocarina
.
AADL_Values
;
Hex
:
constant
String
:=
"0123456789ABCDEF"
;
package
VT
is
new
GNAT
.
Table
(
Value_Type
,
Value_Id
,
No_Value
+
1
,
10
,
10
);
subtype
ULL
is
Unsigned_Long_Long
;
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
);
---------
-- "*" --
---------
...
...
@@ -320,20 +314,6 @@ package body Ocarina.Backends.ASN1_Values is
return
LV
;
end
"xor"
;
----------------------------
-- Add_ULL_To_Name_Buffer --
----------------------------
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
)
is
Q
:
constant
ULL
:=
U
/
B
;
R
:
constant
ULL
:=
U
mod
B
;
begin
if
Q
/=
0
or
else
S
>
1
then
Add_ULL_To_Name_Buffer
(
Q
,
B
,
S
-
1
);
end
if
;
Add_Char_To_Name_Buffer
(
Hex
(
Hex
'
First
+
Natural
(
R
)));
end
Add_ULL_To_Name_Buffer
;
-----------
-- Image --
-----------
...
...
src/backends/ocarina-backends-c_values.adb
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2008-2009 Telecom ParisTech, 2010-201
5
ESA & ISAE. --
-- Copyright (C) 2008-2009 Telecom ParisTech, 2010-201
6
ESA & ISAE. --
-- --
-- Ocarina is free software; you can redistribute it and/or modify under --
-- terms of the GNU General Public License as published by the Free Soft- --
...
...
@@ -39,14 +39,8 @@ package body Ocarina.Backends.C_Values is
package
OV
renames
Ocarina
.
AADL_Values
;
Hex
:
constant
String
:=
"0123456789ABCDEF"
;
package
VT
is
new
GNAT
.
Table
(
Value_Type
,
Value_Id
,
No_Value
+
1
,
10
,
10
);
subtype
ULL
is
Unsigned_Long_Long
;
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
);
---------
-- "*" --
---------
...
...
@@ -320,20 +314,6 @@ package body Ocarina.Backends.C_Values is
return
LV
;
end
"xor"
;
----------------------------
-- Add_ULL_To_Name_Buffer --
----------------------------
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
)
is
Q
:
constant
ULL
:=
U
/
B
;
R
:
constant
ULL
:=
U
mod
B
;
begin
if
Q
/=
0
or
else
S
>
1
then
Add_ULL_To_Name_Buffer
(
Q
,
B
,
S
-
1
);
end
if
;
Add_Char_To_Name_Buffer
(
Hex
(
Hex
'
First
+
Natural
(
R
)));
end
Add_ULL_To_Name_Buffer
;
-----------
-- Image --
-----------
...
...
src/backends/ocarina-backends-mast_values.adb
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2010-201
5
ESA & ISAE. --
-- Copyright (C) 2010-201
6
ESA & ISAE. --
-- --
-- Ocarina is free software; you can redistribute it and/or modify under --
-- terms of the GNU General Public License as published by the Free Soft- --
...
...
@@ -38,14 +38,8 @@ package body Ocarina.Backends.MAST_Values is
package
OV
renames
Ocarina
.
AADL_Values
;
Hex
:
constant
String
:=
"0123456789ABCDEF"
;
package
VT
is
new
GNAT
.
Table
(
Value_Type
,
Value_Id
,
No_Value
+
1
,
10
,
10
);
subtype
ULL
is
Unsigned_Long_Long
;
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
);
---------
-- "*" --
---------
...
...
@@ -301,20 +295,6 @@ package body Ocarina.Backends.MAST_Values is
return
LV
;
end
"xor"
;
----------------------------
-- Add_ULL_To_Name_Buffer --
----------------------------
procedure
Add_ULL_To_Name_Buffer
(
U
:
ULL
;
B
:
ULL
;
S
:
Integer
:=
1
)
is
Q
:
constant
ULL
:=
U
/
B
;
R
:
constant
ULL
:=
U
mod
B
;
begin
if
Q
/=
0
or
else
S
>
1
then
Add_ULL_To_Name_Buffer
(
Q
,
B
,
S
-
1
);
end
if
;
Add_Char_To_Name_Buffer
(
Hex
(
Hex
'
First
+
Natural
(
R
)));
end
Add_ULL_To_Name_Buffer
;
-----------
-- Image --
-----------
...
...
src/backends/ocarina-backends-pok_c.adb
View file @
2bbd1b82
...
...
@@ -215,6 +215,9 @@ package body Ocarina.Backends.POK_C is
elsif
S
=
"vxworks653"
then
POK_Flavor
:=
VXWORKS
;
elsif
S
=
"pok"
then
POK_Flavor
:=
POK
;
elsif
S
=
"no-assert"
then
Add_Assertions
:=
False
;
else
...
...
src/backends/ocarina-backends-properties.adb
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2008-2009 Telecom ParisTech, 2010-201
5
ESA & ISAE. --
-- Copyright (C) 2008-2009 Telecom ParisTech, 2010-201
6
ESA & ISAE. --
-- --
-- Ocarina is free software; you can redistribute it and/or modify under --
-- terms of the GNU General Public License as published by the Free Soft- --
...
...
@@ -193,6 +193,12 @@ package body Ocarina.Backends.Properties is
Scheduler_Quantum
:
Name_Id
;
Cheddar_Scheduler_Quantum
:
Name_Id
;
Frequency_Hz_Name
:
Name_Id
;
Frequency_Khz_Name
:
Name_Id
;
Frequency_Mhz_Name
:
Name_Id
;
Frequency_Ghz_Name
:
Name_Id
;
Processor_Frequency_Name
:
Name_Id
;
---------------------------------
-- AADL Connections properties --
---------------------------------
...
...
@@ -2856,6 +2862,13 @@ package body Ocarina.Backends.Properties is
Cheddar_Scheduler_Quantum
:=
Get_String_Name
(
"cheddar_properties::scheduler_quantum"
);
Frequency_Hz_Name
:=
Get_String_Name
(
"hz"
);
Frequency_Khz_Name
:=
Get_String_Name
(
"khz"
);
Frequency_Mhz_Name
:=
Get_String_Name
(
"mhz"
);
Frequency_Ghz_Name
:=
Get_String_Name
(
"ghz"
);
Processor_Frequency_Name
:=
Get_String_Name
(
"processor_properties::processor_frequency"
);
Connection_Binding
:=
Get_String_Name
(
"actual_connection_binding"
);
Transport_API
:=
Get_String_Name
(
"deployment::transport_api"
);
...
...
@@ -3712,9 +3725,10 @@ package body Ocarina.Backends.Properties is
------------------------------
function
Get_POK_Slots_Allocation
(
E
:
Node_Id
)
return
List_Id
is
pragma
Assert
(
AINU
.
Is_Processor
(
E
));
L
:
List_Id
;
begin
pragma
Assert
(
AINU
.
Is_Processor
(
E
));
if
Is_Defined_Property
(
E
,
POK_Slots_Allocation
)
then
L
:=
Get_List_Property
(
E
,
POK_Slots_Allocation
);
if
L
/=
No_List
then
...
...
@@ -4164,4 +4178,63 @@ package body Ocarina.Backends.Properties is
return
Check_And_Get_Property
(
D
,
Core_Id
);
end
Get_Core_Id
;
----------------------------------
-- Get_Frequency_Property_Value --
----------------------------------
function
Get_Frequency_Property_Value
(
C
:
Node_Id
;
Property_Name
:
Name_Id
)
return
Frequency_Type
is
V
:
Node_Id
;
U
:
Node_Id
;
Result
:
Frequency_Type
;
N
:
Name_Id
;
begin
if
Is_Defined_Integer_Property
(
C
,
Property_Name
)
then
V
:=
Get_Value_Of_Property_Association
(
C
,
Property_Name
);
if
Present
(
V
)
and
then
Present
(
Unit_Identifier
(
V
))
then
U
:=
Unit_Identifier
(
V
);
-- Get the size
Result
.
S
:=
Get_Integer_Property
(
C
,
Property_Name
);
-- Convert the value to its unit
N
:=
ATN
.
Name
(
U
);
if
N
=
Frequency_Hz_Name
then
Result
.
F
:=
Hz
;
elsif
N
=
Frequency_Khz_Name
then
Result
.
F
:=
Khz
;
elsif
N
=
Frequency_Mhz_Name
then
Result
.
F
:=
Mhz
;
elsif
N
=
Frequency_Ghz_Name
then
Result
.
F
:=
Ghz
;
else
Display_Located_Error
(
AIN
.
Loc
(
U
),
"Wrong unit"
,
Fatal
=>
True
);
return
((
0
,
Hz
));
end
if
;
end
if
;
return
Result
;
else
return
((
0
,
Hz
));
end
if
;
end
Get_Frequency_Property_Value
;
-----------------------------
-- Get_Processor_Frequency --
-----------------------------
function
Get_Processor_Frequency
(
P
:
Node_Id
)
return
Frequency_Type
is
pragma
Assert
(
AINU
.
Is_Processor
(
P
));
begin
return
Get_Frequency_Property_Value
(
P
,
Processor_Frequency_Name
);
end
Get_Processor_Frequency
;
end
Ocarina
.
Backends
.
Properties
;
src/backends/ocarina-backends-properties.ads
View file @
2bbd1b82
...
...
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2008-2009 Telecom ParisTech, 2010-201
5
ESA & ISAE. --