treewide: drop librt and libpthread packages
[openwrt/staging/jow.git] / package / libs / toolchain / Makefile
index 9851a5f1cde6893360c859ac53686daf64569754..2b4f5e952612e687a55e8c5dc6668eef575917c6 100644 (file)
@@ -7,7 +7,7 @@
 
 include $(TOPDIR)/rules.mk
 PKG_NAME:=toolchain
-PKG_RELEASE:=2
+PKG_RELEASE:=4
 
 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 PKG_LICENSE:=GPL-3.0-with-GCC-exception
@@ -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
+  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
+  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
+  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
+  DEPENDS:=@USE_GLIBC +libstdcpp @!mips64 @!mips64el @!arc
   ABI_VERSION:=1
 endef
 
@@ -239,6 +239,7 @@ endef
 define Package/libc
 $(call Package/libc/Default)
   TITLE:=C library
+  PROVIDES:=libpthread librt
 endef
 
 define Package/libc/config
@@ -256,33 +257,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 +289,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
@@ -454,15 +402,13 @@ define Build/Prepare
        mkdir -p $(PKG_BUILD_DIR)
 endef
 
+define Build/Quilt
+endef
+
 LIBGCC_A=$(lastword $(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc_pic.a))
 LIBGCC_MAP=$(lastword $(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc.map))
 LIBGCC_SO=$(lastword $(wildcard $(TOOLCHAIN_DIR)/lib/libgcc_s.so.*))
 
-define Build/Compile/uClibc
-       $(CP) \
-               $(TOOLCHAIN_DIR)/lib/libuClibc-*.so \
-               $(PKG_BUILD_DIR)/
-endef
 ifneq ($(LIBGCC_SO),)
     define Build/Compile/libgcc
        $(CP) $(LIBGCC_SO) $(PKG_BUILD_DIR)/
@@ -495,6 +441,7 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
   define Package/libstdcpp/install
        $(INSTALL_DIR) $(1)/usr/lib
        $(CP) $(TOOLCHAIN_DIR)/lib/libstdc++.so.* $(1)/usr/lib/
+       rm -rf $(1)/usr/lib/*-gdb.py
   endef
 
   define Package/libasan/install
@@ -524,10 +471,9 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
        $(INSTALL_DIR) $(1)/lib
        $(CP) \
                $(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 $(TOOLCHAIN_DIR)/lib/$$$$file.so.* $(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so; 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.*; do \
                        if [ -e "$$$$file" ]; then \
                                $(CP) $$$$file $(1)/lib/; \
                        fi; \
@@ -535,21 +481,6 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
        done
   endef
 
-  define Package/uClibc/install
-       $(INSTALL_DIR) $(1)/lib
-       $(CP) \
-               $(TOOLCHAIN_DIR)/lib/ld*-uClibc.so.* \
-               $(TOOLCHAIN_DIR)/lib/ld*-uClibc-$(LIBC_SO_VERSION).so \
-               $(1)/lib/
-       $(CP) \
-               $(TOOLCHAIN_DIR)/lib/libc.so.* \
-               $(TOOLCHAIN_DIR)/lib/libuClibc-$(LIBC_SO_VERSION).so \
-               $(1)/lib/
-       $(CP) \
-               $(PKG_BUILD_DIR)/libuClibc-* \
-               $(1)/lib/
-  endef
-
   LD_MUSL_NAME = $(notdir $(firstword $(wildcard $(TOOLCHAIN_DIR)/lib/libc.so*)))
 
   define Package/musl/install
@@ -570,45 +501,17 @@ 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)$(CONFIG_USE_UCLIBC),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
-  ifeq ($(CONFIG_USE_UCLIBC),y)
-       $(CP) \
-               $(TOOLCHAIN_DIR)/lib/libthread_db-$(LIBC_SO_VERSION).so \
-               $(1)/lib/
-  endif
-  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)$(CONFIG_USE_UCLIBC),y)
-       $(CP) \
-               $(TOOLCHAIN_DIR)/lib/librt.so.* \
-               $(TOOLCHAIN_DIR)/lib/librt-$(LIBC_SO_VERSION).so \
-               $(1)/lib/
-  endif
   endef
 
   define Package/ldd/install
@@ -679,20 +582,23 @@ else
        exit 0
   endef
 
+  define Package/glibc/install
+  endef
+
+  LD_MUSL_NAME = $(notdir $(firstword $(wildcard $(TOOLCHAIN_ROOT_DIR)/lib/libc.so*)))
+
+  define Package/musl/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(LN) ../../lib/$(LD_MUSL_NAME) $(1)/usr/bin/ldd
+  endef
+
   define Package/libc/install
        for file in $(call qstrip,$(CONFIG_LIBC_FILE_SPEC)); do \
                $(INSTALL_DIR) $(1)/lib ; \
                $(CP) $(call qstrip,$(CONFIG_LIBC_ROOT_DIR))/$$$$file $(1)/lib/ ; \
        done ; \
        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
+       $(call Package/$(LIBC)/install,$1)
   endef
 
   define Package/libthread-db/install
@@ -703,14 +609,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 ; \
@@ -755,9 +653,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))