я читал модули лязг документация.
Я понял несколько вещей, я не знаю, правда ли я или нет.
-fmodules
а также -fbuiltin-module-map
к каждому скомпилированному исходному файлу как clang
В качестве аргументов я получу все преимущества таких модулей, как предварительно скомпилированные заголовки для стандартных включений, с 0 модификациями, из-за включает в себя импорт.У меня вопрос такой. Как я могу автоматически прекомпилировать каждый заголовочный файл? Должен ли я генерировать карту модуля со сценарием для заголовков, чтобы они были предварительно скомпилированы? Один гигантский modulemap или один modulemap для каждого заголовка?
Меня не волнует план стандартных комитетов C ++ или логический аспект модулей. Все, что мне нужно, это ускорение компиляции, достигаемое за счет предварительной компиляции заголовков, без необходимости создания precompiled.hpp
файл (со всеми возможными заголовками) или любые огромные изменения в коде.
РЕДАКТИРОВАТЬ: Модули в Clang реализовать кеш, поэтому, на мой взгляд, они довольно похожи на предварительно скомпилированные заголовки в смысле ускорения времени компиляции.
Меня не волнует вопрос о комитете, потому что мой вопрос касается модулей Clang (не стандартных модулей C ++), которые, как я знаю, являются экспериментальными и могут быть изменены. Я знаю свои риски.
Я хочу иметь более быструю компиляцию и вижу возможный маршрут, который, по-моему, лучше других методов.
Задача ещё не решена.
Других решений пока нет …