URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 96266
[ Назад ]

Исходное сообщение
"Анонсирована система сборки CMake 3.0.0"

Отправлено opennews , 11-Июн-14 18:15 
Представлен (http://www.cmake.org/pipermail/cmake/2014-June/057793.html) релиз написанного на языке C++ кроссплатформенного открытого генератора сценариев сборки CMake 3.0.0 (http://www.cmake.org/), выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB и Blender. Код  CMake распространяется под лицензией BSD.


Из достоинств CMake можно отметить простой язык сценариев, средства расширения функциональности через модули, минимальное число зависимостей (нет привязки к M4, Perl или Python), поддержка кэширования, наличие средств для кросс-компиляции, поддержка генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличие утилит ctest и
cpack для определения сценариев тестирования и сборки пакетов, утилита cmake-gui для интерактивной настройки параметров сборки.


Основные изменения (http://www.cmake.org/cmake/help/v3.0/release/3.0.0.html#new-...):


-  Удалены компоненты для обеспечения совместимости со сценариями сборки, написанными для CMake 2.3 и более ранних выпусков;

-  Язык сценариев расширен поддержкой новых элементов синтаксиса, заимствованных из Lua: #[[комментарий]] (http://www.cmake.org/cmake/help/v3.0/manual/cmake-language.7...) и [=[аргумент]=] (http://www.cmake.org/cmake/help/v3.0/manual/cmake-language.7...), для которых содержимое внутри скобок воспринимается как есть, без замены переменных и обработки символов экранирования. Например, можно указать message("начало строки\n" #[[комментарий]] "продолжение строки") или message([=[переменная ${variable}]=]);

-  Переименованы генераторы файлов сборки для  Visual Studio 10 (2010) и более новых выпусков: вместо "Visual Studio 10" следует использовать "Visual Studio 10 2010", "Visual Studio 11" - "Visual Studio 11 2012", "Visual Studio 12" - "Visual Studio 12 2013". Поддержка старых имён генераторов оставлена для обеспечения совместимости;
-  Новый расширенный генератор "CodeLite (http://www.cmake.org/cmake/help/v3.0/generator/CodeLite.html...)", предназначенный для генерации файлов проектов CodeLite и пригодный для использования с генераторами Makefile или Ninja;
-  Новый расширенный генератор "Kate (http://www.cmake.org/cmake/help/v3.0/generator/Kate.html#gen...)", предназначенный для генерации файлов проектов Kate и пригодный для использования с генераторами Makefile или Ninja;
-  В команду "add_library()" добавлена поддержка нового типа библиотек "INTERFACE", которые не содержат правил сборки, но могут определять требования по использованию, что, например, применимо для создания заголовочных библиотек, уточняющих ссылочные зависимости с другими библиотеками;
-  В команду "export()" добавлен новый режим "EXPORT", который получает список целей для экспорта из экспортного набора, настроенного через опцию "EXPORT" команды "install(TARGETS)". Добавленная возможность позволяет упростить экспорт из сборочного дерева тех же самых целей, которые экспортированы из установочного дерева;
-  В команду "project()" добавлена обработка переменных с номером версии, выставляемых на основании новой опции "VERSION";

-  Запрещено использование давно устаревших команд в новом коде: "subdir_depends()", "use_mangled_mesa()", "load_command()", "output_required_files()", "export_library_dependencies()", "utility_source()", "variable_requires()", "build_name()";

-  Изменён подход к нумерации версий CMake, вместо первых трёх цифр для обозначения уровня функциональных изменений теперь будут использоваться первые  две цифры, третья цифра будет увеличиваться для корректирующих выпусков.

URL: http://www.cmake.org/pipermail/cmake/2014-June/057793.html
Новость: http://www.opennet.me/opennews/art.shtml?num=39983


Содержание

Сообщения в этом обсуждении
"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 18:28 
> Переименованы генераторы файлов сборки для Visual Studio 10 (2010) и более новых выпусков: вместо "Visual Studio 10" следует использовать "Visual Studio 10 2010", "Visual Studio 11" - "Visual Studio 11 2012", "Visual Studio 12" - "Visual Studio 12 2013". Поддержка старых имён генераторов оставлена для обеспечения совместимости;

За такие названия генераторов хочется сделать разработчикам CMake больно — длинные, с пробелами и буквами в обоих регистрах; набирать подобное в консоли та ещё "радость".


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 18:46 
Да уж, то ли дело QBS!

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 21:23 
> Да уж, то ли дело QBS!

Вот не надо на QBS наезжать. По сравнению с qmake это большой прорыв, хотя, конечно, при наличии cmake не понятно нафига оно нужно.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 13:31 
Перечитал, понял что прозвучало как сарказм. На самом деле как раз наоборот)
Я уже почти полсотни проектов на него перевел, причем еще собираю все 3rdparty-либы им, кроме буста)

