Базовое приложение
This commit is contained in:
parent
451708a3ba
commit
cca531741b
@ -35,3 +35,6 @@ cmlib_config_hpp_generate()
|
|||||||
# Библиотека
|
# Библиотека
|
||||||
add_subdirectory(src/libcmex)
|
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