<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/recipes-support/libffi, branch kirkstone</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2024-11-02T13:32:36+00:00</updated>
<entry>
<title>libffi: backport a fix to build libffi-native with gcc-14</title>
<updated>2024-11-02T13:32:36+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>martin.jansa@gmail.com</email>
</author>
<published>2024-10-27T17:02:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7274615f22479c47dd37f2fd438737ac086a59c1'/>
<id>urn:sha1:7274615f22479c47dd37f2fd438737ac086a59c1</id>
<content type='text'>
(From OE-Core rev: 1054417a217417ab192dc4aee8307133451fb0e4)

Signed-off-by: Martin Jansa &lt;martin.jansa@gmail.com&gt;
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
</content>
</entry>
<entry>
<title>libffi: upgrade 3.4.2 -&gt; 3.4.4</title>
<updated>2022-12-01T19:35:04+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2022-11-07T14:54:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=844f11d08d35e09f8ef6cc1032b4ba7c2aae9adc'/>
<id>urn:sha1:844f11d08d35e09f8ef6cc1032b4ba7c2aae9adc</id>
<content type='text'>
3.4.4 Oct-23-2022
    Important aarch64 fixes, including support for linux builds
      with Link Time Optimization (-flto).
    Fix x86 stdcall stack alignment.
    Fix x86 Windows msvc assembler compatibility.
    Fix moxie and or1k small structure args.

3.4.3 Sep-19-22
    All struct args are passed by value, regardless of size, as per ABIs.
    Enable static trampolines for Cygwin.
    Add support for Loongson's LoongArch64 architecture.
    Fix x32 static trampolines.
    Fix 32-bit x86 stdcall stack corruption.
    Fix ILP32 aarch64 support.

License-Update: copyright years

(From OE-Core rev: 6ad074b1caff63e90805aac25cca8a831b57273d)

Signed-off-by: Alexander Kanavin &lt;alex@linutronix.de&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
(cherry picked from commit 5b42ba98ef26a52bad8de1790b402938fec4a160)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: submit patch upstream</title>
<updated>2022-11-24T15:30:01+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2022-10-31T11:47:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b4f8b1b31cfb3c630c45bfe56e5e73c519c44e01'/>
<id>urn:sha1:b4f8b1b31cfb3c630c45bfe56e5e73c519c44e01</id>
<content type='text'>
(From OE-Core rev: c8c8945ded40a36b42da4e95974cf76796c15cfb)

Signed-off-by: Alexander Kanavin &lt;alex@linutronix.de&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 9555a7dc768c32a009333232e25cef041054b7f7)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: fix native build being not portable</title>
<updated>2022-07-08T07:27:16+00:00</updated>
<author>
<name>Maxime Roussin-Bélanger</name>
<email>maxime.roussinbelanger@gmail.com</email>
</author>
<published>2022-06-21T14:26:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=cc75d77bc93017b2bdaaaf30959a94ef96c9e379'/>
<id>urn:sha1:cc75d77bc93017b2bdaaaf30959a94ef96c9e379</id>
<content type='text'>
Without `--with-gcc-arch=generic` libffi looks up the cpuid to automatically determine
which mtune/march to use. This makes the native sstate-cache unuseable since it's
possible to have a newer cpu building the recipe and the library being pulled from
another older cpu which doesn't have the instruction.

(From OE-Core rev: 58804e0051e3b77e0378aa4accbd26b2588b68e7)

