From 0e67e06127ca1a314e2ff69b7586e5b4651e49ee Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 16 Nov 2019 14:39:38 -0800 Subject: pidgin-sipe: Fix another case of struct incompatiblility due to 64bit time_t Signed-off-by: Khem Raj --- ...ts-casts-with-time_t-elements-to-8byte-bo.patch | 50 ++++++++++++++++++++++ .../recipes-support/pidgin/pidgin-sipe_1.25.0.bb | 1 + 2 files changed, 51 insertions(+) create mode 100644 meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch diff --git a/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch b/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch new file mode 100644 index 0000000000..87a6435f7e --- /dev/null +++ b/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch @@ -0,0 +1,50 @@ +From 1110d3036e73d0571f70f6758f3179e5048c0b5d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 16 Nov 2019 11:07:42 -0800 +Subject: [PATCH] Align structs casts with time_t elements to 8byte boundary + +This helps with 64bit time_t conversion, especially where these +structures are typcasted to another struct types which have time_t +element, that now increases the natural alignment boundary of structures +to 8-bytes. + +Fixes +../../../pidgin-sipe-1.25.0/src/core/sipe-user.c:124:43: error: cast from 'struct sipe_core_public *' to 'struct sipe_core_private *' increases required alignment from 4 to 8 [-Werror,-Wcast-align] + struct sipe_core_private *sipe_private = SIPE_CORE_PRIVATE; + ^~~~~~~~~~~~~~~~~ +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + src/api/sipe-core.h | 2 +- + src/core/sipe-http-transport.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/api/sipe-core.h b/src/api/sipe-core.h +index cde0a9c..bd818bb 100644 +--- a/src/api/sipe-core.h ++++ b/src/api/sipe-core.h +@@ -148,7 +148,7 @@ struct sipe_core_public { + + /* server information */ + /* currently nothing */ +-}; ++} __attribute__((aligned(8))); + + /** + * Initialize & destroy functions for the SIPE core +diff --git a/src/core/sipe-http-transport.h b/src/core/sipe-http-transport.h +index d82cd1b..08eb150 100644 +--- a/src/core/sipe-http-transport.h ++++ b/src/core/sipe-http-transport.h +@@ -46,7 +46,7 @@ struct sipe_http_connection_public { + gchar *host; + guint32 port; + gboolean connected; +-}; ++} __attribute__((aligned(8))); + + /** + * Check if we're shutting down the HTTP stack +-- +2.24.0 + diff --git a/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb b/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb index 7dc63164e3..99fcf3c6d0 100644 --- a/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb +++ b/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb @@ -9,6 +9,7 @@ inherit autotools gettext pkgconfig SRC_URI = "${SOURCEFORGE_MIRROR}/sipe/pidgin-sipe-${PV}.tar.xz \ file://0001-sipe-consider-64bit-time_t-when-printing.patch \ + file://0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch \ " SRC_URI[md5sum] = "0e742f021dc8c3f17435aea05c3e0314" -- cgit v1.2.3-54-g00ecf