diff options
3 files changed, 34 insertions, 35 deletions
diff --git a/meta-oe/recipes-support/gperftools/gperftools/0001-Define-off64_t-as-off_t-on-musl.patch b/meta-oe/recipes-support/gperftools/gperftools/0001-Define-off64_t-as-off_t-on-musl.patch new file mode 100644 index 0000000000..2b782c2040 --- /dev/null +++ b/meta-oe/recipes-support/gperftools/gperftools/0001-Define-off64_t-as-off_t-on-musl.patch | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | From 41260e21e271eb1dc8b34f952ea3f90a0dc35e9e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sun, 25 Dec 2022 20:01:29 -0800 | ||
| 4 | Subject: [PATCH] Define off64_t as off_t on musl | ||
| 5 | |||
| 6 | Musl's default bitlength for off_t is always 64bit therefore define | ||
| 7 | off64_t as off_t on musl | ||
| 8 | |||
| 9 | Upstream-Status: Submitted [https://github.com/gperftools/gperftools/pull/1379] | ||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | src/malloc_hook_mmap_linux.h | 5 +++++ | ||
| 13 | 1 file changed, 5 insertions(+) | ||
| 14 | |||
| 15 | diff --git a/src/malloc_hook_mmap_linux.h b/src/malloc_hook_mmap_linux.h | ||
| 16 | index c7d8b4b..a10687e 100644 | ||
| 17 | --- a/src/malloc_hook_mmap_linux.h | ||
| 18 | +++ b/src/malloc_hook_mmap_linux.h | ||
| 19 | @@ -45,6 +45,11 @@ | ||
| 20 | #include <sys/syscall.h> | ||
| 21 | #include <unistd.h> | ||
| 22 | |||
| 23 | +// musl's off_t is already 64-bit | ||
| 24 | +#if defined(__linux__) && !defined(__GLIBC__) | ||
| 25 | +typedef off_t off64_t; | ||
| 26 | +#endif | ||
| 27 | + | ||
| 28 | // The x86-32 case and the x86-64 case differ: | ||
| 29 | // 32b has a mmap2() syscall, 64b does not. | ||
| 30 | // 64b and 32b have different calling conventions for mmap(). | ||
| 31 | -- | ||
| 32 | 2.39.0 | ||
| 33 | |||
diff --git a/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch b/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch deleted file mode 100644 index baaaa4b53b..0000000000 --- a/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | From 696674a800cb6d2070897a565b92d7e63022a8f1 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sun, 16 Jul 2017 15:51:28 -0700 | ||
| 4 | Subject: [PATCH] fix build with musl libc | ||
| 5 | |||
| 6 | Patch from https://github.com/gperftools/gperftools/pull/765/ | ||
| 7 | |||
| 8 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 9 | --- | ||
| 10 | src/malloc_hook_mmap_linux.h | 6 +++++- | ||
| 11 | 1 file changed, 5 insertions(+), 1 deletion(-) | ||
| 12 | |||
| 13 | --- a/src/malloc_hook_mmap_linux.h | ||
| 14 | +++ b/src/malloc_hook_mmap_linux.h | ||
| 15 | @@ -45,6 +45,10 @@ | ||
| 16 | #include <sys/syscall.h> | ||
| 17 | #include <unistd.h> | ||
| 18 | |||
| 19 | +#ifndef __GLIBC__ | ||
| 20 | +typedef off64_t __off64_t; | ||
| 21 | +#endif | ||
| 22 | + | ||
| 23 | // The x86-32 case and the x86-64 case differ: | ||
| 24 | // 32b has a mmap2() syscall, 64b does not. | ||
| 25 | // 64b and 32b have different calling conventions for mmap(). | ||
| 26 | @@ -175,7 +179,7 @@ extern "C" void* mmap64(void *start, siz | ||
| 27 | return result; | ||
| 28 | } | ||
| 29 | |||
| 30 | -# if !defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH) | ||
| 31 | +# if defined(__GLIBC__) && (!defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH)) | ||
| 32 | |||
| 33 | extern "C" void* mmap(void *start, size_t length, int prot, int flags, | ||
| 34 | int fd, off_t offset) __THROW { | ||
diff --git a/meta-oe/recipes-support/gperftools/gperftools_2.10.bb b/meta-oe/recipes-support/gperftools/gperftools_2.10.bb index 602a7e263a..8db0cecbfd 100644 --- a/meta-oe/recipes-support/gperftools/gperftools_2.10.bb +++ b/meta-oe/recipes-support/gperftools/gperftools_2.10.bb | |||
| @@ -13,10 +13,10 @@ DEPENDS:append:libc-musl = " libucontext" | |||
| 13 | SRCREV = "bf8b714bf5075d0a6f2f28504b43095e2b1e11c5" | 13 | SRCREV = "bf8b714bf5075d0a6f2f28504b43095e2b1e11c5" |
| 14 | SRC_URI = "git://github.com/gperftools/gperftools;branch=master;protocol=https \ | 14 | SRC_URI = "git://github.com/gperftools/gperftools;branch=master;protocol=https \ |
| 15 | file://0001-Support-Atomic-ops-on-clang.patch \ | 15 | file://0001-Support-Atomic-ops-on-clang.patch \ |
| 16 | file://0001-fix-build-with-musl-libc.patch \ | ||
| 17 | file://0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch \ | 16 | file://0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch \ |
| 18 | file://disable_libunwind_aarch64.patch \ | 17 | file://disable_libunwind_aarch64.patch \ |
| 19 | file://sgidef.patch \ | 18 | file://sgidef.patch \ |
| 19 | file://0001-Define-off64_t-as-off_t-on-musl.patch \ | ||
| 20 | " | 20 | " |
| 21 | 21 | ||
| 22 | SRC_URI:append:libc-musl = " file://ppc-musl.patch" | 22 | SRC_URI:append:libc-musl = " file://ppc-musl.patch" |
