endmenu
endef
+define Package/libatomic
+$(call Package/gcc/Default)
+ DEPENDS:=+libgcc
+ TITLE:=Atomic support library
+endef
+
+define Package/libatomic/config
+ menu "Configuration"
+ depends on EXTERNAL_TOOLCHAIN && PACKAGE_libatomic
+
+ config LIBATOMIC_ROOT_DIR
+ string
+ prompt "libatomic shared library base directory"
+ depends on EXTERNAL_TOOLCHAIN && PACKAGE_libatomic
+ default TOOLCHAIN_ROOT if !NATIVE_TOOLCHAIN
+ default "/" if NATIVE_TOOLCHAIN
+
+ config LIBATOMIC_FILE_SPEC
+ string
+ prompt "libatomic shared library files (use wildcards)"
+ depends on EXTERNAL_TOOLCHAIN && PACKAGE_libatomic
+ default "./lib/libatomic.so.*"
+
+ endmenu
+endef
define Package/libssp
$(call Package/gcc/Default)
mkdir -p $(PKG_BUILD_DIR)
endef
-LIBGCC_A=$(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc_pic.a)
-LIBGCC_MAP=$(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc.map)
-LIBGCC_SO=$(wildcard $(TOOLCHAIN_DIR)/lib/libgcc_s.so.*)
+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.*))
ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
ifneq ($(if $(CONFIG_USE_UCLIBC),$(CONFIG_GCC_VERSION_LINARO)),)
BUILD_LIBGCC:=$(if $(CONFIG_avr32)$(CONFIG_m68k)$(CONFIG_powerpc),,$(PKG_BUILD_DIR)/libgcc_s.so.*)
"$(patsubst $(TOOLCHAIN_DIR)/lib/%,$(PKG_BUILD_DIR)/%,$(wildcard $(TOOLCHAIN_DIR)/lib/libcrypt-*.so))" \
$(BUILD_LIBGCC) \
-Wl,-soname=libcrypt.so.0
+ $(SCRIPT_DIR)/relink-lib.sh \
+ "$(TARGET_CROSS)" \
+ "$(wildcard $(TOOLCHAIN_DIR)/lib/libatomic.so)" \
+ "$(wildcard $(TOOLCHAIN_DIR)/lib/libatomic.a)" \
+ "$(patsubst $(TOOLCHAIN_DIR)/lib/%,$(PKG_BUILD_DIR)/%,$(wildcard $(TOOLCHAIN_DIR)/lib/libatomic*.so))" \
+ $(BUILD_LIBGCC) \
+ -Wl,-soname=libatomic.so.0
$(SCRIPT_DIR)/relink-lib.sh \
"$(TARGET_CROSS)" \
"$(wildcard $(TOOLCHAIN_DIR)/lib/libm-*.so)" \
$(if $(CONFIG_TARGET_avr32)$(CONFIG_TARGET_coldfire),,$(CP) $(TOOLCHAIN_DIR)/lib/libgcc_s.so.* $(1)/lib/)
endef
+ define Package/libatomic/install
+ $(INSTALL_DIR) $(1)/lib
+ $(if $(CONFIG_TARGET_avr32)$(CONFIG_TARGET_coldfire),,$(CP) $(TOOLCHAIN_DIR)/lib/libatomic.so.* $(1)/lib/)
+ endef
+
define Package/libgfortran/install
$(INSTALL_DIR) $(1)/usr/lib
$(if $(CONFIG_TARGET_avr32)$(CONFIG_TARGET_coldfire),,$(CP) $(TOOLCHAIN_DIR)/lib/libgfortran.so.* $(1)/usr/lib/)
$(TOOLCHAIN_DIR)/lib/libc.so.* \
$(TOOLCHAIN_DIR)/lib/libuClibc-$(LIBC_SO_VERSION).so \
$(1)/lib/
- for file in libcrypt libdl libm libutil; do \
+ for file in libatomic libcrypt libdl libm libutil; do \
$(CP) \
$(TOOLCHAIN_DIR)/lib/$$$$file.so.* \
$(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so \
$(eval $(call BuildPackage,libc))
$(eval $(call BuildPackage,libgcc))
+$(eval $(call BuildPackage,libatomic))
$(eval $(call BuildPackage,libssp))
$(eval $(call BuildPackage,libstdcpp))
$(eval $(call BuildPackage,libpthread))