ВУЗ:
Составители:
40
• какая-либо из зависимостей является абстрактной целью;
• цель является именем файла и какая-либо из зависимостей, яв-
ляющихся именем файла, имеет более позднее время модификации, чем
цель.
В противном случае (т. е. ни одно из вышеприведенных условий не
выполняется) описанные в правиле команды не выполняются. Алгоритм
принятия решения о выполнении команд схематично можно предста-
вить так:
НужноВыполнятьКоманды (Правило)
{
если Правило.Цель.ЯвляетсяАбстрактной ()
return true
// цель является именем файла
если ФайлНеСуществует (Правило.Цель)
return true
цикл от i=1 до Правило.Число_зависимостей
{
если Правило.Зависимость[ i ].ЯвляетсяАбстрактной ()
return true
иначе
// зависимость является именем файла
{
если ВремяМодификации(Правило.Зависимость[ i ]) >
ВремяМодификации (Правило.Цель)
return true
}
}
return false
}
Абстрактные цели и имена файлов. Имена действий от имен
файлов утилита make отличает следующим образом: сначала выполня-
ется поиск файла с указанным именем, и если файл найден, то считается
что цель или зависимость являются именем файла; в противном случае
считается, что данное имя является либо именем несуществующего
файла, либо именем действия (различия между этими двумя вариантами
не делается, поскольку они обрабатываются одинаково).
Страницы
- « первая
- ‹ предыдущая
- …
- 38
- 39
- 40
- 41
- 42
- …
- следующая ›
- последняя »