strace: fix configuration options
[openwrt/openwrt.git] / package / devel / strace / Makefile
index b9ed201bbaf030eed4ee181f4ff09efbc1897c05..55fdc80c1ba35626fb8d7272a92139a7791a6ba8 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2006-2012 OpenWrt.org
+# Copyright (C) 2006-2016 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -9,24 +9,34 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=strace
-
-PKG_VERSION:=4.10
+PKG_VERSION:=4.25
 PKG_RELEASE:=1
-PKG_MD5SUM:=107a5be455493861189e9b57a3a51912
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=@SF/$(PKG_NAME)
+PKG_SOURCE_URL:=https://strace.io/files/$(PKG_VERSION)
+PKG_HASH:=d685f8e65470b7832c3aff60c57ab4459f26ff89f07c10f92bd70ee89efac701
 
 PKG_LICENSE:=BSD-3c
 PKG_LICENSE_FILES:=COPYRIGHT
+PKG_CPE_ID:=cpe:/a:paul_kranenburg:strace
 
-PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
+PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 
 PKG_FIXUP:=autoreconf
 PKG_INSTALL:=1
 
+PKG_CONFIG_DEPENDS := \
+       CONFIG_STRACE_LIBDW \
+       CONFIG_STRACE_LIBUNWIND
+
 include $(INCLUDE_DIR)/package.mk
 
+HOST_CFLAGS += -I$(LINUX_DIR)/user_headers/include
+
+ifeq ($(ARCH),aarch64)
+  CONFIGURE_ARGS += --enable-mpers=check
+endif
+
 CONFIGURE_VARS+= \
        LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
        CPPFLAGS_FOR_BUILD="$(HOST_CPPFLAGS)" \
@@ -37,6 +47,7 @@ define Package/strace
   SECTION:=utils
   CATEGORY:=Utilities
   TITLE:=System call tracer
+  DEPENDS:=+STRACE_LIBDW:libdw +STRACE_LIBUNWIND:libunwind
   URL:=http://strace.sourceforge.net/
 endef
 
@@ -45,6 +56,24 @@ A useful diagnostic, instructional, and debugging tool. Allows you to track what
 system calls a program makes while it is running.
 endef
 
+define Package/strace/config
+menu "Select strace configuration options"
+       depends on PACKAGE_strace
+
+config STRACE_LIBDW
+       bool "Enable stack tracing support using libdw"
+       default n
+config STRACE_LIBUNWIND
+       bool "Enable stack tracing support using libunwind (experimental)"
+       default n
+
+endmenu
+endef
+
+CONFIGURE_ARGS += \
+       --with-libdw=$(if $(CONFIG_STRACE_LIBDW),yes,no) \
+       --with-libunwind=$(if $(CONFIG_STRACE_LIBUNWIND),yes,no)
+
 MAKE_FLAGS := \
        CCOPT="$(TARGET_CFLAGS)"