diff options
author | Ben Delarre <ben@delarre.net> | 2017-11-11 17:18:59 -0800 |
---|---|---|
committer | Andy Green <andy@warmcat.com> | 2017-12-01 11:37:35 +0800 |
commit | 3db1ce095357ec7d534d8e38898c7409806953d5 (patch) | |
tree | 4402e20bc9099b1d9820d38b6320f487c4b24f69 | |
parent | 31606054620155f5e2e9bb8cae2aa3080c6199e1 (diff) | |
download | libwebsockets-3db1ce095357ec7d534d8e38898c7409806953d5.tar.gz |
Esp32: allow build on windows
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | component.mk | 25 | ||||
-rw-r--r-- | contrib/cross-esp32.cmake | 11 |
3 files changed, 24 insertions, 13 deletions
@@ -38,3 +38,4 @@ ar-lib libwebsockets.pc build/ *.swp +doc
\ No newline at end of file diff --git a/component.mk b/component.mk index 560c9d39..7cc5d7b1 100644 --- a/component.mk +++ b/component.mk @@ -1,10 +1,18 @@ -COMPONENT_DEPENDS:=mbedtls openssl -COMPONENT_ADD_INCLUDEDIRS := ../../../../../../../../../../../../../../../../../../../../$(COMPONENT_BUILD_DIR)/include +COMPONENT_DEPENDS := mbedtls openssl +#COMPONENT_ADD_INCLUDEDIRS := ../../../../../../../../../../../../../../../../../../../../$(COMPONENT_BUILD_DIR)/include -COMPONENT_OWNBUILDTARGET:= 1 +COMPONENT_OWNBUILDTARGET := 1 -CROSS_PATH1:=$(shell which xtensa-esp32-elf-gcc ) -CROSS_PATH:= $(shell dirname $(CROSS_PATH1) )/.. +CROSS_PATH1 := $(shell which xtensa-esp32-elf-gcc ) +CROSS_PATH := $(shell dirname $(CROSS_PATH1) )/.. + +# detect MSYS2 environment and set generator flag if found +# also set executable extension to .exe so that tools can be properly found +# and disable bundled zlib +MSYS_VERSION = $(if $(findstring Msys, $(shell uname -o)),$(word 1, $(subst ., ,$(shell uname -r))),0) +ifneq ($(MSYS_VERSION),0) + MSYS_FLAGS = -DLWS_WITH_BUNDLED_ZLIB=0 -DEXECUTABLE_EXT=.exe -G'MSYS Makefiles' +endif # -DNDEBUG=1 after cflags stops debug etc being built .PHONY: build @@ -20,9 +28,11 @@ build: -DLWS_MBEDTLS_INCLUDE_DIRS="${IDF_PATH}/components/openssl/include;${IDF_PATH}/components/mbedtls/include;${IDF_PATH}/components/mbedtls/port/include" \ -DLWS_WITH_STATS=0 \ -DLWS_WITH_HTTP2=1 \ + -DLWS_WITH_ACME=1 \ -DZLIB_LIBRARY=$(BUILD_DIR_BASE)/zlib/libzlib.a \ -DZLIB_INCLUDE_DIR=$(COMPONENT_PATH)/../zlib \ - -DLWS_WITH_ESP32=1 ;\ + -DLWS_WITH_ESP32=1 \ + $(MSYS_FLAGS) ; \ make && \ cp ${COMPONENT_BUILD_DIR}/lib/libwebsockets.a ${COMPONENT_BUILD_DIR}/liblibwebsockets.a @@ -30,6 +40,3 @@ clean: myclean myclean: rm -rf ./build - -INCLUDES := $(INCLUDES) -I build/ - diff --git a/contrib/cross-esp32.cmake b/contrib/cross-esp32.cmake index f978e80e..6487f764 100644 --- a/contrib/cross-esp32.cmake +++ b/contrib/cross-esp32.cmake @@ -10,14 +10,15 @@ set(CMAKE_SYSTEM_NAME Linux) # Name of C compiler. -set(CMAKE_C_COMPILER "${CROSS_PATH}/bin/xtensa-esp32-elf-gcc") -set(CMAKE_AR "${CROSS_PATH}/bin/xtensa-esp32-elf-ar") -set(CMAKE_RANLIB "${CROSS_PATH}/bin/xtensa-esp32-elf-ranlib") -set(CMAKE_LINKER "${CROSS_PATH}/bin/xtensa-esp32-elf-ld") +set(CMAKE_C_COMPILER "${CROSS_PATH}/bin/xtensa-esp32-elf-gcc${EXECUTABLE_EXT}") +set(CMAKE_AR "${CROSS_PATH}/bin/xtensa-esp32-elf-ar${EXECUTABLE_EXT}") +set(CMAKE_RANLIB "${CROSS_PATH}/bin/xtensa-esp32-elf-ranlib${EXECUTABLE_EXT}") +set(CMAKE_LINKER "${CROSS_PATH}/bin/xtensa-esp32-elf-ld${EXECUTABLE_EXT}") SET(CMAKE_C_FLAGS "-nostdlib -Wall -Werror \ -I${BUILD_DIR_BASE}/include \ -I${IDF_PATH}/components/mdns/include \ + -I${IDF_PATH}/components/heap/include \ -I${IDF_PATH}/components/driver/include \ -I${IDF_PATH}/components/spi_flash/include \ -I${IDF_PATH}/components/nvs_flash/include \ @@ -29,6 +30,8 @@ SET(CMAKE_C_FLAGS "-nostdlib -Wall -Werror \ -I${IDF_PATH}/components/bootloader_support/include/ \ -I${IDF_PATH}/components/app_update/include/ \ -I$(IDF_PATH)/components/soc/esp32/include/ \ + -I$(IDF_PATH)/components/soc/include/ \ + -I$(IDF_PATH)/components/vfs/include/ \ ${LWS_C_FLAGS} -Os \ -I${IDF_PATH}/components/nvs_flash/test_nvs_host \ -I${IDF_PATH}/components/freertos/include" CACHE STRING "" FORCE) |