From cca531741bf6585050746f3ec818540ad7041f91 Mon Sep 17 00:00:00 2001 From: Andrey Astafyev Date: Tue, 12 Feb 2019 22:23:41 +0300 Subject: [PATCH] =?UTF-8?q?=D0=91=D0=B0=D0=B7=D0=BE=D0=B2=D0=BE=D0=B5=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 3 +++ src/cmex/CMakeLists.txt | 35 +++++++++++++++++++++++++++++++++++ src/cmex/main.cpp | 15 +++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 src/cmex/CMakeLists.txt create mode 100644 src/cmex/main.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index ea79748..260cbe8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -35,3 +35,6 @@ cmlib_config_hpp_generate() # Библиотека add_subdirectory(src/libcmex) +# Приложение +add_subdirectory(src/cmex) + diff --git a/src/cmex/CMakeLists.txt b/src/cmex/CMakeLists.txt new file mode 100644 index 0000000..a787bee --- /dev/null +++ b/src/cmex/CMakeLists.txt @@ -0,0 +1,35 @@ +# Название основной цели в текущем каталоге +set(current_target cmex_app) + +# Список файлов исходных текстов +set(current_target_sources + main.cpp + ) + +# Цель для создания исполняемого файла +add_executable(${current_target} ${current_target_sources}) +common_target_properties(${current_target}) + +# Зависимость от библиотеки из текущего проекта +add_dependencies(${current_target} cmex) + +# Добавление внутреннего каталога src/libcmex к списку путей для поиска заголовочных файлов +target_include_directories(${current_target} PUBLIC + $) + +# Имя выходного файла для цели +set_target_properties(${current_target} + PROPERTIES + OUTPUT_NAME cmex + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR} + ) + +# Путь поиска библиотек внутри проекта +link_directories(${CMAKE_INSTALL_LIBDIR}) + +# Сначала внутренние статические библиотеки +target_link_libraries(${current_target} cmex_static) + +# Правила для установки +install(TARGETS ${current_target} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + diff --git a/src/cmex/main.cpp b/src/cmex/main.cpp new file mode 100644 index 0000000..de1914c --- /dev/null +++ b/src/cmex/main.cpp @@ -0,0 +1,15 @@ +#include "compiler_features.hpp" +#include "config.hpp" + +#include + +#include "cmex.hpp" + +int main(int argc, char **argv) { + std::cout << CMEX_COMPILER_VERSION_MAJOR << std::endl; // Значение из compiler_features.hpp + std::cout << BUILD_TYPE << std::endl; // Значение из config.hpp + std::cout << CMEX_VERSION_STR << std::endl; // Значение из config.hpp + std::cout << cmex_init(4) << std::endl; // Функция из внутренней библиотеки + return 0; +} +