Size: a a a

2021 March 24

D

Dmitriy in Qt
из последнего в cmake бесит что нету uninstall в makefile, для этого даже в самом cmake вот такой костыль https://github.com/Kitware/CMake/blob/master/cmake_uninstall.cmake.in
источник

FS

Flower Surgeon in Qt
Макс Воробьев
обидно, что  qbs загнулся раньше, чем qmake
он разогнулся уже
источник

МВ

Макс Воробьев... in Qt
Flower Surgeon
он разогнулся уже
кста. там есть поддержка компилей кроме С++ ?
источник

SK

Serguei Khvatov in Qt
Dmitriy
мда, qmake походу станет легаси в каком нить qt7
Да, скорее всего. Что они официально переехали со своей сборочной системы на стороннюю — это она действительно это заслужила. Изучайте cmake, он куда интереснее и гибче.
Кто на очереди — их поддержка мультиязыков? :)
источник

МВ

Макс Воробьев... in Qt
или нужно пилить самому по образцу и подобию?
источник

D

Dmitriy in Qt
cmake мне не очень нравится своими костыльными подходами ;) например ввели декларативный подязык в виде generator-expressions - специальные выражения <?:...> для стадии generate (которая выполнеяется после configure)
источник

FS

Flower Surgeon in Qt
Макс Воробьев
кста. там есть поддержка компилей кроме С++ ?
джава есть вроде, ну и всё, насколько я помню
источник

m

mefest in Qt
вроде для сборки Qt да. а в проектах qmake остается
источник

SK

Serguei Khvatov in Qt
Dmitriy
cmake мне не очень нравится своими костыльными подходами ;) например ввели декларативный подязык в виде generator-expressions - специальные выражения <?:...> для стадии generate (которая выполнеяется после configure)
костыли как раз в qmake. В cmake макросы на все случаи жизни. Да, с непривычки непросто, и по-моему он медленно, но верно, идёт по пути autotools к невменяемости, но лет 5..10 у него ещё есть
источник

D

Dmitriy in Qt
у cmake самое офигенное это find_package которые таргеты и зависимости подтягивает в текущий файл (если у пакета есть Cmake конфиг для экспорта с таргетами)
источник

МВ

Макс Воробьев... in Qt
Dmitriy
у cmake самое офигенное это find_package которые таргеты и зависимости подтягивает в текущий файл (если у пакета есть Cmake конфиг для экспорта с таргетами)
у meson dependency интереснее
источник

МВ

Макс Воробьев... in Qt
в том плане, что ищет зависимости из разных сорсов (cmake, pkg, dub ...)
источник

SK

Serguei Khvatov in Qt
Dmitriy
у cmake самое офигенное это find_package которые таргеты и зависимости подтягивает в текущий файл (если у пакета есть Cmake конфиг для экспорта с таргетами)
это всего лишь интерфейс к pkgconfig в linux&Co.
Но над ним ещё много чего вкусного написано. А что ещё не написано — можно и самому дописать. Мне приходилось.
источник

МВ

Макс Воробьев... in Qt
Serguei Khvatov
это всего лишь интерфейс к pkgconfig в linux&Co.
Но над ним ещё много чего вкусного написано. А что ещё не написано — можно и самому дописать. Мне приходилось.
разве find_package не FindLib.cmake ищет ?
источник

SE

Stanislav Ershov in Qt
Serguei Khvatov
это всего лишь интерфейс к pkgconfig в linux&Co.
Но над ним ещё много чего вкусного написано. А что ещё не написано — можно и самому дописать. Мне приходилось.
pkgconfig вообще отдельным модулем идет
источник

D

Dmitriy in Qt
там вроде 3 варианта работы, старый вариант (MODULE)  с поиском ./cmake/FindLib.cmake где потом создаются глоб. переменные lib_FOUND и т.п. (CONFIG) вариант где FindLib.cmake ищется в пакетах предустановленных в системе и PKGCONFIG вариант (как раз используется pkgconfig из системы)
источник

SE

Stanislav Ershov in Qt
Dmitriy
там вроде 3 варианта работы, старый вариант (MODULE)  с поиском ./cmake/FindLib.cmake где потом создаются глоб. переменные lib_FOUND и т.п. (CONFIG) вариант где FindLib.cmake ищется в пакетах предустановленных в системе и PKGCONFIG вариант (как раз используется pkgconfig из системы)
нет
источник

SE

Stanislav Ershov in Qt
источник

SE

Stanislav Ershov in Qt
вот отдельный модуль для работы с pkgconfig
источник

SK

Serguei Khvatov in Qt
Stanislav Ershov
pkgconfig вообще отдельным модулем идет
Это вообще отдельная компонента в системе. Я не знаю, как работает find_package, но выдаёт он подозрительно то же самое, и никаких run-time tests на «радость» кросс-компилирующим не делает.
источник