From 5b80bfd7bffd4c20d80b7c70a7130529e9a755dd Mon Sep 17 00:00:00 2001 From: ToshikazuOhiwa Date: Mon, 30 Mar 2020 09:24:26 +0900 Subject: agl-basesystem --- ...-fuse-fix-the-return-value-of-help-option.patch | 28 +++++++ .../recipes-support/fuse/files/aarch64.patch | 33 ++++++++ .../recipes-support/fuse/files/fuse.conf | 1 + .../fuse/files/gold-unversioned-symbol.patch | 92 ++++++++++++++++++++++ .../recipes-support/fuse/fuse_2.9.8.bb | 72 +++++++++++++++++ .../recipes-support/physfs/physfs_3.0.1.bb | 13 +++ 6 files changed, 239 insertions(+) create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/0001-fuse-fix-the-return-value-of-help-option.patch create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/aarch64.patch create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/fuse.conf create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/gold-unversioned-symbol.patch create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse_2.9.8.bb create mode 100644 external/meta-openembedded/meta-filesystems/recipes-support/physfs/physfs_3.0.1.bb (limited to 'external/meta-openembedded/meta-filesystems/recipes-support') diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/0001-fuse-fix-the-return-value-of-help-option.patch b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/0001-fuse-fix-the-return-value-of-help-option.patch new file mode 100644 index 00000000..577dbb5b --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/0001-fuse-fix-the-return-value-of-help-option.patch @@ -0,0 +1,28 @@ +From 2182c423c6cd235c052e6c420203f24ec9bcd6ab Mon Sep 17 00:00:00 2001 +From: Lu Chong +Date: Wed, 30 Oct 2013 15:27:00 +0800 +Subject: [PATCH] fuse: fix the return value of "--help" option + +Upstream-Status: Pending + +Signed-off-by: Lu Chong +--- + util/fusermount.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/util/fusermount.c b/util/fusermount.c +index b2e87d9..70d7c75 100644 +--- a/util/fusermount.c ++++ b/util/fusermount.c +@@ -1168,7 +1168,7 @@ static void usage(void) + " -q quiet\n" + " -z lazy unmount\n", + progname); +- exit(1); ++ exit(0); + } + + static void show_version(void) +-- +1.7.9.5 + diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/aarch64.patch b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/aarch64.patch new file mode 100644 index 00000000..050d1146 --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/aarch64.patch @@ -0,0 +1,33 @@ +fuse: add aarch64 support + +u64/u32 is not defined in sys/types.h, include linux/types.h like +the kernel version of fuse.h does. Patch sent to upstream mailing list. + +Upstream-Status: Submitted +Signed-off-by: Riku Voipio +Signed-off-by: Hongxu Jia +--- + include/fuse_kernel.h | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/include/fuse_kernel.h b/include/fuse_kernel.h +index c632b58..e804278 100644 +--- a/include/fuse_kernel.h ++++ b/include/fuse_kernel.h +@@ -88,12 +88,7 @@ + #ifndef _LINUX_FUSE_H + #define _LINUX_FUSE_H + +-#include +-#define __u64 uint64_t +-#define __s64 int64_t +-#define __u32 uint32_t +-#define __s32 int32_t +-#define __u16 uint16_t ++#include + + /* + * Version negotiation: +-- +1.8.1.2 + diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/fuse.conf b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/fuse.conf new file mode 100644 index 00000000..a517c488 --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/fuse.conf @@ -0,0 +1 @@ +fuse diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/gold-unversioned-symbol.patch b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/gold-unversioned-symbol.patch new file mode 100644 index 00000000..d47f692c --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/files/gold-unversioned-symbol.patch @@ -0,0 +1,92 @@ +fuse: Fix linking issues with gold linker + +fuse has problems when linking with gold since it uses version +scripts in a way thats so perticular to bfd ld + +/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/libexec/armv5te-angstrom-linux-gnueabi/gcc/arm-angstro +error: symbol __fuse_exited has undefined version +| collect2: ld returned 1 exit status +| make[1]: *** [libfuse.la] Error 1 +| make[1]: *** Waiting for unfinished jobs.... + +For more details + +http://blog.flameeyes.eu/2011/06/01/gold-readiness-obstacle-2-base-versioning +http://sources.redhat.com/bugzilla/show_bug.cgi?id=10861 +http://comments.gmane.org/gmane.comp.file-systems.fuse.devel/9524 +http://www.airs.com/blog/archives/300 + +Upstream-Status: Pending +Signed-off-by: Khem Raj +Signed-off-by: Koen Kooi +Signed-off-by: Hongxu Jia +--- + lib/fuse.c | 10 +++++----- + lib/fuse_mt.c | 2 +- + lib/fuse_versionscript | 3 +++ + lib/helper.c | 6 +++--- + 4 files changed, 12 insertions(+), 9 deletions(-) + +diff --git a/lib/fuse.c b/lib/fuse.c +index 067d0dc..6d27711 100644 +--- a/lib/fuse.c ++++ b/lib/fuse.c +@@ -4873,11 +4873,11 @@ struct fuse *fuse_new_compat1(int fd, int flags, + 11); + } + +-FUSE_SYMVER(".symver fuse_exited,__fuse_exited@"); +-FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@"); +-FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@"); +-FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@"); +-FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@"); ++FUSE_SYMVER(".symver fuse_exited,__fuse_exited@FUSE_UNVERSIONED"); ++FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@FUSE_UNVERSIONED"); ++FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@FUSE_UNVERSIONED"); ++FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@FUSE_UNVERSIONED"); ++FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@FUSE_UNVERSIONED"); + FUSE_SYMVER(".symver fuse_new_compat22,fuse_new@FUSE_2.2"); + + #endif /* __FreeBSD__ || __NetBSD__ */ +diff --git a/lib/fuse_mt.c b/lib/fuse_mt.c +index f6dbe71..fd5ac23 100644 +--- a/lib/fuse_mt.c ++++ b/lib/fuse_mt.c +@@ -119,4 +119,4 @@ int fuse_loop_mt(struct fuse *f) + return res; + } + +-FUSE_SYMVER(".symver fuse_loop_mt_proc,__fuse_loop_mt@"); ++FUSE_SYMVER(".symver fuse_loop_mt_proc,__fuse_loop_mt@FUSE_UNVERSIONED"); +diff --git a/lib/fuse_versionscript b/lib/fuse_versionscript +index 8d91887..de16ab2 100644 +--- a/lib/fuse_versionscript ++++ b/lib/fuse_versionscript +@@ -1,3 +1,6 @@ ++FUSE_UNVERSIONED { ++}; ++ + FUSE_2.2 { + global: + fuse_destroy; +diff --git a/lib/helper.c b/lib/helper.c +index b644012..c5349bf 100644 +--- a/lib/helper.c ++++ b/lib/helper.c +@@ -436,10 +436,10 @@ int fuse_mount_compat1(const char *mountpoint, const char *args[]) + return fuse_mount_compat22(mountpoint, NULL); + } + +-FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@"); ++FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@FUSE_UNVERSIONED"); + FUSE_SYMVER(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2"); +-FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@"); +-FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@"); ++FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@FUSE_UNVERSIONED"); ++FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@FUSE_UNVERSIONED"); + FUSE_SYMVER(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2"); + + #endif /* __FreeBSD__ || __NetBSD__ */ +-- +1.8.1.2 + diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse_2.9.8.bb b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse_2.9.8.bb new file mode 100644 index 00000000..caa75c7f --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse_2.9.8.bb @@ -0,0 +1,72 @@ +SUMMARY = "Implementation of a fully functional filesystem in a userspace program" +DESCRIPTION = "FUSE (Filesystem in Userspace) is a simple interface for userspace \ + programs to export a virtual filesystem to the Linux kernel. FUSE \ + also aims to provide a secure method for non privileged users to \ + create and mount their own filesystem implementations. \ + " +HOMEPAGE = "https://github.com/libfuse/libfuse" +SECTION = "libs" +LICENSE = "GPLv2 & LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "https://github.com/libfuse/libfuse/releases/download/${BP}/${BP}.tar.gz \ + file://gold-unversioned-symbol.patch \ + file://aarch64.patch \ + file://0001-fuse-fix-the-return-value-of-help-option.patch \ + file://fuse.conf \ +" +SRC_URI[md5sum] = "f365e848a82504edb0b7a33df790ca78" +SRC_URI[sha256sum] = "5e84f81d8dd527ea74f39b6bc001c874c02bad6871d7a9b0c14efb57430eafe3" + +UPSTREAM_CHECK_URI = "https://github.com/libfuse/libfuse/releases" +UPSTREAM_CHECK_REGEX = "fuse\-(?P2(\.\d+)+).tar.gz" + +inherit autotools pkgconfig update-rc.d systemd + +INITSCRIPT_NAME = "fuse" +INITSCRIPT_PARAMS = "start 3 S . stop 20 0 6 ." + +SYSTEMD_SERVICE_${PN} = "" + +DEPENDS = "gettext-native" + +PACKAGES =+ "fuse-utils libulockmgr libulockmgr-dev" + +RPROVIDES_${PN}-dbg += "fuse-utils-dbg libulockmgr-dbg" + +RRECOMMENDS_${PN}_class-target = "kernel-module-fuse libulockmgr fuse-utils" + +FILES_${PN} += "${libdir}/libfuse.so.*" +FILES_${PN}-dev += "${libdir}/libfuse*.la" + +FILES_libulockmgr = "${libdir}/libulockmgr.so.*" +FILES_libulockmgr-dev += "${libdir}/libulock*.la" + +# Forbid auto-renaming to libfuse-utils +FILES_fuse-utils = "${bindir} ${base_sbindir}" +DEBIAN_NOAUTONAME_fuse-utils = "1" +DEBIAN_NOAUTONAME_${PN}-dbg = "1" + +do_configure_prepend() { + # Make this explicit so overriding base_sbindir propagates properly. + export MOUNT_FUSE_PATH="${base_sbindir}" +} + +do_install_append() { + rm -rf ${D}${base_prefix}/dev + + # systemd class remove the sysv_initddir only if systemd_system_unitdir + # contains anything, but it's not needed if sysvinit is not in DISTRO_FEATURES + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'false', 'true', d)}; then + rm -rf ${D}${sysconfdir}/init.d/ + fi + + # Install systemd related configuration file + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/modules-load.d + install -m 0644 ${WORKDIR}/fuse.conf ${D}${sysconfdir}/modules-load.d + fi +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/external/meta-openembedded/meta-filesystems/recipes-support/physfs/physfs_3.0.1.bb b/external/meta-openembedded/meta-filesystems/recipes-support/physfs/physfs_3.0.1.bb new file mode 100644 index 00000000..cc97dead --- /dev/null +++ b/external/meta-openembedded/meta-filesystems/recipes-support/physfs/physfs_3.0.1.bb @@ -0,0 +1,13 @@ +SUMMARY = "PhysicsFS is a library to provide abstract access to various archives" +HOMEAPAGE = "http://icculus.org/physfs" +LICENSE = "Zlib" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2668e2fb051c3e564198e146a9a2d9f0" +DEPENDS = "readline zlib" + +inherit cmake + +PE = "1" + +SRC_URI = "http://icculus.org/${BPN}/downloads/${BP}.tar.bz2" +SRC_URI[md5sum] = "359f102bcbd62accf84ef32f4863255d" +SRC_URI[sha256sum] = "b77b9f853168d9636a44f75fca372b363106f52d789d18a2f776397bf117f2f1" -- cgit 1.2.3-korg