Makefile 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include ${ADK_TOPDIR}/rules.mk
  4. PKG_NAME:= curl
  5. PKG_VERSION:= 8.5.0
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= 42ab8db9e20d8290a3b633e7fbb3cec15db34df65fd1015ef8ac1e4723750eeb
  8. PKG_DESCR:= client-side url transfer tool
  9. PKG_SECTION:= net/http
  10. PKG_BUILDDEP:= zlib
  11. PKG_NEEDS:= threads
  12. PKG_URL:= https://curl.se/
  13. PKG_SITES:= https://curl.se/download/
  14. PKG_LIBNAME:= libcurl
  15. PKG_OPTS:= dev
  16. PKG_SUBPKGS:= LIBCURL CURL
  17. PKGSD_LIBCURL:= client-side url transfer library
  18. PKGSC_LIBCURL:= libs/net
  19. PKGSS_LIBCURL:= zlib
  20. PKGSD_CURL:= client-side url transfer utiity
  21. PKGSC_CURL:= net/http
  22. PKGSS_CURL:= zlib
  23. PKG_FLAVOURS_LIBCURL:= WITH_IPV6
  24. PKGFD_WITH_IPV6:= enable ipv6 support
  25. PKG_CHOICES_LIBCURL:= WITH_LIBRESSL WITH_OPENSSL WITH_GNUTLS WITH_WOLFSSL WITHOUT_SSL
  26. PKGCD_WITH_LIBRESSL:= use libressl for crypto
  27. PKGCS_WITH_LIBRESSL:= libressl ca-certificates
  28. PKGCB_WITH_LIBRESSL:= libressl
  29. PKGCD_WITH_OPENSSL:= use libopenssl for crypto
  30. PKGCS_WITH_OPENSSL:= libopenssl ca-certificates
  31. PKGCB_WITH_OPENSSL:= openssl
  32. PKGCD_WITH_GNUTLS:= use gnutls for crypto
  33. PKGCS_WITH_GNUTLS:= libgnutls ca-certificates
  34. PKGCB_WITH_GNUTLS:= gnutls
  35. PKGCD_WITH_WOLFSSL:= use wolfssl for crypto
  36. PKGCS_WITH_WOLFSSL:= wolfssl ca-certificates
  37. PKGCB_WITH_WOLFSSL:= wolfssl
  38. PKGCD_WITHOUT_SSL:= use no ssl
  39. include ${ADK_TOPDIR}/mk/host.mk
  40. include ${ADK_TOPDIR}/mk/package.mk
  41. $(eval $(call HOST_template,CURL,curl,${PKG_VERSION}-${PKG_RELEASE}))
  42. $(eval $(call PKG_template,LIBCURL,libcurl,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_LIBCURL},${PKGSD_LIBCURL},${PKGSC_LIBCURL},${PKG_OPTS}))
  43. $(eval $(call PKG_template,CURL,curl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  44. HOST_CONFIGURE_ARGS+= --without-ssl
  45. ifeq (${ADK_PACKAGE_LIBCURL_WITH_LIBRESSL},y)
  46. CONFIGURE_ARGS+= --with-openssl="${STAGING_TARGET_DIR}/usr" \
  47. --without-gnutls
  48. endif
  49. ifeq (${ADK_PACKAGE_LIBCURL_WITH_OPENSSL},y)
  50. CONFIGURE_ARGS+= --with-openssl="${STAGING_TARGET_DIR}/usr" \
  51. --without-gnutls
  52. endif
  53. ifeq (${ADK_PACKAGE_LIBCURL_WITH_GNUTLS},y)
  54. CONFIGURE_ARGS+= --with-gnutls="${STAGING_TARGET_DIR}/usr" \
  55. --without-openssl
  56. endif
  57. ifeq (${ADK_PACKAGE_LIBCURL_WITH_WOLFSSL},y)
  58. CONFIGURE_ARGS+= --with-cyassl="${STAGING_TARGET_DIR}/usr" \
  59. --without-openssl \
  60. --without-gnutls
  61. endif
  62. ifeq (${ADK_PACKAGE_LIBCURL_WITHOUT_SSL},y)
  63. CONFIGURE_ARGS+= --without-ssl \
  64. --without-gnutls
  65. endif
  66. CONFIGURE_ENV+= curl_typeof_curl_socklen_t=socklen_t \
  67. LDFLAGS='$(TARGET_LDFLAGS) -latomic'
  68. CONFIGURE_ARGS+= --enable-cookies \
  69. --enable-file \
  70. --enable-ftp \
  71. --enable-http \
  72. --enable-proxy \
  73. --disable-curldebug \
  74. --disable-ntlm \
  75. --disable-ntlm-wb \
  76. --disable-symbol-hiding \
  77. --disable-ares \
  78. --disable-dict \
  79. --disable-gopher \
  80. --disable-ldap \
  81. --disable-smtp \
  82. --disable-imap \
  83. --disable-ldaps \
  84. --disable-manual \
  85. --disable-sspi \
  86. --disable-telnet \
  87. --disable-verbose \
  88. --without-libssh2 \
  89. --without-librtmp \
  90. --with-ca-path="/etc/ssl/certs" \
  91. --with-random="/dev/urandom" \
  92. --without-ca-bundle
  93. ifneq (${ADK_PACKAGE_LIBCURL_WITH_IPV6},)
  94. CONFIGURE_ARGS+= --enable-ipv6
  95. else
  96. CONFIGURE_ARGS+= --disable-ipv6
  97. endif
  98. curl-install:
  99. ${INSTALL_DIR} ${IDIR_CURL}/usr/bin
  100. ${INSTALL_BIN} ${WRKINST}/usr/bin/curl ${IDIR_CURL}/usr/bin
  101. libcurl-install:
  102. ${INSTALL_DIR} ${IDIR_LIBCURL}/usr/lib
  103. ${CP} ${WRKINST}/usr/lib/libcurl.so* ${IDIR_LIBCURL}/usr/lib
  104. include ${ADK_TOPDIR}/mk/host-bottom.mk
  105. include ${ADK_TOPDIR}/mk/pkg-bottom.mk