• Home
  • Raw
  • Download

Lines Matching +full:cmake +full:- +full:unix

2 # libwebsockets - small server side websockets and web server implementation
4 # Copyright (C) 2010 - 2020 Andy Green <andy@warmcat.com>
48 # For selecting between DEBUG / RELEASE, use -DCMAKE_BUILD_TYPE=DEBUG or =RELEASE
61 #set(CMAKE_TOOLCHAIN_FILE contrib/cross-esp32.cmake)
109 option(LWS_WITH_NETWORK "Compile with network-related code" ON)
118 option(LWS_WITH_CGI "Include CGI (spawn process with network-connected stdin/out/err) APIs" OFF)
120 option(LWS_UNIX_SOCK "Compile with support for UNIX domain socket if OS supports it" ON)
124 option(LWS_WITH_ZIP_FOPS "Support serving pre-zipped files" OFF)
127 option(LWS_WITH_ACCESS_LOG "Support generating Apache-compatible access logs" OFF)
150 option(LWS_WITH_SECURE_STREAMS "Secure Streams protocol-agnostic API" OFF)
179 option(LWS_SSL_CLIENT_USE_OS_CA_CERTS "SSL support should make use of the OS-installed CA root cert…
192 option(LWS_WITH_SDEVENT "Compile with support for sd-event loop" OFF)
195 if (UNIX)
196 # since v4.1, on unix platforms default is build any event libs as runtime plugins
197 option(LWS_WITH_EVLIB_PLUGINS "Compile event lib support into runtime-selected plugins" ON)
200 option(LWS_WITH_EVLIB_PLUGINS "Compile event lib support into runtime-selected plugins" OFF)
214 option(LWS_STATIC_PIC "Build the static version of the library with position-independent code" OFF)
223 option(LWS_PLAT_ANDROID "Android flavour of unix platform" OFF)
230 option(LWS_WITHOUT_TESTAPPS "Don't build the libwebsocket-test-apps" OFF)
236 # Extensions (permessage-deflate)
244 option(LWS_WITHOUT_BUILTIN_SHA1 "Don't build the lws sha-1 (eg, because openssl will provide it" OF…
273 …_WITH_EXPORT_LWSTARGETS "Export libwebsockets CMake targets. Disable if they conflict with an out…
292 option(LWS_WITH_FANALYZER "Enable gcc -fanalyzer if compiler supports" OFF)
298 if (UNIX OR WIN32)
299 …tion(LWS_WITH_CACHE_NSCOOKIEJAR "Build file-backed lws-cache-ttl that uses netscape cookie jar for…
301 …tion(LWS_WITH_CACHE_NSCOOKIEJAR "Build file-backed lws-cache-ttl that uses netscape cookie jar for…
322 # sets of sub-options implied by other options
328 include(CMakeLists-implied-options.txt)
331 # Structural helpers for cmake in subdirs
370 COMMAND "${GIT_EXECUTABLE}" describe --tags --always
391 set(LWS_BUILD_HASH ${GIT_USER}@${GIT_HOST}-${GIT_HASH})
408 set(CPACK_PACKAGE_VERSION_PATCH "${CPACK_PACKAGE_VERSION_PATCH_NUMBER}-${LWS_BUILD_HASH}")
417 if(UNIX)
424 set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
428 set(CPACK_RPM_FILE_NAME "RPM-DEFAULT")
436 set(CPACK_DEBIAN_FILE_NAME "DEB-DEFAULT")
452 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/")
485 # on unix, these are in the toolchain. On win32 you have to put them somewhere
518 set(CMAKE_REQUIRED_DEFINITIONS "-DKEYWORD=${KEYWORD}")
536 # top of the build tree rather than in hard-to-find leaf directories.
606 set(CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS} " -DHAVE_STRUCT_TIMESPEC=1")
621 if (LWS_WITH_PLUGINS_API AND UNIX AND CMAKE_DL_LIBS AND NOT (${CMAKE_SYSTEM_NAME} MATCHES "QNX"))
748 CHECK_C_COMPILER_FLAG(-fvisibility=hidden LWS_HAVE_VISIBILITY)
750 CHECK_C_COMPILER_FLAG(-fanalyzer LWS_HAVE_FANALYZER)
753 set(VISIBILITY_FLAG -fvisibility=hidden)
756 set (GCOV_FLAGS "-fprofile-arcs -ftest-coverage ")
762 …set (ASAN_FLAGS "-fsanitize=address -fsanitize=undefined -fsanitize-address-use-after-scope -fsani…
764 …set (ASAN_FLAGS "${ASAN_FLAGS} -fsanitize=pointer-compare -fsanitize=pointer-subtract -fsanitize=l…
771 check_c_compiler_flag("-Wignored-qualifiers" LWS_GCC_HAS_IGNORED_QUALIFIERS)
772 check_c_compiler_flag("-Wtype-limits" LWS_GCC_HAS_TYPE_LIMITS)
773 check_c_compiler_flag("-Wno-deprecated-declarations" LWS_GCC_HAS_NO_DEPRECATED_DECLARATIONS)
776 set(CMAKE_C_FLAGS "-Wignored-qualifiers ${CMAKE_C_FLAGS}" )
780 set(CMAKE_C_FLAGS "-Wtype-limits ${CMAKE_C_FLAGS}" )
784 set(CMAKE_C_FLAGS "-fanalyzer ${CMAKE_C_FLAGS}" )
788 set(CMAKE_C_FLAGS "-Wuninitialized ${CMAKE_C_FLAGS}")
792 if (UNIX AND NOT LWS_PLAT_FREERTOS)
793 …set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-unused-parameter -Wconversion -Wsign-compare -Wstrict-aliasi…
795 set(CMAKE_C_FLAGS "-Wall -Wsign-compare ${VISIBILITY_FLAG} ${GCOV_FLAGS} ${CMAKE_C_FLAGS}" )
799 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
803 set(CMAKE_C_FLAGS "-Wno-deprecated ${CMAKE_C_FLAGS}")
805 set(CMAKE_C_FLAGS "-Wno-deprecated-declarations ${CMAKE_C_FLAGS}")
811 if (UNIX AND LWS_HAVE_PTHREAD_H AND NOT (${CMAKE_SYSTEM_NAME} MATCHES "QNX"))
812 # jeez clang understands -pthread but dies if he sees it at link time!
813 # http://stackoverflow.com/questions/2391194/what-is-gs-pthread-equiv-in-clang
814 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread" )
815 list(APPEND LIB_LIST_AT_END -lpthread)
822 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-deprecated-declarations" )
823 if (UNIX AND LWS_HAVE_PTHREAD_H)
824 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread -Wno-error=unused-command-line-argument" )
836 add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
845 set(CMAKE_C_FLAGS "-D__USE_MINGW_ANSI_STDIO ${CMAKE_C_FLAGS}")
846 add_definitions(-DWINVER=0x0601 -D_WIN32_WINNT=0x0601)
936 # Second-level CMakeLists
945 set(DEF_INSTALL_CMAKE_DIR cmake)
947 set(DEF_INSTALL_CMAKE_DIR lib${LIB_SUFFIX}/cmake/libwebsockets)
950 configure_file(${PROJECT_SOURCE_DIR}/cmake/LwsCheckRequirements.cmake
951 ${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/LwsCheckRequirements.cmake
954 configure_file(${PROJECT_SOURCE_DIR}/cmake/LwsCheckRequirements.cmake
955 ${PROJECT_BINARY_DIR}/LwsCheckRequirements.cmake
958 # Generate version info for both build-tree and install-tree.
959 configure_file(${PROJECT_SOURCE_DIR}/cmake/libwebsockets-config-version.cmake.in
960 ${PROJECT_BINARY_DIR}/libwebsockets-config-version.cmake
963 # Generate the config file for the build-tree.
968 configure_file(${PROJECT_SOURCE_DIR}/cmake/libwebsockets-config.cmake.in
969 ${PROJECT_BINARY_DIR}/libwebsockets-config.cmake
971 set(LWS_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake fil…
973 # Export targets (This is used for other CMake projects to easily find the libraries and include fi…
976 FILE "${PROJECT_BINARY_DIR}/LibwebsocketsTargets.cmake")
982 set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
986 add_subdirectory(minimal-examples)
990 add_subdirectory(test-apps)
1000 "${PROJECT_SOURCE_DIR}/cmake/lws_config.h.in"
1008 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/include/libwebsockets.h
1010 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/include/libwebsockets/
1012 COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_BINARY_DIR}/lws_config.h
1053 "${LWS_ABSOLUTE_INSTALL_INCLUDE_DIR}") # Calculate the relative directory from the cmake dir.
1062 configure_file(${PROJECT_SOURCE_DIR}/cmake/libwebsockets-config.cmake.in
1063 ${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/libwebsockets-config.cmake
1069 # Install the LibwebsocketsConfig.cmake and LibwebsocketsConfigVersion.cmake
1071 "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/libwebsockets-config.cmake"
1072 "${PROJECT_BINARY_DIR}/libwebsockets-config-version.cmake"
1073 "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/LwsCheckRequirements.cmake"
1076 # Install exports for the install-tree.