@@ -27,7 +27,7 @@ include $(INCLUDE_DIR)/nls.mk
define Package/perf
SECTION:=devel
CATEGORY:=Development
- DEPENDS:= +libelf +libdw +PACKAGE_libunwind:libunwind +libpthread +librt +objdump @!IN_SDK @!TARGET_arc770 @KERNEL_PERF_EVENTS
+ DEPENDS:= +libelf +libdw +PACKAGE_libunwind:libunwind +objdump @!IN_SDK @!TARGET_arc770 @KERNEL_PERF_EVENTS
TITLE:=Linux performance monitoring tool
VERSION:=$(LINUX_VERSION)-$(PKG_RELEASE)
URL:=http://www.kernel.org
@@ -33,7 +33,7 @@ include $(INCLUDE_DIR)/kernel.mk
define Package/valgrind
SECTION:=devel
CATEGORY:=Development
- DEPENDS:=@mips||mipsel||mips64||mips64el||i386||x86_64||powerpc||arm_v7||aarch64 +libpthread +librt
+ DEPENDS:=@mips||mipsel||mips64||mips64el||i386||x86_64||powerpc||arm_v7||aarch64
TITLE:=debugging and profiling tools for Linux
URL:=http://www.valgrind.org
endef
@@ -102,7 +102,7 @@ endef
define Package/libevent2-pthreads
$(call Package/libevent2/Default)
TITLE+= Pthreads library (version 2.1)
- DEPENDS+=+libpthread +libevent2-core
+ DEPENDS+=+libevent2-core
endef
define Package/libevent2-pthreads/description
@@ -31,7 +31,6 @@ endef
define Package/libnl-core
$(call Package/libnl/default)
TITLE:=Core Netlink Library
- DEPENDS:=+libpthread
endef
define Package/libnl-genl
@@ -30,7 +30,6 @@ define Package/libusb-1.0
SECTION:=libs
CATEGORY:=Libraries
TITLE:=A library for accessing Linux USB devices
- DEPENDS:=+libpthread +librt
URL:=http://libusb.info/
ABI_VERSION:=0
endef
@@ -36,7 +36,6 @@ define Package/musl-fts
CATEGORY:=Libraries
TITLE:=fts implementation for musl libc
URL:=https://github.com/pullmoll/musl-fts
- DEPENDS:= +libpthread
endef
define Package/musl-fts/description
@@ -115,7 +115,7 @@ define Package/libasan
$(call Package/gcc/Default)
NAME:=libasan
TITLE:=Runtime library for AddressSanitizer in GCC
- DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el @!arc
+ DEPENDS:=@USE_GLIBC +libstdcpp @!mips64 @!mips64el @!arc
ABI_VERSION:=5
endef
@@ -144,7 +144,7 @@ define Package/libtsan
$(call Package/gcc/Default)
NAME:=libtsan
TITLE:=Runtime library for ThreadSanitizer in GCC
- DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el @!arc
+ DEPENDS:=@USE_GLIBC +libstdcpp @!mips @!mipsel @!mips64 @!mips64el @!arc
ABI_VERSION:=0
endef
@@ -173,7 +173,7 @@ define Package/liblsan
$(call Package/gcc/Default)
NAME:=liblsan
TITLE:=Runtime library for LeakSanitizer in GCC
- DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el @!arc
+ DEPENDS:=@USE_GLIBC +libstdcpp @!mips @!mipsel @!mips64 @!mips64el @!arc
ABI_VERSION:=0
endef
@@ -202,7 +202,7 @@ define Package/libubsan
$(call Package/gcc/Default)
NAME:=libubsan
TITLE:=Runtime library for UndefinedBehaviorSanitizer in GCC
- DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el @!arc
+ DEPENDS:=@USE_GLIBC +libstdcpp @!mips64 @!mips64el @!arc
ABI_VERSION:=1
endef
@@ -256,33 +256,7 @@ define Package/libc/config
string
prompt "libc shared library files (use wildcards)"
depends on EXTERNAL_TOOLCHAIN && PACKAGE_libc
- default "./lib/ld{*.so*,-linux*.so.*} ./lib/lib{anl,c,cidn,crypt,dl,m,nsl,nss_dns,nss_files,resolv,util}{-*.so,.so.*,.so}"
-
- endmenu
-endef
-
-
-define Package/libpthread
-$(call Package/libc/Default)
- TITLE:=POSIX thread library
-endef
-
-define Package/libpthread/config
- menu "Configuration"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_libpthread
-
- config LIBPTHREAD_ROOT_DIR
- string
- prompt "libpthread shared library base directory"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_libpthread
- default TOOLCHAIN_ROOT if !NATIVE_TOOLCHAIN
- default "/" if NATIVE_TOOLCHAIN
-
- config LIBPTHREAD_FILE_SPEC
- string
- prompt "libpthread shared library files (use wildcards)"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_libpthread
- default "./lib/libpthread{-*.so,.so.*}"
+ default "./lib/ld{*.so*,-linux*.so.*} ./lib/lib{anl,c,cidn,crypt,dl,m,nsl,nss_dns,nss_files,pthread,resolv,rt,util}{-*.so,.so.*,.so}"
endmenu
endef
@@ -314,33 +288,6 @@ define Package/libthread-db/config
endmenu
endef
-define Package/librt
-$(call Package/libc/Default)
- TITLE:=POSIX.1b RealTime extension library
- DEPENDS:=+libpthread
-endef
-
-define Package/librt/config
- menu "Configuration"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_librt
-
- config LIBRT_ROOT_DIR
- string
- prompt "librt shared library base directory"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_librt
- default TOOLCHAIN_ROOT if !NATIVE_TOOLCHAIN
- default "/" if NATIVE_TOOLCHAIN
-
- config LIBRT_FILE_SPEC
- string
- prompt "librt shared library files (use wildcards)"
- depends on EXTERNAL_TOOLCHAIN && PACKAGE_librt
- default "./lib/librt{-*.so,.so.*}"
-
- endmenu
-endef
-
-
define Package/libgfortran
$(call Package/gcc/Default)
TITLE:=GFortran support library
@@ -521,7 +468,7 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
$(TOOLCHAIN_DIR)/lib/ld*.so.* \
$(TOOLCHAIN_DIR)/lib/ld-$(LIBC_SO_VERSION).so \
$(1)/lib/
- for file in libanl libc libcidn libcrypt libdl libm libnsl libnss_dns libnss_files libresolv libutil; do \
+ for file in libanl libc libcidn libcrypt libdl libm libnsl libnss_dns libnss_files libpthread libresolv librt libutil; do \
for file in $(TOOLCHAIN_DIR)/lib/$$$$file.so.* $(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so; do \
if [ -e "$$$$file" ]; then \
$(CP) $$$$file $(1)/lib/; \
@@ -550,42 +497,19 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
define Package/libc/install_lib
$(CP) $(filter-out %/libdl_pic.a %/libpthread_pic.a %/libresolv_pic.a,$(wildcard $(TOOLCHAIN_DIR)/lib/lib*.a)) $(1)/lib/
$(if $(wildcard $(TOOLCHAIN_DIR)/lib/libc_so.a),$(CP) $(TOOLCHAIN_DIR)/lib/libc_so.a $(1)/lib/libc_pic.a)
+ $(if $(wildcard $(TOOLCHAIN_DIR)/lib/libpthread_so.a),$(CP) $(TOOLCHAIN_DIR)/lib/libpthread_so.a $(1)/lib/libpthread_pic.a)
$(if $(LIBGCC_MAP), \
$(CP) $(LIBGCC_A) $(1)/lib/libgcc_s_pic.a; \
$(CP) $(LIBGCC_MAP) $(1)/lib/libgcc_s_pic.map \
)
endef
- define Package/libpthread/install
- $(INSTALL_DIR) $(1)/lib
- ifneq ($(CONFIG_USE_MUSL),y)
- $(CP) \
- $(TOOLCHAIN_DIR)/lib/libpthread.so.* \
- $(TOOLCHAIN_DIR)/lib/libpthread-$(LIBC_SO_VERSION).so \
- $(1)/lib/
- endif
- endef
-
define Package/libthread-db/install
$(INSTALL_DIR) $(1)/lib
$(CP) \
$(TOOLCHAIN_DIR)/lib/libthread_db.so.* $(1)/lib
endef
- define Package/libpthread/install_lib
- $(if $(wildcard $(TOOLCHAIN_DIR)/lib/libpthread_so.a),$(CP) $(TOOLCHAIN_DIR)/lib/libpthread_so.a $(1)/lib/libpthread_pic.a)
- endef
-
- define Package/librt/install
- $(INSTALL_DIR) $(1)/lib
- ifneq ($(CONFIG_USE_MUSL),y)
- $(CP) \
- $(TOOLCHAIN_DIR)/lib/librt.so.* \
- $(TOOLCHAIN_DIR)/lib/librt-$(LIBC_SO_VERSION).so \
- $(1)/lib/
- endif
- endef
-
define Package/ldd/install
$(INSTALL_DIR) $(1)/usr/bin/
$(CP) $(TOOLCHAIN_DIR)/bin/ldd $(1)/usr/bin/
@@ -662,14 +586,6 @@ else
exit 0
endef
- define Package/libpthread/install
- for file in $(call qstrip,$(CONFIG_LIBPTHREAD_FILE_SPEC)); do \
- $(INSTALL_DIR) $(1)/lib ; \
- $(CP) $(call qstrip,$(CONFIG_LIBPTHREAD_ROOT_DIR))/$$$$file $(1)/lib/ ; \
- done ; \
- exit 0
- endef
-
define Package/libthread-db/install
for file in $(call qstrip,$(CONFIG_LIBTHREAD_DB_FILE_SPEC)); do \
$(INSTALL_DIR) $(1)/lib ; \
@@ -678,14 +594,6 @@ else
exit 0
endef
- define Package/librt/install
- for file in $(call qstrip,$(CONFIG_LIBRT_FILE_SPEC)); do \
- $(INSTALL_DIR) $(1)/lib ; \
- $(CP) $(call qstrip,$(CONFIG_LIBRT_ROOT_DIR))/$$$$file $(1)/lib/ ; \
- done ; \
- exit 0
- endef
-
define Package/libatomic/install
for file in $(call qstrip,$(CONFIG_LIBATOMIC_FILE_SPEC)); do \
$(INSTALL_DIR) $(1)/lib ; \
@@ -730,9 +638,7 @@ $(eval $(call BuildPackage,libasan))
$(eval $(call BuildPackage,libtsan))
$(eval $(call BuildPackage,liblsan))
$(eval $(call BuildPackage,libubsan))
-$(eval $(call BuildPackage,libpthread))
$(eval $(call BuildPackage,libthread-db))
-$(eval $(call BuildPackage,librt))
$(eval $(call BuildPackage,libgfortran))
$(eval $(call BuildPackage,libgomp))
$(eval $(call BuildPackage,ldd))
@@ -35,7 +35,7 @@ define Package/ltq-adsl-app
CATEGORY:=Network
TITLE:=Lantiq DSL userland tool
URL:=http://www.lantiq.com/
- DEPENDS:=@(TARGET_lantiq_xway||TARGET_lantiq_xway_legacy||TARGET_lantiq_ase) +libpthread +ltq-dsl-base +libubox +libubus
+ DEPENDS:=@(TARGET_lantiq_xway||TARGET_lantiq_xway_legacy||TARGET_lantiq_ase) +ltq-dsl-base +libubox +libubus
MENU:=1
endef
@@ -29,7 +29,7 @@ define Package/ltq-vdsl-app
CATEGORY:=Network
TITLE:=Lantiq VDSL userland tool
URL:=http://www.lantiq.com/
- DEPENDS:=@TARGET_lantiq_xrx200 +libpthread +librt +ltq-dsl-base +libubox +libubus
+ DEPENDS:=@TARGET_lantiq_xrx200 +ltq-dsl-base +libubox +libubus
endef
define Package/ltq-vdsl-app/description
@@ -33,15 +33,12 @@ THC_APPLETS := \
randicmp6 redir6 rsmurf6 sendpees6 sendpeesmp6 smurf6 thcping6 \
toobig6 trace6
-THC_DEPENDS_dnsdict6 := +libpthread
-THC_DEPENDS_thcping6 := +librt
-
define BuildTool
define Package/thc-ipv6-$(subst _,-,$(1))
TITLE:=THC-IPv6 $(1) utility
SECTION:=net
CATEGORY:=Network
- DEPENDS:=+libpcap $(THC_DEPENDS_$(1))
+ DEPENDS:=+libpcap
URL:=https://github.com/vanhauser-thc/thc-ipv6
SUBMENU:=THC-IPv6 attack and analyzing toolkit
endef
@@ -36,7 +36,7 @@ define Package/opkg
SECTION:=base
CATEGORY:=Base system
TITLE:=opkg package manager
- DEPENDS:=+uclient-fetch +libpthread +libubox
+ DEPENDS:=+uclient-fetch +libubox
URL:=$(PKG_SOURCE_URL)
MENU:=1
endef
@@ -26,7 +26,7 @@ define Package/adb
CATEGORY:=Utilities
TITLE:=Android Debug Bridge CLI tool
URL:=http://tools.android.com/
- DEPENDS:=+zlib +libopenssl +libpthread
+ DEPENDS:=+zlib +libopenssl
endef
define Package/adb/description
@@ -28,7 +28,7 @@ define Package/mdadm
SUBMENU:=Disc
TITLE:=A tool for managing Soft RAID under Linux
URL:=https://www.kernel.org/pub/linux/utils/raid/mdadm/
- DEPENDS:=+libpthread +kmod-md-mod +kmod-md-raid0 +kmod-md-raid10 +kmod-md-raid1
+ DEPENDS:=+kmod-md-mod +kmod-md-raid0 +kmod-md-raid10 +kmod-md-raid1
endef
define Package/mdadm/description
@@ -37,7 +37,6 @@ include $(INCLUDE_DIR)/package.mk
define Package/util-linux/Default
SECTION:=utils
CATEGORY:=Utilities
- DEPENDS:= +librt
URL:=http://www.kernel.org/pub/linux/utils/util-linux/
endef
Since OpenWrt's main libc library, musl, does not provide separate shared object files for libpthread and librt, the existing binary packages for them are empty placeholders which provide no runtime functionality and frequently cause confusion among users who attempt to build software linking -lrt or -lpthread on target. To clean this situation up somewhat and to simplify binary package dependecies for all of the potential musl, glibc and uclibc cases, drop those packages and move libpthread.so as well as librt.so into the main libc package for those libc implementations that happen ship them as extra shared libraries. Signed-off-by: Jo-Philipp Wich <jo@mein.io> --- package/devel/perf/Makefile | 2 +- package/devel/valgrind/Makefile | 2 +- package/libs/libevent2/Makefile | 2 +- package/libs/libnl/Makefile | 1 - package/libs/libusb/Makefile | 1 - package/libs/musl-fts/Makefile | 1 - package/libs/toolchain/Makefile | 108 ++----------------- package/network/config/ltq-adsl-app/Makefile | 2 +- package/network/config/ltq-vdsl-app/Makefile | 2 +- package/network/ipv6/thc-ipv6/Makefile | 5 +- package/system/opkg/Makefile | 2 +- package/utils/adb/Makefile | 2 +- package/utils/mdadm/Makefile | 2 +- package/utils/util-linux/Makefile | 1 - 14 files changed, 16 insertions(+), 117 deletions(-)