Базовое приложение
This commit is contained in:
parent
451708a3ba
commit
cca531741b
@ -35,3 +35,6 @@ cmlib_config_hpp_generate()
|
||||
# Библиотека
|
||||
add_subdirectory(src/libcmex)
|
||||
|
||||
# Приложение
|
||||
add_subdirectory(src/cmex)
|
||||
|
||||
|
35
src/cmex/CMakeLists.txt
Normal file
35
src/cmex/CMakeLists.txt
Normal file
@ -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
|
||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/src/libcmex>)
|
||||
|
||||
# Имя выходного файла для цели
|
||||
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})
|
||||
|
15
src/cmex/main.cpp
Normal file
15
src/cmex/main.cpp
Normal file
@ -0,0 +1,15 @@
|
||||
#include "compiler_features.hpp"
|
||||
#include "config.hpp"
|
||||
|
||||
#include <iostream>
|
||||
|
||||
#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;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user