"Анонсирована система сборки CMake 3.0.0"
Отправлено qqqq , 12-Июн-14 14:52 
>>почти полсотни проектов на него перевел

А можно где-то глянуть на это, для расширения кругозора ?


"Анонсирована система сборки CMake 3.0.0"
Отправлено Влаидмир , 12-Июн-14 15:26 
Увы, сами проекты нет, но если желаете, то можете найти меня по нику mapron, я могу поделиться примерами скриптов, модулей, интеграции со студией, о подводных камнях и прочем.

А так лучшая иллюстрация конечно - qbs скрипты в дереве Qt Creator.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Константавр , 11-Июн-14 19:15 
Да, в этом вся суть опенсорса, сначала попереименовать всё "более правильными" именами а потом сделать
>Удалены компоненты для обеспечения совместимости со сценариями сборки, написанными для CMake 2.3 и более ранних выпусков

Для пущей полезности и важности.


"Анонсирована система сборки CMake 3.0.0"
Отправлено анонко , 11-Июн-14 20:33 
> Да, в этом вся суть опенсорса, сначала попереименовать всё "более правильными" именами
> а потом сделать
>>Удалены компоненты для обеспечения совместимости со сценариями сборки, написанными для CMake 2.3 и более ранних выпусков
> Для пущей полезности и важности.

всё верно только это делает не только опенсорс


"Анонсирована система сборки CMake 3.0.0"
Отправлено rshadow , 12-Июн-14 04:12 
Я бы даже сказал что проприетарщики делают чаще. Новый продукт _должны_ покупать.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 15:39 
> Я бы даже сказал что проприетарщики делают чаще. Новый продукт _должны_ покупать.

...поэтому MS выпустив всякое гомнецо типа win8 и wp8 потом дудит в пиар-рупоры, подминает всяких нокл, устраивает аферы с предустановкой и что там еще. Ведь покупать _должны_. А если не покупают - надо толкать продукт в глотку поршнем! Хоть это и полулегально, особенно в случае монополии, но бабло побеждает зло.


"Анонсирована система сборки CMake 3.0.0"
Отправлено dhamp , 11-Июн-14 21:49 
>Да, в этом вся суть опенсорса, сначала попереименовать всё "более правильными" именами а потом сделать
>>Удалены компоненты для обеспечения совместимости со сценариями сборки, написанными для CMake 2.3 и более ранних выпусков
>Для пущей полезности и важности.

последний релиз в ветке 2.3.x(2.3.4) был 17 марта 2006, действительно чего-то коммерческая компания(Kitware, Inc) решила дропнуть поддержку, пускай поддерживают до бесконесности.


"Анонсирована система сборки CMake 3.0.0"
Отправлено crypt , 12-Июн-14 10:08 
в опенсорсе разные проекты есть. а вот несовместимость cmake между версиями - эт да, задалбывает при сборке.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 13-Июн-14 12:37 
> в опенсорсе разные проекты есть. а вот несовместимость cmake между версиями -
> эт да, задалбывает при сборке.

Про декларацию минимальной требуемой версии, которая автоматически настраивает policy — не, не слышали?


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 19:29 
Моя самая любимая программа.

"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 11-Июн-14 20:03 
>Моя самая любимая программа.

