Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .lycheeignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,9 @@ https://github.com/eclipse-iceoryx/iceoryx/compare/vx.x.x...vx.x.x
https://github.com/eclipse-iceoryx/iceoryx/tree/vx.x.x
https://www.misra.org.uk/
https://www.gnu.org/software/screen/
https://www.etas.com/
# Remove after v3.0 release
https://github.com/eclipse-iceoryx/iceoryx/tree/v3.0.0
https://github.com/eclipse-iceoryx/iceoryx/compare/v2.0.6...v3.0.0

iceoryx-dev@eclipse.org
52 changes: 29 additions & 23 deletions doc/aspice_swe3_4/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,33 +53,12 @@ swcomponent="@par Software Component:" \
error="@par Error Handling:" \
generatedcode="@par Generated by:"]])

# Do not add new sub-components in this list but use 'INCLUDE_DIR_AND_ADDITIONAL_FILES'
set(COMPONENTS iceoryx_platform iceoryx_hoofs iceoryx_posh iceoryx_binding_c
iceoryx_introspection iceoryx_component)
set(COMPONENT_DIRS
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_platform/generic
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/buffer
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/cli
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/concurrent/buffer
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/concurrent/sync
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/container
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/design
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/filesystem
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/functional
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/legacy/include
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/memory
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/auth
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/desig
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/filesystem
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/ipc
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/sync
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/time
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/utility
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/vocabulary
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/primitives
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/reporting
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/time
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/utility
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/vocabulary
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/legacy
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_posh
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_binding_c
${CMAKE_CURRENT_SOURCE_DIR}/../../tools/introspection
Expand Down Expand Up @@ -117,6 +96,33 @@ foreach(val RANGE ${cmp_len})
)
endif()

if(${cmp} STREQUAL iceoryx_hoofs)
list(APPEND INCLUDE_DIR_AND_ADDITIONAL_FILES
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/buffer
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/cli
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/concurrent/buffer
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/concurrent/sync
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/container
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/design
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/filesystem
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/functional
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/memory
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/auth
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/design
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/filesystem
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/ipc
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/sync
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/time
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/utility
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/posix/vocabulary
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/primitives
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/reporting
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/time
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/utility
${CMAKE_CURRENT_SOURCE_DIR}/../../iceoryx_hoofs/vocabulary
)
endif()

