diff --git a/ports/libffi/build.sh b/ports/libffi/build.sh new file mode 100755 index 00000000..5daaca9a --- /dev/null +++ b/ports/libffi/build.sh @@ -0,0 +1,11 @@ +#!/bin/bash ../install.sh + +NAME='libffi' +VERSION='3.5.2' +DOWNLOAD_URL="https://github.com/libffi/libffi/releases/download/v$VERSION/libffi-$VERSION.tar.gz#f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc" +CONFIG_SUB=('config.sub') + +post_install() { + # remove libtool file + rm -f $BANAN_SYSROOT/usr/lib/libffi.la +} diff --git a/ports/libffi/patches/0001-add-shared-library-support.patch b/ports/libffi/patches/0001-add-shared-library-support.patch new file mode 100644 index 00000000..7f467fc7 --- /dev/null +++ b/ports/libffi/patches/0001-add-shared-library-support.patch @@ -0,0 +1,48 @@ +diff -ruN libffi-3.5.2/configure libffi-3.5.2-banan_os/configure +--- libffi-3.5.2/configure 2025-08-02 09:44:34.000000000 +0300 ++++ libffi-3.5.2-banan_os/configure 2025-08-08 18:24:29.271963294 +0300 +@@ -7432,6 +7432,10 @@ + lt_cv_deplibs_check_method=pass_all + ;; + ++banan_os*) ++ lt_cv_deplibs_check_method=pass_all ++ ;; ++ + beos*) + lt_cv_deplibs_check_method=pass_all + ;; +@@ -12978,6 +12982,16 @@ + esac + ;; + ++banan_os*) ++ version_type=linux # correct to gnu/linux during the next big refactor ++ need_lib_prefix=no ++ need_version=no ++ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ++ soname_spec='$libname$release$shared_ext$major' ++ dynamic_linker="$host_os DynamicLoader.so" ++ shlibpath_var=LD_LIBRARY_PATH ++ ;; ++ + beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so" +@@ -17612,6 +17626,16 @@ + esac + ;; + ++banan_os*) ++ version_type=linux # correct to gnu/linux during the next big refactor ++ need_lib_prefix=no ++ need_version=no ++ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ++ soname_spec='$libname$release$shared_ext$major' ++ dynamic_linker="$host_os DynamicLoader.so" ++ shlibpath_var=LD_LIBRARY_PATH ++ ;; ++ + beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so"