Signed-off-by: Maxime Roussin-Bélanger &lt;maxime.roussinbelanger@gmail.com&gt;
Signed-off-by: Luca Ceresoli &lt;luca.ceresoli@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit cddaecac1fdd4d033c2ff8ccaf1d60e1c598d5b7)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Convert to new override syntax</title>
<updated>2021-08-02T14:44:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-07-28T22:28:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bb6ddc3691ab04162ec5fd69a2d5e7876713fd15'/>
<id>urn:sha1:bb6ddc3691ab04162ec5fd69a2d5e7876713fd15</id>
<content type='text'>
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py &lt;oe-core directory&gt;

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: disable use of static exec trampolines</title>
<updated>2021-07-18T22:09:51+00:00</updated>
<author>
<name>Yi Zhao</name>
<email>yi.zhao@windriver.com</email>
</author>
<published>2021-07-16T09:14:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=dadfef3950fae4e93ce4c13ab91a2a7f41b3702e'/>
<id>urn:sha1:dadfef3950fae4e93ce4c13ab91a2a7f41b3702e</id>
<content type='text'>
We encountered a blueman-applet segfault with libffi 3.4.2:
$ blueman-applet
blueman-applet 01.58.45 WARNING  PluginManager:148 __load_plugin: Not loading DhcpClient because its conflict has higher priority
blueman-applet 01.58.45 WARNING  TransferService:189 _make_share_path: Failed to get Download dir from XDG
blueman-applet 01.58.45 WARNING  PluginManager:148 __load_plugin: Not loading PPPSupport because its conflict has higher priority
Segmentation fault

This is because the static exec trampolines is enabled by default in
libffi 3.4.2. However it doesn't work with gobject-introspection[1].

[1] https://github.com/libffi/libffi/commit/132699b95d3ee4d889ea2a80540acf3300987dad

(From OE-Core rev: 2173003df3beedf49aa0ce30d79a1158179fa3e4)

Signed-off-by: Yi Zhao &lt;yi.zhao@windriver.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: upgrade 3.3 -&gt; 3.4.2</title>
<updated>2021-07-02T22:14:32+00:00</updated>
<author>
<name>zhengruoqin</name>
<email>zhengrq.fnst@fujitsu.com</email>
</author>
<published>2021-06-30T02:52:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d2e5c350e9d9686862c163bbc2abc5c5b015414b'/>
<id>urn:sha1:d2e5c350e9d9686862c163bbc2abc5c5b015414b</id>
<content type='text'>
0001-Address-platforms-with-no-__int128-part2.patch
0001-Address-platforms-with-no-__int128.patch
0001-Fixed-missed-ifndef-for-__mips_soft_float.patch
0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
0001-powerpc-fix-build-failure-on-power7-and-older-532.patch
removed since they're included in 3.4.2

refresh 0001-arm-sysv-reverted-clang-VFP-mitigation.patch

License-Updage: Copyright year updated to 2021

(From OE-Core rev: 16cd4351d9e54140ea558229a93b1f89fcf7aa8c)

Signed-off-by: Zheng Ruoqin &lt;zhengrq.fnst@fujitsu.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: add patch to revert clang VFP workaround</title>
<updated>2020-12-09T12:20:33+00:00</updated>
<author>
<name>Brett Warren</name>
<email>brett.warren@arm.com</email>
</author>
<published>2020-12-07T13:42:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=fe9b4249f7305f39456ae9381d81573c015a47b0'/>
<id>urn:sha1:fe9b4249f7305f39456ae9381d81573c015a47b0</id>
<content type='text'>
Patch is added to address an issue preventing libffi
from compiling under clang.

Change-Id: I55e36d252ec8e84de9b35fea18044c2c0e8c5aab
(From OE-Core rev: 01e8c53488dd5ebb206bef2415549e8ac1ac7601)

Signed-off-by: Brett Warren &lt;brett.warren@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: fix multilib header conflict</title>
<updated>2020-08-19T09:57:44+00:00</updated>
<author>
<name>Changqing Li</name>
<email>changqing.li@windriver.com</email>
</author>
<published>2020-08-18T09:59:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=49865a6061276fd887f508caa2ac9c6a04f45b8a'/>
<id>urn:sha1:49865a6061276fd887f508caa2ac9c6a04f45b8a</id>
<content type='text'>
fix error:
file /usr/include/ffitarget.h conflicts between attempted installs of lib32-libffi-dev-3.3-r0.armv7vet2hf_vfp and libffi-dev-3.3-r0.cortexa57

part of diff

