эквивалентный из “касания” на сканированиях?

В моей компании мы используем Pegasus. Это является большим.

7
задан Jason S 11 November 2009 в 16:00
поделиться

4 ответа

Вы видели опцию --interactive в Scons, там вы можете очищать и создавать определенные цели.

справочная страница с описанием этого.

4
ответ дан 7 December 2019 в 12:22
поделиться

Я не думаю, что есть способ сделать это напрямую. Если у рассматриваемого исходного файла есть один очевидный вывод, например test.o , созданный из test.c , то удаление test.o приведет к перекомпиляции исходный файл.

Если вместо этого вы хотите коснуться test. h , который включен из нескольких различных исходных файлов, возможно, вам лучше очистить весь проект, чтобы убедиться, что все будет восстановлено.

Сказав это, вы можете прочитать о Decider () функция , которая позволяет вам выбрать, как будут обрабатываться зависимости файлов. Вы даже можете выбрать пользовательскую функцию принятия решения для определенных файлов в вашем проекте, поэтому, если у вас есть какой-то глобальный файл заголовка, который вы хотели бы коснуться и перестроить, вы можете это сделать.

Обновление: чтобы ответить на ваш последний вопрос, просто удалите файл G. Scons воссоздает его из F, запустив X при следующей сборке.

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

Обновление: чтобы ответить на ваш последний вопрос, просто удалите файл G. Scons воссоздает его из F, запустив X при следующей сборке.

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

Обновление: чтобы ответить на ваш последний вопрос, просто удалите файл G. Scons воссоздает его из F, запустив X при следующей сборке.

1
ответ дан 7 December 2019 в 12:22
поделиться

Я создаю фиктивный целевой файл с полной датой вплоть до часов, минут и секунд. Затем у меня есть другие шаги, которые зависят от этого фиктивного целевого файла. Это изменит значение md5 каждый раз, когда этап сборки перекомпилируется, и вызовет перекомпиляцию последующих шагов. В качестве альтернативы вы можете удалить фиктивную цель, и это тоже приведет к каскадной повторной компиляции.

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

Я уверен, что функция Decider (), как упомянул Грег, больше похожа на scons, но мне лично нравится иметь файлы отметок времени.

0
ответ дан 7 December 2019 в 12:22
поделиться

Извлеките из файла SConstruct узел, который представляет ваш файл. После этого вы сможете использовать Node.always_build (true) , чтобы убедиться, что он построен, я думаю, это заставит его зависимые элементы также быть перестроены.

0
ответ дан 7 December 2019 в 12:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: