diff --git a/wiki/Prog/Development/CMake управление проектом.adoc b/wiki/Prog/Development/CMake управление проектом.adoc index ab78a71..5bfcd72 100644 --- a/wiki/Prog/Development/CMake управление проектом.adoc +++ b/wiki/Prog/Development/CMake управление проектом.adoc @@ -163,7 +163,7 @@ make файлами и перечни библиотек, необходимых для компоновки. Сначала производится наличие модуля `PkgConfig`, в котором определена функция `pkg_check_modules`, которая и осуществляет поиск. Например, для поиска -библиотек `gsl`, `fftw3` и `udev` можно написать: +библиотек `gsl`, `fftw3` и `udev` можно написать в файле `CMakeLists.txt`: [source,cmake] ---- @@ -202,7 +202,7 @@ find_library(MATHGLQT5 mgl-qt5 PATHS /usr/lib /usr/lib/x86_64-linux-gnu) На этапе конфигурирования проекта можно создать файл, в который будут записаны параметры, полученные на данной стадии. В библиотеке CMLib присутствует функция `cmlib_config_hpp_generate()`, создающая файл -`${CMAKE_BUILD_DIR}/include/config.hpp`, в который записывается +`${CMAKE_BUILD_DIR}/include/cmlib_config.hpp`, в который записывается информация о имени и версии проекта, дате и типе сборки. [source,cmake] @@ -277,7 +277,7 @@ install(TARGETS ${current_target}_static ARCHIVE DESTINATION ${CMAKE_INSTALL_LIB if(BUILD_SHARED_LIBS) install(TARGETS ${current_target}_shared LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) endif() -install(FILES ${CMAKE_BINARY_DIR}/include/config.hpp ${current_target_headers} +install(FILES ${CMAKE_BINARY_DIR}/include/cmlib_config.hpp ${current_target_headers} COMPONENT headers DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${current_target}) ---- @@ -296,7 +296,7 @@ add_subdirectory(src/cmex) [source,cpp] ---- #include "compiler_features.hpp" -#include "config.hpp" +#include "cmlib_config.hpp" #include @@ -304,8 +304,8 @@ add_subdirectory(src/cmex) 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 << BUILD_TYPE << std::endl; // Значение из cmlib_config.hpp + std::cout << CMEX_VERSION_STR << std::endl; // Значение из cmlib_config.hpp std::cout << cmex_init(4) << std::endl; // Функция из внутренней библиотеки return 0; } @@ -354,7 +354,7 @@ install(TARGETS ${current_target} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) == Подключение внешнего проекта В каталоге `cmex/thirdparty` нужно создать каталог `cmext` с проектом, -состоящим из файлов `cmext.hpp`: +состоящим из файла `cmext.hpp`: [source,c] ---- @@ -368,7 +368,7 @@ int32_t cmext_init(int32_t i); #endif ---- -`cmext.cpp`: +файла `cmext.cpp`: [source,c] ---- @@ -379,7 +379,7 @@ int32_t cmext_init(int32_t i = 0) { } ---- -и `CMakeLists.txt`: +и файла `CMakeLists.txt`: [source,cmake] ---- @@ -445,7 +445,7 @@ target_link_libraries(${current_target} ${CMAKE_BINARY_DIR}/lib/libcmext.a) [source,cpp] ---- #include "compiler_features.hpp" -#include "config.hpp" +#include "cmlib_config.hpp" #include #include @@ -461,9 +461,9 @@ QTextStream& qStdOut() int main(int argc, char **argv) { // Значение из compiler_features.hpp qStdOut() << QObject::tr("Compiler version: ") << CMEX_COMPILER_VERSION_MAJOR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Project version: ") << CMEX_VERSION_STR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Build type: ") << BUILD_TYPE << endl; // Функция из внутренней библиотеки qStdOut() << QObject::tr("libcmex function call: ") << cmex_init(4) << endl; @@ -476,8 +476,8 @@ int main(int argc, char **argv) { == Qt5 -Для поиска необходимых компонентов Qt5 нужно в файл -`cmex/CMakeLists.txt` добавить строки: +Для поиска необходимых компонентов Qt5 нужно в файл `cmex/CMakeLists.txt` +перед вызовом функции `cmlib_config_hpp_generate()` нужно добавить строку: [source,cmake] ---- @@ -509,7 +509,7 @@ target_link_libraries(${current_target} Qt5::Core) [source,cpp] ---- #include "compiler_features.hpp" -#include "config.hpp" +#include "cmlib_config.hpp" #include #include @@ -533,9 +533,9 @@ int main(int argc, char **argv) { } // Значение из compiler_features.hpp qStdOut() << QObject::tr("Compiler version: ") << CMEX_COMPILER_VERSION_MAJOR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Project version: ") << CMEX_VERSION_STR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Build type: ") << BUILD_TYPE << endl; // Функция из внутренней библиотеки qStdOut() << QObject::tr("libcmex function call: ") << cmex_init(4) << endl; @@ -632,7 +632,7 @@ MyMainWindow::~MyMainWindow() { [source,cpp] ---- #include "compiler_features.hpp" -#include "config.hpp" +#include "cmlib_config.hpp" #include #include @@ -659,9 +659,9 @@ int main(int argc, char **argv) { // Значение из compiler_features.hpp qStdOut() << QObject::tr("Compiler version: ") << CMEX_COMPILER_VERSION_MAJOR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Project version: ") << CMEX_VERSION_STR << endl; - // Значение из config.hpp + // Значение из cmlib_config.hpp qStdOut() << QObject::tr("Build type: ") << BUILD_TYPE << endl; // Функция из внутренней библиотеки qStdOut() << QObject::tr("libcmex function call: ") << cmex_init(4) << endl;