#ifndef LIBFFI_ASM
-typedef unsigned long          ffi_arg;
-typedef signed long            ffi_sarg;
-
-typedef enum ffi_abi {
-  FFI_FIRST_ABI = 0,
-  FFI_SYSV,
-  FFI_VFP,
-  FFI_LAST_ABI,
-#if defined(__ARM_PCS_VFP) || defined(_M_ARM)
-  FFI_DEFAULT_ABI = FFI_VFP,
+#ifdef __ILP32__
+#define FFI_SIZEOF_ARG 8
+#define FFI_SIZEOF_JAVA_RAW  4
+typedef unsigned long long ffi_arg;
+typedef signed long long ffi_sarg;
+#elif defined(_M_ARM64)
+#define FFI_SIZEOF_ARG 8
+typedef unsigned long long ffi_arg;
+typedef signed long long ffi_sarg;
 #else
-  FFI_DEFAULT_ABI = FFI_SYSV,
-#endif
-} ffi_abi;
+typedef unsigned long ffi_arg;
+typedef signed long ffi_sarg;
 #endif

-#define FFI_EXTRA_CIF_FIELDS			\
-  int vfp_used;					\
-  unsigned short vfp_reg_free, vfp_nargs;	\
-  signed char vfp_args[16]			\
-
-#define FFI_TARGET_SPECIFIC_VARIADIC
-#ifndef _M_ARM
-#define FFI_TARGET_HAS_COMPLEX_TYPE
+typedef enum ffi_abi
+  {
+    FFI_FIRST_ABI = 0,
+    FFI_SYSV,
+    FFI_LAST_ABI,
+    FFI_DEFAULT_ABI = FFI_SYSV
+  } ffi_abi;
 #endif

 /* ---- Definitions for closures ----------------------------------------- */

 #define FFI_CLOSURES 1
-#define FFI_GO_CLOSURES 1
 #define FFI_NATIVE_RAW_API 0

 #if defined (FFI_EXEC_TRAMPOLINE_TABLE) &amp;&amp; FFI_EXEC_TRAMPOLINE_TABLE

 #ifdef __MACH__
-#define FFI_TRAMPOLINE_SIZE 12
-#define FFI_TRAMPOLINE_CLOSURE_OFFSET 8
+#define FFI_TRAMPOLINE_SIZE 16
+#define FFI_TRAMPOLINE_CLOSURE_OFFSET 16
 #else
 #error "No trampoline table implementation"
 #endif

 #else
-#ifdef _MSC_VER
-#define FFI_TRAMPOLINE_SIZE 16
-#define FFI_TRAMPOLINE_CLOSURE_FUNCTION 12
-#else
-#define FFI_TRAMPOLINE_SIZE 12
-#endif
+#define FFI_TRAMPOLINE_SIZE 24
 #define FFI_TRAMPOLINE_CLOSURE_OFFSET FFI_TRAMPOLINE_SIZE
 #endif

+#ifdef _M_ARM64
+#define FFI_EXTRA_CIF_FIELDS unsigned is_variadic
+#endif
+

(From OE-Core rev: efe8d76810973e7032e729beee106b8acc39b8ed)

Signed-off-by: Changqing Li &lt;changqing.li@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libffi: fix v3.3 compile on ppc64le</title>
<updated>2020-04-29T14:02:19+00:00</updated>
<author>
<name>Andrew Geissler</name>
<email>geissonator@gmail.com</email>
</author>
<published>2020-04-27T18:40:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=11e7f09d60e5f2a4ad770e2d1cb6af4b32c46a90'/>
<id>urn:sha1:11e7f09d60e5f2a4ad770e2d1cb6af4b32c46a90</id>
<content type='text'>
The latest released version of libffi no longer compiles on ppc64le
based machines. Some searching found a patch that fixed our issue but
had not been submitted upstream to libffi.

It has now been submitted upstream with this PR:
https://github.com/libffi/libffi/pull/561

(From OE-Core rev: 76001bd4ae1e4f153f3d670b19e9ccd39c9fc4ef)

Signed-off-by: Andrew Geissler &lt;geissonator@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
