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