cmake_minimum_required(VERSION 3.20) project(ss_socks5_client C) set(CMAKE_C_STANDARD 11) if (MSVC) add_compile_options(/O2 /GL /permissive- /Zc:inline /W4) add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_WIN32_WINNT=0x0A00) else() add_compile_options(-O3 -march=native -DNDEBUG -Wall -Wextra) endif() find_package(OpenSSL REQUIRED) find_package(PkgConfig REQUIRED) pkg_check_modules(LIBEVENT REQUIRED libevent) add_executable(ss_socks5_client ss_socks5_client.c) target_include_directories(ss_socks5_client PRIVATE ${LIBEVENT_INCLUDE_DIRS}) target_link_libraries(ss_socks5_client PRIVATE ${LIBEVENT_LIBRARIES} OpenSSL::Crypto) if (WIN32) target_link_libraries(ss_socks5_client PRIVATE ws2_32) endif()