aboutsummaryrefslogtreecommitdiff
path: root/libs/pthsem
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2015-06-26 11:51:23 +0200
committerJo-Philipp Wich <jow@openwrt.org>2015-06-26 12:13:03 +0200
commitf1fbc7f51e0f82e2be2ed310a5e2df70cfb237db (patch)
tree15cfc5a79bbe1e8887864a51efa2ed11c7664bba /libs/pthsem
parent3788dd697b642c09eb6fb868e07b045453ab60d1 (diff)
pthsem: fix musl and fortify source compatibility
This commit addresses two issues encountered while building pthsem for x86_64/musl: 1) Autoconf incorrectly assumes a broken Glibc and thus falls back to Linux compatibility code which runs into an unsupported platform error with musl libc. Since musl provides a proper implementation of `sigaltstack(2)`, force configure to use the POSIX compliant code when musl libc is used. 2) The `pth_syscall.c` file undefines various libc function names which breaks the indirection set up by fortify-source headers, therefore forcibly disable fortify source in the OpenWrt Makefile. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'libs/pthsem')
-rw-r--r--libs/pthsem/Makefile10
1 files changed, 9 insertions, 1 deletions
diff --git a/libs/pthsem/Makefile b/libs/pthsem/Makefile
index 6e07e6854..54d7737e1 100644
--- a/libs/pthsem/Makefile
+++ b/libs/pthsem/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=pthsem
PKG_VERSION:=2.0.8
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_MAINTAINER:=Othmar Truniger <github@truniger.ch>
PKG_LICENSE:=LGPL-2.1+
@@ -21,6 +21,7 @@ PKG_MD5SUM:=9144b26dcc27e67498d63dd5456f934c
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
+PKG_FORTIFY_SOURCE:=0
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
@@ -37,6 +38,13 @@ define Package/pthsem/description
pthsem is an extend version, with support for semaphores added. It can be installed parallel to a normal pth.
endef
+# The musl libc provides a proper implementation of sigaltstack() so
+# prevent configure from wrongly assuming a broken Linux platform
+ifeq ($(CONFIG_USE_MUSL),y)
+ CONFIGURE_VARS += \
+ ac_cv_check_sjlj=ssjlj
+endif
+
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pthsem-config $(1)/usr/bin/