doxygen_add_docs(doxygen_${cmp}
${INCLUDE_DIR_AND_ADDITIONAL_FILES}
WORKING_DIRECTORY ${cmp_dir}/include
Expand Down
9 changes: 9 additions & 0 deletions doc/website/advanced/available-bindings-extensions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Available bindings and extensions

The following bindings and extensions are available for iceoryx:

| Name | Description | Link |
|---------------------|-----------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------|
| DDS gateway | Gateway to the DDS protocol using [Cyclone DDS](https://cyclonedds.io/) or [FastDDS](https://github.com/eProsima/Fast-DDS) | [https://github.com/eclipse-iceoryx/iceoryx-gateway-dds](https://github.com/eclipse-iceoryx/iceoryx-gateway-dds) |
| Rust binding | Binding to use the C++ version of iceoryx in Rust projects | [https://github.com/eclipse-iceoryx/iceoryx-rs](https://github.com/eclipse-iceoryx/iceoryx-rs) |
| ara::com binding | Binding to use iceoryx in [AUTOSAR Adaptive](https://www.autosar.org/standards/adaptive-platform/) projects | [https://github.com/eclipse-iceoryx/iceoryx-automotive-soa](https://github.com/eclipse-iceoryx/iceoryx-automotive-soa) |
14 changes: 7 additions & 7 deletions doc/website/advanced/iceoryx-on-32-bit.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Status
# iceoryx on 32 bit architectures

iceoryx works on 32-bit hardware, but only as technology preview and is not meant for production.

See also https://github.com/eclipse-iceoryx/iceoryx/issues/2301 for more details and the limitations sections in this document.
See also [here](https://github.com/eclipse-iceoryx/iceoryx/issues/2301) for more details and the limitations sections in this document.

# Dependencies
## Dependencies

For 32-bit support, the following packages need to be installed on ubuntu

Expand All @@ -13,7 +13,7 @@ sudo dpkg --add-architecture i386
sudo apt install libacl1-dev:i386 libc6-dev-i386 libc6-dev-i386-cross libstdc++6-i386-cross gcc-multilib g++-multilib
```

# iceoryx as 32-bit library
## iceoryx as 32-bit library

## Build steps

Expand Down Expand Up @@ -42,7 +42,7 @@ Furthermore, it is required for the 32-64 bit mix-mode to enforce the same data
An internal data structure, the `UsedChunkList`, might be left in a corrupt state when an application terminates abnormally when writing to this data structure.
In order to detect torn-writes on 32-bit, the data structure needs to be refactored.

# iceoryx for communication between 32-bit and 64-bit applications aka 32-64 bit mix-mode
## iceoryx for communication between 32-bit and 64-bit applications aka 32-64 bit mix-mode

## Attention

Expand All @@ -65,7 +65,7 @@ If the layout differs, it can lead to unpredictable behavior and errors in the a

The simplest way to fix this specific alignment issue, is to use the `-malign-double` flag, which enforces an 8 byte alignment boundary for 64-bit data types on 32-bit architectures.

## Build steps
### Build steps

Similar to the 32-bit build, the simplest way to build for the 32-64 bit mix-mode is the `iceoryx_build_test.sh` script

Expand Down Expand Up @@ -102,7 +102,7 @@ build-64/iceoryx_examples/request_response/iox-cpp-request-response-listener-ser
build-32/iceoryx_examples/request_response/iox-cpp-request-response-waitset-client
```

## Limitations
### Limitations

In addition to the limitations of the 32-bit iceoryx, the mix-mode needs to ensure that all the data structures in shared memory have the same layout.
While the `-malign-double` flag can be used for the iceoryx data types, it does not work for POSIX data structures like `sem_t`.
Expand Down
16 changes: 16 additions & 0 deletions doc/website/advanced/roudi-command-line-arguments.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Command line arguments of RouDi

To view the available command line options for RouDi call `$ICEORYX_ROOT/build/iox-roudi --help`.

| Short | Long | Parameter | Explanation |
|-------|---------------------|---------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| -h | --help | None | Prints the available options |
| -v | --version | None | Prints the version string |
| -d | --domain-id | Unsigned integer | Sets the domain id. No communication can happen between different domains. Experimental feature! |
| -u | --unique-roudi-id | Unsigned integer | Sets the unique RouDi identifier |
| -m | --monitoring-mode | String (on, off) | Enables or disables the process alive monitoring feature. If enable RouDi terminates and kills unresponsive process. |
| -l | --log-level | String (off, fatal, error, warning, info, debug, trace) | Set the log level. Default log level is 'info'. |
| -x | --compatibility | String (off, major, minor, patch, commitId, buildDate) | Sets the compatibility check level between application and RouDi. Default is 'patch'. This can be useful if old apps are build against and old iceoryx version. Use with care! |
| -t | --termination-delay | Unsigned integer | Sets the delay in seconds before RouDi sends SIGTERM to running applications at shutdown. Default is '0'. |
| -k | --kill-delay | Unsigned integer | Sets the delay in seconds before RouDi sends SIGKILL to application which did not respond to the initial SIGTERM signal. Default is '45'. |
| -c | --config-file | String (Absolute filesystem path to a config in YAML format) | Sets the config file. If option is not given, fallbacks in descending order: 1. /etc/iceoryx/roudi_config.toml 2. hard-coded config. See [configuration guide](configuration-guide.md#dynamic-configuration) for information on the format. |
4 changes: 2 additions & 2 deletions doc/website/concepts/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ This article provides an overview of the Eclipse iceoryx architecture and explai

The main packages which Eclipse iceoryx is composed of are depicted below.

![Software layers](../images/iceoryx_software_layers_v2_0_0.svg)
![Software layers](../images/iceoryx_software_layers_v3_0_0.svg)

The next sections briefly describe the components and their libraries one by one.

## Components and libraries

The different libraries and their namespaces are depicted below.

![Component diagram](../images/iceoryx_components_diagram_v2_0_0.svg)
![Component diagram](../images/iceoryx_components_diagram_v3_0_0.svg)

### iceoryx hoofs

Expand Down
Loading
Loading