From 86387d4eb3e8e6f97ab8b7f0e2d6988ed0e62e48 Mon Sep 17 00:00:00 2001 From: Salvatore Cro Date: Sun, 16 Aug 2015 20:53:37 -0700 Subject: Add argp implementation Argp is an advanced support for parsing unix-style argument vectors. In addition to the common getopt interface, it provides automatic response to `--help' and `--version' options and use of custom parser in conjunction with argp native option parser, among others. Argp support is required by elfutils package and prelink. In uClibc argp functionalities has been moved from C library to libuargp.so Further the libc.so linker script contains an AS_NEEDED entry so that it doesn't need to link libuargp.so explicitely. Disable argp test if feature disabled. Signed-off-by: Salvatore Cro Signed-off-by: Filippo Arcidiacono Signed-off-by: Carmelo Amoroso Signed-off-by: Khem Raj Signed-off-by: Waldemar Brodkorb --- Rules.mak | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'Rules.mak') diff --git a/Rules.mak b/Rules.mak index 7f244b438..e085ac787 100644 --- a/Rules.mak +++ b/Rules.mak @@ -569,6 +569,19 @@ export UBACKTRACE_ASNEEDED:=$(shell $(CC) -Wl,--help 2>/dev/null | grep -q -- -- else export UBACKTRACE_ASNEEDED:="" endif +ifeq ($(UCLIBC_HAS_ARGP),y) +ifeq ($(HARDWIRED_ABSPATH),y) +# Only used in installed libc.so linker script +UARGP_FULL_NAME := $(subst //,/,$(RUNTIME_PREFIX)$(MULTILIB_DIR)/libuargp.so.$(MAJOR_VERSION)) +else +UARGP_FULL_NAME := libuargp.so.$(MAJOR_VERSION) +endif +export UARGP_ASNEEDED:=$(shell $(CC) -Wl,--help 2>/dev/null | grep -q -- --as-needed && \ + echo "GROUP ( AS_NEEDED ( $(UARGP_FULL_NAME) ) )" || \ + echo "GROUP ( $(UARGP_FULL_NAME) )") +else +export UARGP_ASNEEDED:="" +endif endif # Add a bunch of extra pedantic annoyingly strict checks -- cgit v1.2.3