diff --git a/libs/libcap/Makefile b/libs/libcap/Makefile
index 646db5b28..688cc45f8 100644
--- a/libs/libcap/Makefile
+++ b/libs/libcap/Makefile
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libcap
-PKG_VERSION:=2.32
+PKG_VERSION:=2.33
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/linux/libs/security/linux-privs/libcap2
-PKG_HASH:=1005e3d227f2340ad1e3360ef8b69d15e3c72a29c09f4894d7aac038bd26e2be
+PKG_HASH:=08edeaba2757021aeec45c4eeec52566675e0e0f5d4f057284d729e04f2643d6
PKG_MAINTAINER:=Paul Wassi
PKG_LICENSE:=GPL-2.0-only
@@ -80,6 +80,8 @@ ifneq ($(CONFIG_PACKAGE_libcap-bin-capsh-shell),)
TARGET_CFLAGS += -DSHELL='\"$(CONFIG_PACKAGE_libcap-bin-capsh-shell)\"'
endif
+TARGET_CFLAGS += $(if $(CONFIG_USE_MUSL),-Dpthread_yield=sched_yield)
+
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/sys
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
diff --git a/libs/libcap/patches/200-change-hardcoded-shell-to-sh.patch b/libs/libcap/patches/200-change-hardcoded-shell-to-sh.patch
index c389d8a43..8da4d6b12 100644
--- a/libs/libcap/patches/200-change-hardcoded-shell-to-sh.patch
+++ b/libs/libcap/patches/200-change-hardcoded-shell-to-sh.patch
@@ -10,7 +10,7 @@
#define MAX_GROUPS 100 /* max number of supplementary groups for user */
static char *binary(unsigned long value)
-@@ -768,10 +771,10 @@ int main(int argc, char *argv[], char *envp[])
+@@ -775,10 +778,10 @@ int main(int argc, char *argv[], char *envp[])
} else if (!strcmp("--print", argv[i])) {
arg_print();
} else if ((!strcmp("--", argv[i])) || (!strcmp("==", argv[i]))) {
@@ -23,7 +23,7 @@
exit(1);
} else if (!strncmp("--has-p=", argv[i], 8)) {
cap_value_t cap;
-@@ -869,7 +872,7 @@ int main(int argc, char *argv[], char *envp[])
+@@ -888,7 +891,7 @@ int main(int argc, char *argv[], char *envp[])
" --killit= send signal(n) to child\n"
" --forkfor= fork and make child sleep for sec\n"
" == re-exec(capsh) with args as for --\n"
diff --git a/libs/libcap/patches/300-uclibc-ng.patch b/libs/libcap/patches/300-uclibc-ng.patch
index 616d2725d..c31c7059c 100644
--- a/libs/libcap/patches/300-uclibc-ng.patch
+++ b/libs/libcap/patches/300-uclibc-ng.patch
@@ -7,5 +7,5 @@
- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create --static
+ $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create
- clean:
- rm -f psx_test psx_test_wrap libcap_psx_test
+ run_libcap_launch_test: libcap_launch_test libcap_psx_launch_test noop
+ sudo ./libcap_launch_test