Git Product home page Git Product logo

polyorb-hi-ada's Introduction

PolyORB-HI/Ada runtime

About

PolyORB-HI/Ada is a high-integrity middleware. It provides core middleware constructs, and must be used in conjunction with code generation from AADL models by Ocarina.

PolyORB-HI/Ada is implemented in Ada 2012, and is compatible with native and Ravenscar Ada runtimes. It has been tested on Linux, OS X, Windows and RTEMS.

Installation

The recommended installation process is through the proper configuration and installation of Ocarina, see Ocarina documentation for details.

Q&A

Build status Ocarina / Ubuntu (default GNAT)

polyorb-hi-ada's People

Contributors

jjhugues avatar maxime-esa avatar yoogx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

polyorb-hi-ada's Issues

Support for large messages

In its current implementation, PolyORB-HI/Ada is limited to packed of size < 64KiB. This should be changed to 4GiB

Possible missing file "env"

I downloaded polyorb-hi-ada through "git clone". In reading your README and INSTALL files they said to source the file "env" to setup the necessary environment variables. I can not locate this file. I even searched for it by using the command "find . | grep env" with no results. I also hand search you site in case git did not retrieve it and did not find an env file. So where can I find this file or a copy of its contents?

Thanks,

Can compile the user's guide from the doc folder

Dear Prof. Jerome Hugues,
I try to use the command "make -f Makefile.am" to compile to doc folder, there is an error I can't fix:

make: *** No rule to make target '/polyorb-hi_ug_ref.tex', needed by 'polyorb-hi_ug_ref.aux'. Stop.
I check the 'polyorb-hi_ug_ref.tex', including a file called 'btxmac'. However, I can't find the file from this project or the Ocarina project.

Could you please give me some suggestions? Many Thanks!

Best wishes,

Use of the secondary stack

It's impossible to use the current POHI-Ada mechanism to add drivers for the STM32F4 platform (building with GNAT2017).

One issue is that there are exceptions raised by the pragma Debug statements in polyorb_hi-thread_interrogators.adb. In particular the "+" operator redefined for String types, and used in such statements:

         pragma Debug (Put_Line
                       (Verbose,
                        CE
                        + ": Wait_Event: oldest unread event port = "
                        + Thread_Port_Images (P)));

But even in Release mode, stack overflows occur and crash the application.

build error

OCARINA-VERSION
Ocarina 2.0w (Working Copy from rc77bf46)
Build date: Sunday 24 May 2015, 12:23:27
Copyright (c) 2003-2009 Telecom ParisTech, 2010-2015 ESA & ISAE
HOST-MACHINE and OS
ubuntu14.04 on x64
gcc 4.8.2
automake 1.14.1
autoconf 2.69

when I run support/reconfig It generates the following message.

Running aclocal
Running autoconf
Running automake
examples/aadlv1/d3.1.3-1/Makefile.am:9: warning: variable 'AADL_SOURCES' is defined but no program or
examples/aadlv1/d3.1.3-1/Makefile.am:9: library has 'AADL' as canonical name (possible typo)
examples/aadlv1/d3.1.3-1_extended/Makefile.am:9: warning: variable 'AADL_SOURCES' is defined but no program or
examples/aadlv1/d3.1.3-1_extended/Makefile.am:9: library has 'AADL' as canonical name (possible typo)
examples/aadlv1/delayed_connections/Makefile.am:9: warning: variable 'AADL_SOURCES' is defined but no program or
examples/aadlv1/delayed_connections/Makefile.am:9: library has 'AADL' as canonical name (possible typo)
examples/aadlv1/flight_mgmt/Makefile.am:9: warning: variable 'AADL_SOURCES' is defined but no program or
examples/aadlv1/flight_mgmt/Makefile.am:9: library has 'AADL' as canonical name (possible typo)

then I build examples and it fails.

make[4]: Entering directory `/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping/ping_native/node_a'
ADA_PROJECT_PATH="/usr/local/include/ocarina/runtime/polyorb-hi-ada:$ADA_PROJECT_PATH" \
      gnatmake -x -Pnode_a.gpr -XTARGET=NATIVE -XBUILD=Debug -XCGCTRL=No  -largs   
polyorb_hi.gpr:172:07: warning: value "Analyzable" is not used as label
gcc-4.6 -c -g -gnatec=/usr/local/include/ocarina/runtime/polyorb-hi-ada/gnat.adc -gnatec=/usr/local/include/ocarina/runtime/polyorb-hi-ada/native.adc -gnatwa -gnatwG -gnat12 -g -O1 -gnata -gnato -I- -gnatA /home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping/ping_native/node_a/node_a.adb
/usr/local/include/ocarina/runtime/polyorb-hi-ada/gnat.adc:19:01: unrecognized pragma in configuration file
gnatmake: "/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping/ping_native/node_a/node_a.adb" compilation error
make[4]: *** [all] Error 4
make[4]: Leaving directory `/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping/ping_native/node_a'
Backends: fatal error : /usr/bin/make died unexpectedly
make[3]: *** [scenario] Error 2
make[3]: Leaving directory `/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping'
make[2]: *** [build-all] Error 2
make[2]: Leaving directory `/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping'
make[1]: *** [scenarios] Error 1
make[1]: Leaving directory `/home/yj/openaadl/ocarina/resources/runtime/polyorb-hi-ada/examples/aadlv2/ping'
make: *** [build-all] Error 2

pragma Restriction in gnat.adc

On native platforms there is a pragma Restrictions (No_Streams) specified in gnat.adc. However, the serial driver for native platforms (polyorb_hi_drivers_native_uart.adb) - as well as other serial drivers - include and use Ada.Streams. Because of this, the native builds that use serial drivers fail.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.