Как прекомпилировать каждый заголовочный файл? - PullRequest
0 голосов
/ 01 декабря 2018

Я читал ленточные модули документация.Я понял несколько вещей, я не знаю, правда ли я или нет.

  1. Если я просто передам -fmodules и -fbuiltin-module-map каждому скомпилированному исходному файлу в качестве clang аргументов,Я получу все преимущества таких модулей, как предварительно скомпилированные заголовки для стандартных включений, с 0 модификациями, поскольку включает в качестве импорта .
  2. Нет необходимости использовать предварительно скомпилированные заголовки.Если я придерживаюсь модулей.

У меня такой вопрос. Как я могу автоматически прекомпилировать каждый заголовочный файл? Должен ли я генерировать карту модуля со сценарием для заголовков, чтобы они были предварительно скомпилированы?Один гигантский modulemap или один modulemap для каждого заголовка?

Меня действительно не волнует план стандартных комитетов C ++ или логический аспект модулей.Все, что мне нужно, - это ускорение компиляции, достигаемое за счет прекомпиляции заголовков, без необходимости создания файла precompiled.hpp (со всеми возможными заголовками) или каких-либо значительных изменений в коде.

РЕДАКТИРОВАТЬ: Модули в clang реализуют кеш , так что, на мой взгляд, они довольно похожи на предварительно скомпилированные заголовки в смысле ускорения времени компиляции.

Меня не волнует вопрос о комитете, потому что мой вопрос касается модулей Clang (не стандартных модулей C ++), которые, как я знаю, являются экспериментальными и могут быть изменены.Я знаю свои риски.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...