смешно))


"Анонсирована система сборки CMake 3.0.0"
Отправлено Michael Shigorin , 12-Июн-14 21:25 
>>Моя самая любимая программа.
> смешно))

"ай лайк ту шмяк ит, шмяк ит" -- это уже не смешно!


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 20:52 
И в качестве браузера? :)


"Анонсирована система сборки CMake 3.0.0"
Отправлено iZEN , 11-Июн-14 19:40 
CMake — лучший сборщик на FreeBSD.

"Анонсирована система сборки CMake 3.0.0"
Отправлено A.Stahl , 11-Июн-14 19:58 
А ВЛ-80 лучший электровоз на Марсе.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 20:13 
ужс... мне жаль тебя
https://www.google.com/search?rls=en&q=cmake+suck&ie=utf-8&o...

"Анонсирована система сборки CMake 3.0.0"
Отправлено iZEN , 11-Июн-14 20:32 
> ужс... мне жаль тебя

http://demotivators.to/media/posters/3381/804244_mne-vas-zha...


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 23:48 
"...в каментах... интеллектуал..."
Да, мля... Именно интеллектуалы и делают такие демотиваторы. С грубыми грамматическими ошибками.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 15:41 
А вы специально 2 раза повторили, для iZEN и прочих "интеллектуалов" с IQ=50, до которых с 1 раза не доходит?

"Анонсирована система сборки CMake 3.0.0"
Отправлено iZEN , 13-Июн-14 01:56 
Ерохвост.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 21:22 
> CMake — лучший сборщик на FreeBSD.

FreeBSD твоя тут совершенно не при чём.
CMake - просто лучшая на данный момент сборочная система.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 16:23 
> CMake — лучший сборщик на FreeBSD.

Изя, как ты мог? Он же на плюсах! А как же жабские среды? :)


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 20:23 
Но, блин, почему даже небольшие проекты использующие CMake очень долго компилируются?

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 21:20 
Может потому что содержат много исходного кода?

"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 11-Июн-14 21:59 
> Может потому что содержат много исходного кода?

потому что Си без пол-литра не разобрать, компиляторы медленные. Еще препроцессор, и с безопасностью туго, приходится инструменты всякие дополнительно разрабатывать (вплоть до монстров типа valgrind) и писать тучи манов "как безопасно кодить на С/C++".

Если АНБ и ввёл троянского коня - так это в самой основе мышления программистов: костыль под названием Сишечка.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 11-Июн-14 22:34 
> потому что Си без пол-литра не разобрать, компиляторы медленные. Еще препроцессор,

Как раз си компилируется быстро. Вот плюсы уже другое дело.

> и с безопасностью туго, приходится инструменты всякие дополнительно разрабатывать

"Бешеному дитяти ножа в руки не давати".

> (вплоть до монстров типа valgrind)

Монстр типа valgrind разложит по полочкам и найдет даже небольшую утечку памяти с полоборота. А у других ЯПов сравнимого инструментария просто НЕТ. Поэтому если там вдруг случаются утечки - начинается полный кластерфак.

> и писать тучи манов "как безопасно кодить на С/C++".

"Дypaк и огурцом порежется". Примеры всяких moinmoin и т.п. прекрасно иллюстрируют этот тезис.

> костыль под названием Сишечка.

Как же ты пользуешься костыльными операционками? Срочно перепиши их все на яваскрипте и бидоне, мегапрограммист хренов.


"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 11-Июн-14 23:14 
>> потому что Си без пол-литра не разобрать, компиляторы медленные. Еще препроцессор,
> Как раз си компилируется быстро.

вижу, компилирую бывает либы для си. в сравнении с пакалём - меееедленно.

> "Бешеному дитяти ножа в руки не давати".

ножом алгоритмы и безопасный код писати могут только бешеные дитяти.

>> (вплоть до монстров типа valgrind)
> Монстр типа valgrind разложит по полочкам и найдет даже небольшую утечку памяти
> с полоборота. А у других ЯПов сравнимого инструментария просто НЕТ. Поэтому
> если там вдруг случаются утечки - начинается полный кластерфак.

