Пример программы
This commit is contained in:
22
src/cmlib-example/CMakeLists.txt
Normal file
22
src/cmlib-example/CMakeLists.txt
Normal file
@ -0,0 +1,22 @@
|
||||
# Название основной цели и имя библиотеки в текущем каталоге
|
||||
set(TRGT cmlib-example)
|
||||
|
||||
# Список файлов исходных текстов
|
||||
set(TRGT_sources ${CMAKE_CURRENT_SOURCE_DIR}/main.cpp)
|
||||
|
||||
# Функция для создания цели, результатом которой будет сборка приложения
|
||||
add_executable(${TRGT} ${TRGT_sources})
|
||||
common_target_properties(${TRGT})
|
||||
|
||||
# Добавление к пути поиска заголовочных файлов
|
||||
target_include_directories(${TRGT} SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
|
||||
|
||||
# Имя целевого каталога и выходного файла для цели
|
||||
set_target_properties(${TRGT}
|
||||
PROPERTIES
|
||||
OUTPUT_NAME ${TRGT}
|
||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
|
||||
)
|
||||
|
||||
# Правила для установки
|
||||
install(TARGETS ${TRGT} COMPONENT MAIN RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
20
src/cmlib-example/main.cpp
Normal file
20
src/cmlib-example/main.cpp
Normal file
@ -0,0 +1,20 @@
|
||||
#include <iostream>
|
||||
#include <boost/range/counting_range.hpp>
|
||||
|
||||
int32_t nsum(int32_t i = 0)
|
||||
{
|
||||
int32_t s = 0;
|
||||
for ( auto r : boost::counting_range( 1, i ) )
|
||||
{
|
||||
s += r;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
auto s = nsum( argc );
|
||||
std::cout << s << std::endl;
|
||||
return ( s );
|
||||
}
|
||||
|
Reference in New Issue
Block a user