1d4afb5ceSopenharmony_ciCOMPONENT_DEPENDS := mbedtls openssl
2d4afb5ceSopenharmony_ci#COMPONENT_ADD_INCLUDEDIRS := ../../../../../../../../../../../../../../../../../../../../$(COMPONENT_BUILD_DIR)/include
3d4afb5ceSopenharmony_ci
4d4afb5ceSopenharmony_ciCOMPONENT_OWNBUILDTARGET := 1
5d4afb5ceSopenharmony_ci
6d4afb5ceSopenharmony_ciCROSS_PATH1 := $(shell which xtensa-esp32-elf-gcc )
7d4afb5ceSopenharmony_ciCROSS_PATH := $(shell dirname $(CROSS_PATH1) )/..
8d4afb5ceSopenharmony_ci
9d4afb5ceSopenharmony_ci# detect MSYS2 environment and set generator flag if found
10d4afb5ceSopenharmony_ci# also set executable extension to .exe so that tools can be properly found
11d4afb5ceSopenharmony_ci# and disable bundled zlib
12d4afb5ceSopenharmony_ciMSYS_VERSION = $(if $(findstring Msys, $(shell uname -o)),$(word 1, $(subst ., ,$(shell uname -r))),0)
13d4afb5ceSopenharmony_ciifneq ($(MSYS_VERSION),0)
14d4afb5ceSopenharmony_ci	MSYS_FLAGS = -DLWS_WITH_BUNDLED_ZLIB=0 -DEXECUTABLE_EXT=.exe -G'MSYS Makefiles'
15d4afb5ceSopenharmony_ciendif
16d4afb5ceSopenharmony_ci
17d4afb5ceSopenharmony_ci# -DNDEBUG=1 after cflags stops debug etc being built
18d4afb5ceSopenharmony_ci.PHONY: build
19d4afb5ceSopenharmony_cibuild:
20d4afb5ceSopenharmony_ci	cd $(COMPONENT_BUILD_DIR) ; \
21d4afb5ceSopenharmony_ci	echo "doing lws cmake" ; \
22d4afb5ceSopenharmony_ci	cmake $(COMPONENT_PATH)  -DLWS_C_FLAGS="$(CFLAGS) -DNDEBUG=1" \
23d4afb5ceSopenharmony_ci		-DIDF_PATH=$(IDF_PATH) \
24d4afb5ceSopenharmony_ci		-DCROSS_PATH=$(CROSS_PATH) \
25d4afb5ceSopenharmony_ci		-DBUILD_DIR_BASE=$(BUILD_DIR_BASE) \
26d4afb5ceSopenharmony_ci		-DCMAKE_TOOLCHAIN_FILE=$(COMPONENT_PATH)/contrib/cross-esp32.cmake \
27d4afb5ceSopenharmony_ci		-DCMAKE_BUILD_TYPE=RELEASE \
28d4afb5ceSopenharmony_ci		-DLWS_MBEDTLS_INCLUDE_DIRS="${IDF_PATH}/components/openssl/include;${IDF_PATH}/components/mbedtls/mbedtls/include;${IDF_PATH}/components/mbedtls/port/include" \
29d4afb5ceSopenharmony_ci		-DLWS_WITH_STATS=0 \
30d4afb5ceSopenharmony_ci		-DLWS_WITH_HTTP2=1 \
31d4afb5ceSopenharmony_ci		-DLWS_WITH_RANGES=1 \
32d4afb5ceSopenharmony_ci		-DLWS_WITH_ACME=1 \
33d4afb5ceSopenharmony_ci		-DLWS_WITH_ZLIB=1 \
34d4afb5ceSopenharmony_ci		-DLWS_WITH_ZIP_FOPS=1 \
35d4afb5ceSopenharmony_ci		-DZLIB_LIBRARY=$(BUILD_DIR_BASE)/zlib/libzlib.a \
36d4afb5ceSopenharmony_ci		-DZLIB_INCLUDE_DIR=$(COMPONENT_PATH)/../zlib \
37d4afb5ceSopenharmony_ci		-DLWS_WITH_ESP32=1 \
38d4afb5ceSopenharmony_ci		$(MSYS_FLAGS) ; \
39d4afb5ceSopenharmony_ci	make && \
40d4afb5ceSopenharmony_ci	cp ${COMPONENT_BUILD_DIR}/lib/libwebsockets.a ${COMPONENT_BUILD_DIR}/liblibwebsockets.a
41d4afb5ceSopenharmony_ci
42d4afb5ceSopenharmony_ciclean: myclean
43d4afb5ceSopenharmony_ci
44d4afb5ceSopenharmony_cimyclean:
45d4afb5ceSopenharmony_ci	rm -rf ./build
46