libfloat.mk 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #############################################################
  2. #
  3. # libfloat
  4. #
  5. #############################################################
  6. LIBFLOAT_SOURCE:=libfloat_990616.orig.tar.gz
  7. LIBFLOAT_PATCH:=libfloat_990616-3.diff.gz
  8. LIBFLOAT_SITE:=http://ftp.debian.org/debian/pool/main/libf/libfloat
  9. LIBFLOAT_CAT:=zcat
  10. LIBFLOAT_DIR:=$(BUILD_DIR)/libfloat
  11. LIBFLOAT_TARGET=
  12. ifeq ($(strip $(SOFT_FLOAT)),true)
  13. ifeq ("$(strip $(ARCH))","arm")
  14. ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.)
  15. LIBFLOAT_TARGET+=$(STAGING_DIR)/lib/libfloat.so
  16. endif
  17. endif
  18. endif
  19. $(DL_DIR)/$(LIBFLOAT_SOURCE):
  20. $(WGET) -P $(DL_DIR) $(LIBFLOAT_SITE)/$(LIBFLOAT_SOURCE)
  21. $(DL_DIR)/$(LIBFLOAT_PATCH):
  22. $(WGET) -P $(DL_DIR) $(LIBFLOAT_SITE)/$(LIBFLOAT_PATCH)
  23. libfloat-source: $(DL_DIR)/$(LIBFLOAT_SOURCE) $(DL_DIR)/$(LIBFLOAT_PATCH)
  24. $(LIBFLOAT_DIR)/.unpacked: $(DL_DIR)/$(LIBFLOAT_SOURCE) $(DL_DIR)/$(LIBFLOAT_PATCH)
  25. $(LIBFLOAT_CAT) $(DL_DIR)/$(LIBFLOAT_SOURCE) | tar -C $(BUILD_DIR) -xvf -
  26. # Remove the binary files distributed with the the package.
  27. make -C $(LIBFLOAT_DIR) clean
  28. $(SOURCE_DIR)/patch-kernel.sh $(LIBFLOAT_DIR) $(DL_DIR) $(LIBFLOAT_PATCH)
  29. $(SOURCE_DIR)/patch-kernel.sh $(LIBFLOAT_DIR) $(SOURCE_DIR) libfloat.patch
  30. touch $(LIBFLOAT_DIR)/.unpacked
  31. $(LIBFLOAT_DIR)/libfloat.so.1: $(LIBFLOAT_DIR)/.unpacked $(TARGET_CC)
  32. $(MAKE) CC=$(TARGET_CC) LD=$(TARGET_CROSS)ld -C $(LIBFLOAT_DIR)
  33. $(STAGING_DIR)/lib/libfloat.so: $(LIBFLOAT_DIR)/libfloat.so.1
  34. cp -a $(LIBFLOAT_DIR)/libfloat.a $(STAGING_DIR)/lib/libfloat.a
  35. cp -a $(LIBFLOAT_DIR)/libfloat.so.1 $(STAGING_DIR)/lib/libfloat.so.1
  36. (cd $(STAGING_DIR)/lib ; ln -sf libfloat.so.1 libfloat.so)
  37. cp -a $(LIBFLOAT_DIR)/libfloat.a $(TARGET_DIR)/usr/lib/libfloat.a
  38. cp -a $(LIBFLOAT_DIR)/libfloat.so.1 $(TARGET_DIR)/lib/libfloat.so.1
  39. $(STRIP) $(TARGET_DIR)/lib/libfloat.so.1 > /dev/null 2>&1
  40. (cd $(TARGET_DIR)/lib ; ln -sf libfloat.so.1 libfloat.so)
  41. (cd $(TARGET_DIR)/usr/lib ; ln -sf /lib/libfloat.so libfloat.so)
  42. libfloat: $(STAGING_DIR)/lib/libfloat.so
  43. libfloat-clean:
  44. -$(MAKE) -C $(LIBFLOAT_DIR) clean
  45. libfloat-dirclean:
  46. rm -rf $(LIBFLOAT_DIR)