Subject: Fixed build in scope of a project (add_subdirectory)
[platform/upstream/libwebsockets.git] / CMakeLists.txt
index 6e90505..8f3994d 100644 (file)
@@ -117,6 +117,8 @@ option(LWS_WITH_RANGES "Support http ranges (RFC7233)" ON)
 option(LWS_FALLBACK_GETHOSTBYNAME "Also try to do dns resolution using gethostbyname if getaddrinfo fails" OFF)
 option(LWS_WITH_ZIP_FOPS "Support serving pre-zipped files" ON)
 option(LWS_AVOID_SIGPIPE_IGN "Android 7+ seems to need this" OFF)
+option(LWS_WITH_STATS "Keep statistics of lws internal operations" OFF)
+option(LWS_WITH_SOCKS5 "Allow use of SOCKS5 proxy on client connections" OFF)
 
 if (LWS_WITH_LWSWS)
  message(STATUS "LWS_WITH_LWSWS --> Enabling LWS_WITH_PLUGINS and LWS_WITH_LIBUV")
@@ -772,13 +774,13 @@ if (LWS_WITH_STATIC)
        endif()
        add_custom_command(
                      TARGET websockets
-                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/lib/libwebsockets.h
-                                                        ${CMAKE_BINARY_DIR}/include/libwebsockets.h
+                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/lib/libwebsockets.h
+                                                        ${CMAKE_CURRENT_BINARY_DIR}/include/libwebsockets.h
        )
        add_custom_command(
                      TARGET websockets
-                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/lws_config.h
-                                                        ${CMAKE_BINARY_DIR}/include/lws_config.h
+                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/lws_config.h
+                                                        ${CMAKE_CURRENT_BINARY_DIR}/include/lws_config.h
        )
 
 endif()
@@ -811,13 +813,13 @@ if (LWS_WITH_SHARED)
 
        add_custom_command(
                      TARGET websockets_shared
-                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/lib/libwebsockets.h
-                                                        ${CMAKE_BINARY_DIR}/include/libwebsockets.h
+                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/lib/libwebsockets.h
+                                                        ${CMAKE_CURRENT_BINARY_DIR}/include/libwebsockets.h
        )
        add_custom_command(
                      TARGET websockets_shared
-                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/lws_config.h
-                                                        ${CMAKE_BINARY_DIR}/include/lws_config.h
+                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/lws_config.h
+                                                        ${CMAKE_CURRENT_BINARY_DIR}/include/lws_config.h
        )
 
 
@@ -1028,8 +1030,12 @@ set (temp ${CMAKE_REQUIRED_LIBRARIES})
 set(CMAKE_REQUIRED_LIBRARIES ${LIB_LIST})
 CHECK_FUNCTION_EXISTS(SSL_CTX_set1_param LWS_HAVE_SSL_CTX_set1_param)
 CHECK_FUNCTION_EXISTS(X509_VERIFY_PARAM_set1_host LWS_HAVE_X509_VERIFY_PARAM_set1_host)
+if (LWS_WITH_ESP32)
+       set(LWS_HAVE_TLS_CLIENT_METHOD 1)
+else()
 CHECK_FUNCTION_EXISTS(TLS_client_method LWS_HAVE_TLS_CLIENT_METHOD)
 CHECK_FUNCTION_EXISTS(TLSv1_2_client_method LWS_HAVE_TLSV1_2_CLIENT_METHOD)
+endif()
 set(CMAKE_REQUIRED_LIBRARIES ${temp})
 # Generate the lws_config.h that includes all the public compilation settings.
 configure_file(
@@ -1113,7 +1119,8 @@ if (GENCERTS)
                        COMMAND "${OPENSSL_EXECUTABLE}"
                                req -new -newkey rsa:1024 -days 10000 -nodes -x509 -keyout "${TEST_SERVER_SSL_KEY}" -out "${TEST_SERVER_SSL_CERT}"
                        RESULT_VARIABLE OPENSSL_RETURN_CODE
-                       OUTPUT_QUIET ERROR_QUIET)
+                       #               OUTPUT_QUIET ERROR_QUIET
+                       )
 
                if (OPENSSL_RETURN_CODE)
                        message(WARNING "!!! Failed to generate SSL certificate for Test Server!!!:\nOpenSSL return code = ${OPENSSL_RETURN_CODE}")
@@ -1763,6 +1770,8 @@ message(" LWS_PLAT_OPTEE = ${LWS_PLAT_OPTEE}")
 message(" LWS_WITH_ESP32 = ${LWS_WITH_ESP32}")
 message(" LWS_WITH_ZIP_FOPS = ${LWS_WITH_ZIP_FOPS}")
 message(" LWS_AVOID_SIGPIPE_IGN = ${LWS_AVOID_SIGPIPE_IGN}")
+message(" LWS_WITH_STATS = ${LWS_WITH_STATS}")
+message(" LWS_WITH_SOCKS5 = ${LWS_WITH_SOCKS5}")
 
 message("---------------------------------------------------------------------")