현재 최신 meta-ivi 를 파악하고자한다.
CommonAPI 필요부분
소스코드 링크는 다음과 같다. : https://github.com/GENIVI/meta-ivi
meta-ivi Download
- 다운로드 및 해당 브랜치로 변경
$ git clone https://github.com/GENIVI/meta-ivi.git $ cd meta-ivi $ git log commit 8efbab9130de3fedd62ef5ac6ad6fe138df610d9 (HEAD -> master, origin/master, origin/HEAD) Author: Oscar Andreasson <oscar.andreasson@pelagicore.com> Date: Fri May 4 11:04:32 2018 +0200 qemu_2: Remove dependency on libusb
This is a really old dependency append it's causing issues in builds relying on the meta-ivi layer. Removing it as it doesn't seem necessary.
Signed-off-by: Oscar Andreasson <oscar.andreasson@pelagicore.com> |
14.x 버전 대이다.
- meta-ivi/meta-ivi/recipes-extended
- 해당경로에는 다음과 같은 놈들이 존재한다.
common-api dlt-daemon node-health-monitor node-startup-controller node-state-manager persistence-administrator persistence-client-library persistence-common-object |
여기서 나는 common-api 가 필요하므로 해당 폴더를 파악한다.
capicxx-core-native_3.1.12.bb capicxx-dbus-native_3.1.12.bb capicxx-someip-native_3.1.12.bb common-api-c++_3.1.12.bb common-api-c++-dbus_3.1.12.bb common-api-c++-someip_3.1.12.bb |
dbus 관련 패치가 존재한다.
해당파일 : ./recipes-core-ivi/dbus/dbus_%.bbappend
FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" # add support for GENIVI CommonAPI D-Bus runtime # - https://genivi-oss.atlassian.net/wiki/display/COMMONAPICPP/CommonAPI-cpp SRC_URI_append = " \ file://capi-dbus-add-send-with-reply-set-notify.patch \ file://capi-dbus-add-support-for-custom-marshalling.patch \ file://0001-dbus-fix-possible-uninitialized-variable.patch \ " SRC_URI_append_qemux86 = " file://build_fix-ubunt1604-qemux86.patch" |
dbus 관련하여 어떠한 패치들이 존재하는지 검토해본다.
현재 존재하는 패치는 다음과 같다.
0001-dbus-fix-possible-uninitialized-variable.patch capi-dbus-add-support-for-custom-marshalling.patch capi-dbus-send-with-reply-and-block-delete-reply-on-error.patch build_fix-ubunt1604-qemux86.patch capi-dbus-block-acquire-io-path-on-send.patch capi-dbus-add-send-with-reply-set-notify.patch capi-dbus-correct-dbus-connection-block-pending-call.patch |
capi-dbus 패치관련하여 파헤쳐 볼것이다.
capi-dbus-add-support-for-custom-marshalling.patch
+add dbus/dbus-message.c
dbus_bool_t dbus_message_set_signature (DBusMessage *message, const char *signature) { _dbus_return_val_if_fail (message != NULL, FALSE); _dbus_return_val_if_fail (!message->locked, FALSE); _dbus_return_val_if_fail (signature == NULL || _dbus_check_is_valid_signature (signature), FALSE); /* can't delete the signature if you have a message body */ _dbus_return_val_if_fail (_dbus_string_get_length (&message->body) == 0 || signature != NULL, FALSE); return set_or_delete_string_field (message, DBUS_HEADER_FIELD_SIGNATURE, DBUS_TYPE_SIGNATURE, signature); } |
+dbus/dbus-string.h
#define _dbus_string_get_allocated(s) (((DBusString*)(s))->dummy3 - _DBUS_STRING_ALLOCATION_PADDING) #ifndef _dbus_string_get_allocated int _dbus_string_get_allocated (const DBusString *str); #endif /* !_dbus_string_get_allocated */ |
'Yocto > GENIVI' 카테고리의 다른 글
[eclipse]Franca IDL 설치 (0) | 2018.05.23 |
---|---|
CommonAPI 설치 (0) | 2018.05.23 |