<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Анонсирована система сборки CMake 3.0.0]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=35166</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=35166&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Анонсирована система сборки CMake 3.0.0».]]></description>
		<lastBuildDate>Thu, 12 Jun 2014 06:41:25 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Анонсирована система сборки CMake 3.0.0]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=412717#p412717</link>
			<description><![CDATA[<p><a href="http://www.cmake.org/pipermail/cmake/2014-June/057793.html">Представлен</a> релиз написанного на языке C++ кроссплатформенного открытого генератора сценариев сборки <a href="http://www.cmake.org/">CMake 3.0.0</a>, выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код CMake распространяется под лицензией BSD.</p><p>Из достоинств CMake можно отметить простой язык сценариев, средства расширения функциональности через модули, минимальное число зависимостей (нет привязки к M4, Perl или Python), поддержка кэширования, наличие средств для кросс-компиляции, поддержка генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличие утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилита cmake-gui для интерактивной настройки параметров сборки.</p><p>Основные <a href="http://www.cmake.org/cmake/help/v3.0/release/3.0.0.html#new-features">изменения</a>:</p><p> </p><ul><li><p>Удалены компоненты для обеспечения совместимости со сценариями сборки, написанными для CMake 2.3 и более ранних выпусков;</p></li></ul><p>&nbsp; </p><ul><li><p>Язык сценариев расширен поддержкой новых элементов синтаксиса, заимствованных из Lua: <a href="http://www.cmake.org/cmake/help/v3.0/manual/cmake-language.7.html#bracket-comment">#[[комментарий]]</a> и <a href="http://www.cmake.org/cmake/help/v3.0/manual/cmake-language.7.html#bracket-argument">[=[аргумент]=]</a>, для которых содержимое внутри скобок воспринимается как есть, без замены переменных и обработки символов экранирования. Например, можно указать message(&quot;начало строки\n&quot; #[[комментарий]] &quot;продолжение строки&quot;) или message([=[переменная ${variable}]=]);</p></li></ul><ul><li><p>Переименованы генераторы файлов сборки для Visual Studio 10 (2010) и более новых выпусков: вместо &quot;Visual Studio 10&quot; следует использовать &quot;Visual Studio 10 2010&quot;, &quot;Visual Studio 11&quot; - &quot;Visual Studio 11 2012&quot;, &quot;Visual Studio 12&quot; - &quot;Visual Studio 12 2013&quot;. Поддержка старых имён генераторов оставлена для обеспечения совместимости;</p></li></ul><ul><li><p>Новый расширенный генератор &quot;<a href="http://www.cmake.org/cmake/help/v3.0/generator/CodeLite.html#generator:CodeLite">CodeLite</a>&quot;, предназначенный для генерации файлов проектов CodeLite и пригодный для использования с генераторами Makefile или Ninja;</p></li></ul><ul><li><p>Новый расширенный генератор &quot;<a href="http://www.cmake.org/cmake/help/v3.0/generator/Kate.html#generator:Kate">Kate</a>&quot;, предназначенный для генерации файлов проектов Kate и пригодный для использования с генераторами Makefile или Ninja;</p></li></ul><ul><li><p>В команду &quot;add_library()&quot; добавлена поддержка нового типа библиотек &quot;INTERFACE&quot;, которые не содержат правил сборки, но могут определять требования по использованию, что, например, применимо для создания заголовочных библиотек, уточняющих ссылочные зависимости с другими библиотеками;</p></li></ul><ul><li><p>В команду &quot;export()&quot; добавлен новый режим &quot;EXPORT&quot;, который получает список целей для экспорта из экспортного набора, настроенного через опцию &quot;EXPORT&quot; команды &quot;install(TARGETS)&quot;. Добавленная возможность позволяет упростить экспорт из сборочного дерева тех же самых целей, которые экспортированы из установочного дерева;</p></li></ul><ul><li><p>В команду &quot;project()&quot; добавлена обработка переменных с номером версии, выставляемых на основании новой опции &quot;VERSION&quot;;<br />&nbsp; &nbsp; Запрещено использование давно устаревших команд в новом коде: &quot;subdir_depends()&quot;, &quot;use_mangled_mesa()&quot;, &quot;load_command()&quot;, &quot;output_required_files()&quot;, &quot;export_library_dependencies()&quot;, &quot;utility_source()&quot;, &quot;variable_requires()&quot;, &quot;build_name()&quot;;</p></li></ul><ul><li><p>Изменён подход к нумерации версий CMake, вместо первых трёх цифр для обозначения уровня функциональных изменений теперь будут использоваться первые две цифры, третья цифра будет увеличиваться для корректирующих выпусков.</p></li></ul><p>Источник: <a href="http://www.opennet.ru/opennews/art.shtml?num=39983">http://www.opennet.ru/opennews/art.shtml?num=39983</a></p>]]></description>
			<author><![CDATA[null@example.com (Драко Стаарн)]]></author>
			<pubDate>Thu, 12 Jun 2014 06:41:25 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=412717#p412717</guid>
		</item>
	</channel>
</rss>