да-да-да, контроль массивов в других языках искаропки, а IO-checker'ы, overflow-checker'ы и прочее - флаг компилятора. расскажи о других ЯП)))

>> и писать тучи манов "как безопасно кодить на С/C++".
> "Дypaк и огурцом порежется". Примеры всяких moinmoin и т.п. прекрасно иллюстрируют этот
> тезис.

почти все сишники поголовно пишут небезопасный код обзывая друг друга дураками и прочей лестью.

>> костыль под названием Сишечка.
> Как же ты пользуешься костыльными операционками?

как-то так.

> Срочно перепиши их все на яваскрипте и бидоне, мегапрограммист хренов.

зачем? достаточно новый код писать на легких, быстрых и понятных языках, созданными человеками для человеков, благо такие есть.



"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 07:13 
>достаточно новый код писать на легких, быстрых и понятных языках, созданными человеками для человеков, благо такие есть.

Огласите весь список


"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 12-Июн-14 14:33 
>>достаточно новый код писать на легких, быстрых и понятных языках, созданными человеками для человеков, благо такие есть.
> Огласите весь список

oberon(2)
modula(2,3)
go.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 16:15 
>> Огласите весь список
> oberon(2)
> modula(2,3)
> go.

ИЧСХ пока не видно операционок на всем этом. В смысле, не PoC вида "ежи тоже могут летать, главное пнуть посильнее" а нечто практически значимое.


"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 12-Июн-14 16:47 
>>> Огласите весь список
>> oberon(2)
>> modula(2,3)
>> go.
> ИЧСХ пока не видно операционок на всем этом.

на одном есть.

> PoC вида "ежи тоже могут летать, главное пнуть посильнее"

это про Си и безопасность.

> а нечто практически значимое.

смотря для кого, но да, проектов уровня linux/bsd на безопасных языках практически нету.


"Анонсирована система сборки CMake 3.0.0"
Отправлено Michael Shigorin , 12-Июн-14 21:28 
> oberon(2)
> modula(2,3)
> go.

Мог пропустить и, кажется, именно Вас уже спрашивал -- много ли кода на них написали?  В своё время много писал на M2 и прям аж любопытство разобрало, что ж это за человечище такой.


"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 13-Июн-14 00:43 
я много кода читаю)) и читать эти языки (го - так себе) - интуитивно даже понятно. А сишный код говорит сам за себя.

"Анонсирована система сборки CMake 3.0.0"
Отправлено Ordu , 12-Июн-14 09:10 
> вижу, компилирую бывает либы для си. в сравнении с пакалём - меееедленно.

Ну это естественно. Ведь в чём не меряй скорость компиляции -- хоть в строках/сек, хоть в мегабайтах/сек -- в выигрыше окажется паскаль, как содержащий больше синтаксического мусора, который не приводит к генерации кода.

> почти все сишники поголовно пишут небезопасный код обзывая друг друга дураками и прочей лестью.

Почти все паскалисты вообще не пишут кода. А тех, кто всё же что-то пишет, хочется взять и больно избить. Уже, хотя бы, за мозговыносящий pascal-mode в emacs. Нет мода хуже, чем pascal-mode, и Николаус пророк его.


"Анонсирована система сборки CMake 3.0.0"
Отправлено цирроз , 12-Июн-14 10:01 
>Почти все паскалисты вообще не пишут кода

Они пишут код в школе


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 16:16 
> Они пишут код в школе

Для школы паскаль хорош - зануден и приучает к порядку. Но почему-то взрослому человеку не очень нравятся поучения от бабушек которыми бабушки пичкают пятилетних внуков. Не знаете что за фигня?


"Анонсирована система сборки CMake 3.0.0"
Отправлено цирроз , 12-Июн-14 18:21 
Стереотипность мышления бабушек, сударь. Плюс, как правило, катастрофическое отсутствие кругозора.
В принципе, это свойственно не только бабушкам, но и всяким адептам, знающим чисто теоретически, или весьма поверхностно тематику.

"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 12-Июн-14 14:34 
> мозговыносящий pascal-mode в emacs. Нет мода хуже, чем pascal-mode,

fpc поддерживается?


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 16:13 
> вижу, компилирую бывает либы для си. в сравнении с пакалём - меееедленно.

Странно. И чего это никто не пишет либы на паскале. И операционки не пишут.

> ножом алгоритмы и безопасный код писати могут только бешеные дитяти.

Дитяти типа вас пишут код огурцами, хоть это и неудобно. Зато "безопасно". Правда все-равно режутся, что забавно. Хотя если посмотреть на определение проблем безопасности от D.J.Berstein - все станет просто и понятно. И окажется что DJB может писать на "небезопасных" сях на порядок более безопасный код чем дитятя типа вас - на любом ином ЯП. Потому что дитятя наивно думает что умная среда от всего защитит, а самому стало быть можно и не думать совсем.

> да-да-да, контроль массивов в других языках искаропки,

...и тормознет раза в три в каком-нибудь глубоком цикле, где микросекунды превращаются в часы. Если один кодек кодирует мувик за 10 минут, а второй за полчаса - ты каким будешь пользоваться? Ну вот большинство людей недвусмысленно выбирает первый вариант, по поводу чего си до сих пор на коне и на покой не собирается.

> а IO-checker'ы, overflow-checker'ы и прочее - флаг компилятора расскажи о других ЯП)))

Си не для тех кто дрейфует без руля и без ветрил, не понимая что делает. Ну примерно как наиболее опасные предметы недееспособным не продают. А человеку разумному ограничения, свисточки и звоночки навешиваемые на недееспособных, гадящих под себя - мешают, знаете ли.

> почти все сишники поголовно пишут небезопасный код обзывая друг друга дyраками и
> прочей лестью.

Когда ты сможешь написать на своих любимых ЯП хотя-бы простенький lempel-ziv, ну хоть декомпрессор для оного и поффтыкаешь на соотношение скорости работы vs полученная степень сжатия vs как это соотносится с другими проектами - осознаешь почему большинство софта таки пишут на си. Ибо когда оно тормозит как LZMA а жмет как LZO - это достаточно обидно получается, да? :)

>> Как же ты пользуешься костыльными операционками?
> как-то так.

Генерал Фэйлор читает диск. Это так умно - полить сишников гомном и обнаружить что без них, оказывается, лыжи встают на асфальт и что-то не едут. Тебе не кажется что довольно странная идея - гадить там где ты живешь да еще яростно пи...ть санитаров при попытке убрать твое дepьмо?

> зачем? достаточно новый код писать на легких, быстрых и понятных языках, созданными
> человеками для человеков, благо такие есть.

Си - легкий и быстрый, оверхед минмален и медвежьи услуги по автоподтиранию зада всяким обделавшимся - не навязываются. И достаточно понятный (если это не obfuscated C contest, конечно). Его "core part" можно кой-как по минимуму освоить за полдня, если сильно прижало. Он простой. На самом деле для понимания оного достаточно осознать несколько простых истин насчет того как работают компьютеры и выучить достаточно лаконичный синтаксис.


"Анонсирована система сборки CMake 3.0.0"
Отправлено chinarulezzz , 12-Июн-14 16:42 
да, си крутой потому что на нём пишут)) чувак, мы говорим о разном. проехали)

"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 16-Июн-14 08:55 
Забавно приписывать плюсы компилятора и оптимизатора языку программирования.

"Анонсирована система сборки CMake 3.0.0"
Отправлено kravich , 12-Июн-14 03:56 
>Новый расширенный генератор "CodeLite"

гуд


"Анонсирована система сборки CMake 3.0.0"
Отправлено Аноним , 12-Июн-14 07:46 
ура !

"Анонсирована система сборки CMake 3.0.0"
Отправлено Pulfer , 12-Июн-14 08:31 
Пока ещё сложно судить, сколько проблем переход на новую версию вызовет, но как минимум hedgewars с ним перестал собираться.