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