libcpprestsdk.mk 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. ################################################################################
  2. #
  3. # libcpprestsdk
  4. #
  5. ################################################################################
  6. LIBCPPRESTSDK_VERSION = 2.10.16
  7. LIBCPPRESTSDK_SITE = $(call github,Microsoft,cpprestsdk,v$(LIBCPPRESTSDK_VERSION))
  8. LIBCPPRESTSDK_LICENSE = MIT
  9. LIBCPPRESTSDK_LICENSE_FILES = license.txt
  10. LIBCPPRESTSDK_SUBDIR = Release
  11. LIBCPPRESTSDK_INSTALL_STAGING = YES
  12. LIBCPPRESTSDK_DEPENDENCIES += host-pkgconf boost openssl
  13. LIBCPPRESTSDK_CONF_OPTS = -DWERROR=OFF -DBUILD_SAMPLES=OFF
  14. ifeq ($(BR2_STATIC_LIBS),y)
  15. LIBCPPRESTSDK_CONF_OPTS += \
  16. -DBoost_USE_STATIC_LIBS=ON \
  17. -DBoost_USE_STATIC_RUNTIME=ON
  18. endif
  19. LIBCPPRESTSDK_CXXFLAGS = $(TARGET_CXXFLAGS)
  20. ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
  21. LIBCPPRESTSDK_CXXFLAGS += -latomic
  22. endif
  23. ifeq ($(BR2_PACKAGE_ZLIB),y)
  24. LIBCPPRESTSDK_DEPENDENCIES += zlib
  25. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_COMPRESSION=OFF
  26. # brotli needs compression
  27. ifeq ($(BR2_PACKAGE_BROTLI),y)
  28. LIBCPPRESTSDK_DEPENDENCIES += brotli
  29. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_BROTLI=OFF
  30. else
  31. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_BROTLI=ON
  32. endif
  33. else
  34. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_COMPRESSION=ON
  35. endif
  36. ifeq ($(BR2_PACKAGE_WEBSOCKETPP),y)
  37. LIBCPPRESTSDK_DEPENDENCIES += websocketpp
  38. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_WEBSOCKETS=OFF
  39. else
  40. LIBCPPRESTSDK_CONF_OPTS += -DCPPREST_EXCLUDE_WEBSOCKETS=ON
  41. endif
  42. ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
  43. LIBCPPRESTSDK_CXXFLAGS += -O0
  44. endif
  45. LIBCPPRESTSDK_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(LIBCPPRESTSDK_CXXFLAGS)"
  46. $(eval $(cmake-package))