Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
regression-suites
Commits
a89dc0ed
Commit
a89dc0ed
authored
Feb 14, 2018
by
Maxime Perrotin
Browse files
Update build script
parent
0cd1b435
Changes
1
Hide whitespace changes
Inline
Side-by-side
Demo_TwoCallers/build-script.sh
View file @
a89dc0ed
#!/bin/bash
#!/bin/bash
-e
# This script will build your TASTE system.
# You should check it before running it to make it fit with your context:
# 1) You may need to fix some paths and filenames (path to interface/deployment views)
# 2) You may need to specify additional paths for the compiler to find .h file
# (e.g. "export C_INCLUDE_PATH=/usr/include/xenomai/analogy/:$C_INCLUDE_PATH")
# 3) You may need to link with pre-built libraries, using the -l option
# (e.g. -l /usr/lib/libanalogy.a,/usr/lib/librtdm.a)
# 4) You may need to change the runtime (add -p flag to select PolyORB-HI-C)
# etc.
# You should not change this file as it was automatically generated.
# Note: TASTE will not overwrite your changes - if you need to update some parts
# you will have to merge the changes with the newly-created file.
# If you need additional preprocessing, there are three hook files
# that you can provide and that are called dring the build:
# user_init_pre.sh, user_init_post.sh and user_init_last.sh
# These files will never get overwritten by TASTE.'
taste-update-data-view
||
exit
1
# Inside these files you may set some environment variables:
# C_INCLUDE_PATH=/usr/include/xenomai/analogy/:${C_INCLUDE_PATH}
# unset USE_POHIC
CWD
=
$(
pwd
)
if
[
-t
1
]
;
then
COLORON
=
"
\e
[1m
\e
[32m"
COLOROFF
=
"
\e
[0m"
else
COLORON
=
""
COLOROFF
=
""
fi
INFO
=
"
${
COLORON
}
[INFO]
${
COLOROFF
}
"
if
[
-f
user_init_pre.sh
]
then
echo
-e
"
${
INFO
}
Executing user-defined init script"
source
user_init_pre.sh
fi
# Use PolyORB-HI-C runtime
USE_POHIC
=
1
# Set Debug mode by default
DEBUG_MODE
=
--debug
# Detect models from Ellidiss tools v2, and convert them to 1.3
INTERFACEVIEW
=
InterfaceView.aadl
grep
"version =>
\"
2"
InterfaceView.aadl
>
/dev/null
&&
{
echo
-e
"
${
INFO
}
Converting interface view from V2 to V1.3"
TASTE
--load-interface-view
InterfaceView.aadl
--export-interface-view-to-1_3
__iv_1_3.aadl
INTERFACEVIEW
=
__iv_1_3.aadl
}
;
if
[
-z
"
$DEPLOYMENTVIEW
"
]
then
DEPLOYMENTVIEW
=
DeploymentView.aadl
fi
# Detect models from Ellidiss tools v2, and convert them to 1.3
grep
"version =>
\"
2"
"
$DEPLOYMENTVIEW
"
>
/dev/null
&&
{
echo
-e
"
${
INFO
}
Converting deployment view from V2 to V1.3"
TASTE
--load-deployment-view
"
$DEPLOYMENTVIEW
"
--export-deployment-view-to-1_3
__dv_1_3.aadl
DEPLOYMENTVIEW
=
__dv_1_3.aadl
}
;
SKELS
=
"./"
cd
"
$SKELS
"
rm
-f
f1.zip
zip f1 f1/
*
rm
-f
f2.zip
zip f2 f2/
*
rm
-f
f3.zip
zip f3 f3/
*
rm
-f
f4.zip
zip f4 f4/
*
cd
"
$OLDPWD
"
# Check if Dataview references existing files
mono
$(
which taste-extract-asn-from-design.exe
)
-i
"
$INTERFACEVIEW
"
-j
/tmp/dv.asn
# Generate code for OpenGEODE function f1
cd
"
$SKELS
"
/f1
&&
opengeode
--toAda
f1.pr system_structure.pr
&&
cd
$OLDPWD
# Generate code for OpenGEODE function f2
cd
"
$SKELS
"
/f2
&&
opengeode
--toAda
f2.pr system_structure.pr
&&
cd
$OLDPWD
# Generate code for OpenGEODE function f3
cd
"
$SKELS
"
/f3
&&
opengeode
--toAda
f3.pr system_structure.pr
&&
cd
$OLDPWD
# Generate code for OpenGEODE function f4
cd
"
$SKELS
"
/f4
&&
opengeode
--toAda
f4.pr system_structure.pr
&&
cd
$OLDPWD
cd
"
$SKELS
"
&&
rm
-f
f1.zip
&&
zip f1 f1/
*
&&
cd
$OLDPWD
[
!
-z
"
$CLEANUP
"
]
&&
rm
-rf
binary
cd
"
$SKELS
"
&&
rm
-f
f2.zip
&&
zip f2 f2/
*
&&
cd
$OLDPWD
cd
"
$SKELS
"
&&
rm
-f
f3.zip
&&
zip f3 f3/
*
&&
cd
$OLDPWD
cd
"
$SKELS
"
&&
rm
-f
f4.zip
&&
zip f4 f4/
*
&&
cd
$OLDPWD
[
!
-z
"
$CLEANUP
"
]
&&
rm
-rf
binary
*
if
[
-f
ConcurrencyView.pro
]
then
ORCHESTRATOR_OPTIONS+
=
" -w ConcurrencyView.pro "
elif
[
-f
ConcurrencyView_Properties.aadl
]
then
ORCHESTRATOR_OPTIONS+
=
" -w ConcurrencyView_Properties.aadl "
fi
if
[
-f
user_init_post.sh
]
then
echo
-e
"
${
INFO
}
Executing user-defined post-init script"
source
user_init_post.sh
fi
if
[
-f
additionalCommands.sh
]
then
source
additionalCommands.sh
fi
if
[
!
-z
"
$USE_POHIC
"
]
...
...
@@ -51,12 +112,13 @@ then
else
OUTPUTDIR
=
binary
fi
assert-builder-ocarina.py
\
--fast
-p
\
--debug
\
cd
"
$CWD
"
&&
assert-builder-ocarina.py
\
--fast
\
$DEBUG_MODE
\
--aadlv2
\
--keep-case
\
--interfaceView
InterfaceView.aadl
\
--interfaceView
"
$INTERFACEVIEW
"
\
--deploymentView
"
$DEPLOYMENTVIEW
"
\
-o
"
$OUTPUTDIR
"
\
--subAda
f1:
"
$SKELS
"
/f1.zip
\
...
...
@@ -64,3 +126,10 @@ assert-builder-ocarina.py \
--subAda
f3:
"
$SKELS
"
/f3.zip
\
--subAda
f4:
"
$SKELS
"
/f4.zip
\
$ORCHESTRATOR_OPTIONS
if
[
-f
user_init_last.sh
]
then
echo
-e
"
${
INFO
}
Executing user-defined post-build script"
source
user_init_last.sh
fi
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment