diff --git a/contrib/cross-linkit.cmake b/contrib/cross-linkit.cmake index 596cd0af0..5d417acac 100644 --- a/contrib/cross-linkit.cmake +++ b/contrib/cross-linkit.cmake @@ -1,10 +1,10 @@ # # CMake Toolchain file for crosscompiling on Mediatek Linkit 7967 # -# This can be used like this (with Linkit sdk unpacked to /projects/linkit/sdk) +# This can be used like this (with Linkit sdk unpacked to /opt/linkit) # # cd build/ -# cmake .. -DCMAKE_INSTALL_PREFIX:PATH=/projects/linkit/cross-root \ +# cmake .. -DCMAKE_INSTALL_PREFIX:PATH=/opt/linkit/cross-root \ # -DCMAKE_TOOLCHAIN_FILE=../contrib/cross-linkit.cmake \ # -DLWS_PLAT_FREERTOS=1 \ # -DLWS_WITH_ZLIB=0 \ @@ -37,6 +37,22 @@ set(CMAKE_CXX_COMPILER "${CROSS_PATH}/bin/arm-none-eabi-g++") set(CMAKE_C_COMPILER_WORKS 1) set(CMAKE_CXX_COMPILER_WORKS 1) +# +# similarly we're building a .a like this, we can't actually build +# complete test programs to probe api availability... so force some +# key ones + +set(LWS_HAVE_mbedtls_ssl_conf_alpn_protocols 1) +set(LWS_HAVE_mbedtls_ssl_conf_alpn_protocols 1) +set(LWS_HAVE_mbedtls_ssl_get_alpn_protocol 1) +set(LWS_HAVE_mbedtls_ssl_conf_sni 1) +set(LWS_HAVE_mbedtls_ssl_set_hs_ca_chain 1) +set(LWS_HAVE_mbedtls_ssl_set_hs_own_cert 1) +set(LWS_HAVE_mbedtls_ssl_set_hs_authmode 1) +set(LWS_HAVE_mbedtls_net_init 1) +set(LWS_HAVE_mbedtls_md_setup 1) # not on xenial 2.2 +set(LWS_HAVE_mbedtls_rsa_complete 1) # not on xenial 2.2 +set(LWS_HAVE_mbedtls_internal_aes_encrypt 1) # # Different build system distros set release optimization level to different # things according to their local policy, eg, Fedora is -O2 and Ubuntu is -O3 @@ -53,7 +69,7 @@ if (CMAKE_BUILD_TYPE MATCHES RELEASE OR CMAKE_BUILD_TYPE MATCHES Release OR CMAK set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2") endif() -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -nostartfiles -I${CROSS_BASE}/middleware/third_party/lwip/src/include/lwip -I${CROSS_BASE}/middleware/third_party/lwip/src/include -I${CROSS_BASE}/project/mt7687_hdk/apps/httpd/inc/ -I${CROSS_BASE}/kernel/service/inc/ -I${CROSS_BASE}/driver/chip/inc -I${CROSS_BASE}/driver/chip/mt7687/inc/ -I${CROSS_BASE}/driver/CMSIS/Device/MTK/mt7687/Include/ -I${CROSS_BASE}/driver/CMSIS/Include -I${CROSS_BASE}/middleware/third_party/lwip/ports/include/ -I${CROSS_BASE}/middleware/third_party/lwip/src/include/posix/ -I${CROSS_BASE}/kernel/rtos/FreeRTOS/Source/include/ -I${CROSS_BASE}/middleware/third_party/mbedtls/include/ -I${CROSS_BASE}/kernel/rtos/FreeRTOS/Source/portable/GCC/ARM_CM4F/ -I${CROSS_BASE}/middleware/third_party/sntp/inc/ -DLWS_AMAZON_RTOS=1" CACHE STRING "" FORCE) +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -lnosys -nostartfiles -I${CROSS_BASE}/middleware/third_party/lwip/src/include/lwip -I${CROSS_BASE}/middleware/third_party/lwip/src/include -I${CROSS_BASE}/project/mt7687_hdk/apps/httpd/inc/ -I${CROSS_BASE}/kernel/service/inc/ -I${CROSS_BASE}/driver/chip/inc -I${CROSS_BASE}/driver/chip/mt7687/inc/ -I${CROSS_BASE}/driver/CMSIS/Device/MTK/mt7687/Include/ -I${CROSS_BASE}/driver/CMSIS/Include -I${CROSS_BASE}/middleware/third_party/lwip/ports/include/ -I${CROSS_BASE}/middleware/third_party/lwip/src/include/posix/ -I${CROSS_BASE}/kernel/rtos/FreeRTOS/Source/include/ -I${CROSS_BASE}/middleware/third_party/mbedtls/include/ -I${CROSS_BASE}/kernel/rtos/FreeRTOS/Source/portable/GCC/ARM_CM4F/ -I${CROSS_BASE}/middleware/third_party/sntp/inc/ -DLWS_AMAZON_RTOS=1" CACHE STRING "" FORCE) # Where to look for the target environment. (More paths can be added here) set(CMAKE_FIND_ROOT_PATH "${CROSS_PATH}")