# Generated by `boostdep --cmake process` # Copyright 2020 Peter Dimov # Distributed under the Boost Software License, Version 1.0. # https://www.boost.org/LICENSE_1_0.txt cmake_minimum_required(VERSION 3.8...3.31) project(boost_process VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX) option(BOOST_PROCESS_USE_STD_FS "Use std::filesystem instead of Boost.Filesystem" OFF) add_library(boost_process src/detail/environment_posix.cpp src/detail/environment_win.cpp src/detail/last_error.cpp src/detail/process_handle_windows.cpp src/detail/throw_error.cpp src/detail/utf8.cpp src/ext/cmd.cpp src/ext/cwd.cpp src/ext/env.cpp src/ext/exe.cpp src/ext/proc_info.cpp src/posix/close_handles.cpp src/windows/default_launcher.cpp src/environment.cpp src/error.cpp src/pid.cpp src/shell.cpp) add_library(Boost::process ALIAS boost_process) target_include_directories(boost_process PUBLIC include) target_link_libraries(boost_process PUBLIC Boost::algorithm Boost::asio Boost::config Boost::core Boost::fusion Boost::iterator Boost::move Boost::optional Boost::system Boost::tokenizer Boost::type_index Boost::winapi ) target_compile_definitions(boost_process PRIVATE BOOST_PROCESS_SOURCE=1 ) if(BOOST_PROCESS_USE_STD_FS) target_compile_definitions(boost_process PUBLIC BOOST_PROCESS_USE_STD_FS) target_compile_features(boost_process PUBLIC cxx_std_17) else() target_link_libraries(boost_process PUBLIC Boost::filesystem) endif() if(WIN32) target_link_libraries(boost_process PUBLIC ntdll shell32 advapi32 user32 ws2_32) endif() if(BUILD_SHARED_LIBS) target_compile_definitions(boost_process PUBLIC BOOST_PROCESS_DYN_LINK) else() target_compile_definitions(boost_process PUBLIC BOOST_PROCESS_STATIC_LINK) endif() if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt") add_subdirectory(test) endif()