AArch64 support 04/19504/1
authorVyacheslav Barinov <v.barinov@samsung.com>
Mon, 14 Apr 2014 06:19:04 +0000 (10:19 +0400)
committerVyacheslav Barinov <v.barinov@samsung.com>
Mon, 14 Apr 2014 06:44:32 +0000 (10:44 +0400)
Tizen toolchain team in Samsung company is planning to build Tizen
for new arm 64 bit architecture - Aarch64. But package "msg-service"
cannot be built for this architecture because of build errors.

The main problem is pointer size change, so fix is equal to one used for
x86_64 platform.

Change-Id: I3608247e3c95e220aee3ffffa4de63243435fbff
Signed-off-by: Vyacheslav Barinov <v.barinov@samsung.com>
framework/transaction-manager/MsgCmdHandlerTransport.cpp
include/common/MsgInternalTypes.h
proxy/MsgHandleTransport.cpp

index 694cbff..67247ef 100755 (executable)
@@ -366,7 +366,7 @@ int MsgSentStatusHandler(const MSG_CMD_S *pCmd, char **ppEvent)
                return MsgMakeEvent(NULL, 0, MSG_EVENT_PLG_SENT_STATUS_CNF, MSG_SUCCESS, (void**)ppEvent);
        }
 
-#ifdef __x86_64__
+#if defined(__x86_64__) || defined(__aarch64__)
        uint64_t ret[3] = {0}; //3// reqid, status, object
 #else
        unsigned int ret[3] = {0}; //3// reqid, status, object
@@ -555,7 +555,7 @@ __BYPASS_UPDATE:
                                return MsgMakeEvent(NULL, 0, MSG_EVENT_PLG_SENT_STATUS_CNF, MSG_SUCCESS, (void**)ppEvent);
                        }
 
-#ifdef __x86_64__
+#if defined(__x86_64__) || defined(__aarch64__)
                        uint64_t ret[3] = {0}; //3// reqid, status, object
 #else
                        unsigned int ret[3] = {0}; //3// reqid, status, object
index 9ba43e3..d4206d9 100755 (executable)
@@ -345,7 +345,7 @@ typedef struct
 typedef struct
 {
        int                                             listenerFd;             /**< Rx fd for status cnf */
-#ifdef __x86_64__
+#if defined(__x86_64__) || defined(__aarch64__)
        uint64_t                                handleAddr;             /**< Handle address for status cnf */
 #else
        unsigned int                    handleAddr;             /**< Handle address for status cnf */
index 405076a..0c03d9c 100755 (executable)
@@ -115,7 +115,7 @@ msg_error_t MsgHandle::submitReq(MSG_REQUEST_S* pReq)
 
        chInfo.listenerFd = MsgProxyListener::instance()->getRemoteFd();
 
-#ifdef __x86_64__
+#if defined(__x86_64__) || defined(__aarch64__)
        chInfo.handleAddr = (uint64_t) this;
 #else
        chInfo.handleAddr = (unsigned int) this;