From: Florian Fainelli Date: Thu, 2 Mar 2017 19:37:29 +0000 (-0800) Subject: toolchain: Allow external toolchains to specify libthread-db X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=7f0c95a7dfff8aa0b6f5e3e78263cab108245e4c;p=openwrt%2Fstaging%2Faparcar.git toolchain: Allow external toolchains to specify libthread-db We need to let external toolchains be able to specify the path and specification file to the libthread-db POSIX thread debugging shared libraries. This fixes GDB not being able to be installed because it is depending on libthread-db: Collected errors: * satisfy_dependencies_for: Cannot satisfy the following dependencies * for gdb: * libthread-db * * opkg_install_cmd: Cannot install package gdb. Signed-off-by: Florian Fainelli --- diff --git a/package/libs/toolchain/Makefile b/package/libs/toolchain/Makefile index cf4a209054..8a90b5eda6 100644 --- a/package/libs/toolchain/Makefile +++ b/package/libs/toolchain/Makefile @@ -202,6 +202,26 @@ $(call Package/libc/Default) TITLE:=POSIX thread library debugging support endef +define Package/libthread-db/config + menu "Configuration" + depends on EXTERNAL_TOOLCHAIN && PACKAGE_libthread-db + + config LIBTHREAD_DB_ROOT_DIR + string + prompt "POSIX thread debugging shared library base directory" + depends on EXTERNAL_TOOLCHAIN && PACKAGE_libthread-db + default TOOLCHAIN_ROOT if !NATIVE_TOOLCHAIN + default "/" if NATIVE_TOOLCHAIN + + config LIBTHREAD_DB_FILE_SPEC + string + prompt "POSIX thread debugging shared library files (use wildcards)" + depends on EXTERNAL_TOOLCHAIN && PACKAGE_libthread-db + default "./lib/libthread_db{-*.so,.so.*}" + + endmenu +endef + define Package/librt $(call Package/libc/Default) TITLE:=POSIX.1b RealTime extension library @@ -517,6 +537,14 @@ else exit 0 endef + define Package/libthread-db/install + for file in $(call qstrip,$(CONFIG_LIBTHREAD_DB_FILE_SPEC)); do \ + $(INSTALL_DIR) $(1)/lib ; \ + $(CP) $(call qstrip,$(CONFIG_LIBTHREAD_DB_ROOT_DIR))/$$$$file $(1)/lib/ ; \ + done ; \ + exit 0 + endef + define Package/librt/install for file in $(call qstrip,$(CONFIG_LIBRT_FILE_SPEC)); do \ $(INSTALL_DIR) $(1)/lib ; \