| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
bytes is smaller than the start and the end tag.
|
| |
|
|
|
| |
local service.
|
| |
|
|
|
|
| |
Renamed main service object (host_io_ to io_).
Removed some log messages.
|
| |
|
|
|
| |
undefined anyway).
|
| |
|
| |
|
|
|
| |
to the transition function.
|
| |
|
|
|
| |
description to run the tests.
|
|
|
|
| |
unconfigured port. Fix a bug that let the routing manager try to access
an already removed service group.
|
| |
|
| |
|
| |
|
|
|
|
| |
considered connected as long as the sender endpoint (to the routing
manager stub) is connected.
|
|
|
|
|
| |
instance is available anymore. Otherwise, malformed routing info
messages are generated from the routing manager stub which crash the
attached routing manager proxies.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Compiling the examples with GCC 4.7.2 fails with:
error: 'sleep_for' is not a member of 'std::this_thread'
General hints on the Internet [1, 2] explain the issue with
GCC 4.7.2. Hence, this commit adds the specific _GLIBCXX_USE_NANOSLEEP
definition that makes the compilation with GCC 4.7.2 possible.
[1]
http://stackoverflow.com/questions/12523122/what-is-glibcxx-use-nanosleep-all-about
[2]
http://stackoverflow.com/questions/4438084/stdthis-threadsleep-for-and-gcc
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
| |
|
|
|
|
|
| |
requires an additional compile flag on FreeBSD. Therefore, a new
variable (OS_CXX_FLAGS) was introduced to allow setting OS-specific
compile flags and was set to "-pthread" for FreeBSD.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
implementation used the event identifiers instead of the specific
identifiers for setters and getters.
As it is not possible to hide the specific get/set identifier from an
application without changing method/event identifiers, the
responsibility for implementing get/set is shifted to the application
layer.
Introduced a new interface function "notify", which can be used by an
application to update a local event with a given payload. This function
should be called whenever an event/field changes its value, thus it is
especially useful for implementing the set function.
Adapted the subscribe/notify sample to use the new interface.
Signed-off-by: Lutz Bichler <Lutz.Bichler@bmw.de>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building vsomeip against boost version 1.56.0, the build fails with:
Building CXX object CMakeFiles/vsomeip.dir/implementation/routing/src/routing_manager_stub.cpp.o
Building CXX object CMakeFiles/vsomeip.dir/implementation/runtime/src/application_impl.cpp.o
...
[...]/implementation/runtime/src/application_impl.cpp: In member function 'virtual void vsomeip::application_impl::on_error(vsomeip::error_code_e)':
[...]/implementation/runtime/src/application_impl.cpp:302:2: error: 'cerr' is not a member of 'std'
std::cerr << "ERROR " << (int) _error << std::endl;
^
[...]/implementation/routing/src/routing_manager_stub.cpp: In member function 'void vsomeip::routing_manager_stub::on_pong(vsomeip::client_t)':
[...]/implementation/routing/src/routing_manager_stub.cpp:331:3: error: 'cerr' is not a member of 'std'
std::cerr << "Received PONG from unregistered application!"
^
make[2]: *** [CMakeFiles/vsomeip.dir/implementation/routing/src/routing_manager_stub.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/vsomeip.dir/implementation/runtime/src/application_impl.cpp.o] Error 1
...
make[1]: *** [CMakeFiles/vsomeip.dir/all] Error 2
make: *** [all] Error 2
and similarly during the build of the configuration test:
[...]/test/configuration-test.cpp: In function 'int main(int, char**)':
[...]/test/configuration-test.cpp:77:3: error: 'cerr' is not a member of 'std'
std::cerr << "Usage: " << argv[0] << " --someip <path>" << std::endl;
^
make[2]: *** [CMakeFiles/configuration-test.dir/test/configuration-test.cpp.o] Error 1
make[1]: *** [CMakeFiles/configuration-test.dir/all] Error 2
make: *** [all] Error 2
The vsomeip build with the same build setup, namely the
bitbake/OpenEmbedded-Core tool chain, but with boost version 1.55.0
does not fail. Probably in version 1.55.0, the boost libraries that
vsomeip depends on include the iostream header, which defines the
std::cerr function, whereas in version 1.56.0, these boost
libraries do not include the header any longer.
Hence, this commit includes the iostream header in the three cpp
files that caused the build to fail. It was tested that when this
commit is applied, the vsomeip build succeeds with boost versions
1.55.0 and 1.56.0.
This issue was discovered while creating a bitbake/OpenEmbedded
recipe for vsomeip due to the PANDA project activities. Through
`git bisect` on the OpenEmbedded-Core repository, the build failure
with later versions of OpenEmbedded-Core could be tracked down to
the OpenEmbedded-Core commit
a6afd754290cecbe57392d13477557051b438817 (boost: Upgrade to 1.56.0),
which led to the speculation of the reason above.
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
|
|
| |
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
|
|
| |
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
|
|
| |
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
|
|
| |
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When compile the sources with the bitbake/OpenEmbedded-Core tool
chain with versions bitbake: 1.23.1 and openembedded-core:
47d1fc9f5c38f3d092937c47bd4c2f45adaa7fe6, it fails when linking
with:
Linking CXX executable magic-cookies-test-client
/[...]/build/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.9.1/ld: CMakeFiles/magic-cookies-test-client.dir/test/magic-cookies-test-client.cpp.o: undefined reference to symbol 'pthread_key_delete@@GLIBC_2.4'
/[...]/build/tmp-eglibc/sysroots/qemuarm/lib/libpthread.so.0: error adding symbols: DSO missing from command line
This commit resolves the failure by explicitly searching for the
Threads library and linking it against the executable. It has been
successfully tested on Ubuntu Linux 14.04 and the above mentioned
tool chain.
The CMake manuals mention that this solution should also work on
other platforms, e.g., Windows, BSD and Mac OS X. However, due to
the unavailability of development environments for the other
platforms, this commit was not tested on them. The linking problem
only occurs for the magic-cookies-test-client executable, but not
with the other executables. It is probably mostly related to the
setup of the tool chain and the specific way of linking for the one
executable. However, the deeper cause for this failure remains
unclear.
Signed-off-by: Lukas Bulwahn, BMW Car IT GmbH <Lukas.Bulwahn@bmw.de>
|