mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 07:22:33 +00:00
tools: util-linux: build libuuid
util-linux usually provides libuuid, and is preffered by mtd-utils so lets enable building libuuid so we can disable it later in e2fsprogs. Only the static version of library is intentionally built. Link: https://github.com/openwrt/openwrt/pull/15806 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
parent
fb99a8d2e6
commit
8b0f892b31
@ -21,8 +21,10 @@ HOST_BUILD_PARALLEL:=1
|
|||||||
include $(INCLUDE_DIR)/host-build.mk
|
include $(INCLUDE_DIR)/host-build.mk
|
||||||
|
|
||||||
HOST_CONFIGURE_ARGS += \
|
HOST_CONFIGURE_ARGS += \
|
||||||
|
--disable-shared \
|
||||||
--disable-all-programs \
|
--disable-all-programs \
|
||||||
--enable-hexdump \
|
--enable-hexdump \
|
||||||
|
--enable-libuuid \
|
||||||
--without-util \
|
--without-util \
|
||||||
--without-selinux \
|
--without-selinux \
|
||||||
--without-audit \
|
--without-audit \
|
||||||
|
26
tools/util-linux/patches/101-macos-weak-aliases.patch
Normal file
26
tools/util-linux/patches/101-macos-weak-aliases.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 9445f477cfcfb3615ffde8f93b1b98c809ee4eca Mon Sep 17 00:00:00 2001
|
||||||
|
From: Eugene Gershnik <gershnik@users.noreply.github.com>
|
||||||
|
Date: Mon, 6 May 2024 09:29:39 -0700
|
||||||
|
Subject: [PATCH] This re-enables build on macOS.
|
||||||
|
|
||||||
|
Weak aliases are not supported by clang on Darwin.
|
||||||
|
Instead this fix uses inline asm to make `_uuid_time` and alias to `___uuid_time`
|
||||||
|
|
||||||
|
Fixes util-linux/util-linux#2873
|
||||||
|
---
|
||||||
|
libuuid/src/uuid_time.c | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
--- a/libuuid/src/uuid_time.c
|
||||||
|
+++ b/libuuid/src/uuid_time.c
|
||||||
|
@@ -85,6 +85,10 @@ time_t __uuid_time(const uuid_t uu, stru
|
||||||
|
}
|
||||||
|
#if defined(__USE_TIME_BITS64) && defined(__GLIBC__)
|
||||||
|
extern time_t uuid_time64(const uuid_t uu, struct timeval *ret_tv) __attribute__((weak, alias("__uuid_time")));
|
||||||
|
+#elif defined(__clang__) && defined(__APPLE__)
|
||||||
|
+__asm__(".globl _uuid_time");
|
||||||
|
+__asm__(".set _uuid_time, ___uuid_time");
|
||||||
|
+extern time_t uuid_time(const uuid_t uu, struct timeval *ret_tv);
|
||||||
|
#else
|
||||||
|
extern time_t uuid_time(const uuid_t uu, struct timeval *ret_tv) __attribute__((weak, alias("__uuid_time")));
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user