curl.mk 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #############################################################
  2. #
  3. # curl
  4. #
  5. #############################################################
  6. CURL_VERSION:=7.17.1
  7. LIBCURL_VERSION:=4.0.1
  8. CURL_SOURCE:=curl-$(CURL_VERSION).tar.bz2
  9. CURL_SITE:=http://curl.haxx.se/download/
  10. CURL_CAT:=$(BZCAT)
  11. CURL_DIR:=$(BUILD_DIR)/curl-$(CURL_VERSION)
  12. CURL_BINARY:=curl
  13. CURL_DESTDIR:=$(STAGING_DIR)/usr
  14. $(DL_DIR)/$(CURL_SOURCE):
  15. $(WGET) -P $(DL_DIR) $(CURL_SITE)/$(CURL_SOURCE)
  16. curl-source: $(DL_DIR)/$(CURL_SOURCE)
  17. $(CURL_DIR)/.unpacked: $(DL_DIR)/$(CURL_SOURCE)
  18. $(CURL_CAT) $(DL_DIR)/$(CURL_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  19. toolchain/patch-kernel.sh $(CURL_DIR) package/curl/ curl-$(CURL_VERSION)-\*.patch*
  20. touch $(CURL_DIR)/.unpacked
  21. $(CURL_DIR)/.configured: $(CURL_DIR)/.unpacked
  22. (cd $(CURL_DIR); rm -rf config.cache; \
  23. aclocal; \
  24. libtoolize --force; \
  25. ./reconf; \
  26. $(TARGET_CONFIGURE_OPTS) \
  27. $(TARGET_CONFIGURE_ARGS) \
  28. ./configure \
  29. --target=$(GNU_TARGET_NAME) \
  30. --host=$(GNU_TARGET_NAME) \
  31. --build=$(GNU_HOST_NAME) \
  32. --prefix=/usr \
  33. --exec-prefix=/usr \
  34. --bindir=/usr/bin \
  35. --sbindir=/usr/sbin \
  36. --libdir=/usr/lib \
  37. --libexecdir=/usr/lib \
  38. --sysconfdir=/etc \
  39. --datadir=/usr/share \
  40. --localstatedir=/var \
  41. --includedir=/usr/include \
  42. --mandir=/usr/share/man \
  43. --infodir=/usr/share/info \
  44. )
  45. touch $(CURL_DIR)/.configured
  46. $(CURL_DIR)/src/.libs/$(CURL_BINARY): $(CURL_DIR)/.configured
  47. $(MAKE) -C $(CURL_DIR)
  48. $(CURL_DESTDIR)/bin/$(CURL_BINARY): $(CURL_DIR)/src/.libs/$(CURL_BINARY)
  49. -mkdir $(CURL_DESTDIR)/bin
  50. $(MAKE) DESTDIR=$(STAGING_DIR) -C $(CURL_DIR) install
  51. $(SED) "s,^libdir=.*,libdir=\'$(CURL_DESTDIR)/lib\',g" $(CURL_DESTDIR)/lib/libcurl.la
  52. touch $(CURL_DESTDIR)/bin/$(CURL_BINARY)
  53. $(TARGET_DIR)/usr/lib/libcurl.so.$(LIBCURL_VERSION): $(CURL_DESTDIR)/bin/$(CURL_BINARY)
  54. -mkdir $(TARGET_DIR)/usr/lib
  55. -mkdir $(TARGET_DIR)/usr/bin
  56. cp -a $(CURL_DESTDIR)/lib/libcurl.so* $(TARGET_DIR)/usr/lib
  57. $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libcurl.so.$(LIBCURL_VERSION)
  58. $(TARGET_DIR)/usr/bin/$(CURL_BINARY): $(TARGET_DIR)/usr/lib/libcurl.so.$(LIBCURL_VERSION)
  59. cp -a $(CURL_DESTDIR)/bin/$(CURL_BINARY) $(TARGET_DIR)/usr/bin
  60. $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/bin/$(CURL_BINARY)
  61. curl: uclibc $(TARGET_DIR)/usr/bin/$(CURL_BINARY)
  62. libcurl: $(CURL_DESTDIR)/bin/$(CURL_BINARY)
  63. curl-clean:
  64. rm -f $(TARGET_DIR)/usr/lib/libcurl.so*
  65. rm -f $(TARGET_DIR)/usr/bin/curl
  66. rm -f $(CURL_DESTDIR)/bin/curl*
  67. rm -f $(CURL_DESTDIR)/lib/libcurl.so*
  68. rm -rf $(CURL_DESTDIR)/include/curl
  69. -$(MAKE) -C $(CURL_DIR) clean
  70. curl-dirclean:
  71. rm -rf $(CURL_DIR)
  72. #############################################################
  73. #
  74. # Toplevel Makefile options
  75. #
  76. #############################################################
  77. ifeq ($(strip $(BR2_PACKAGE_CURL)),y)
  78. TARGETS+=curl
  79. endif
  80. ifeq ($(strip $(BR2_PACKAGE_LIBCURL)),y)
  81. TARGETS+=libcurl
  82. endif