Создание ориентированного ациклического графа из рекурсивного make-файла nmake? - PullRequest
1 голос
/ 04 марта 2010

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

Текущий процесс сборки на моей работе, как я понимаю, по сути, запускает nmake на make-файле в корневом каталоге сборки. Этот make-файл, который задает список компонентов для сборки, и для каждого компонента сценарий сборки используется для сборки подкомпонентов, под-подкомпонентов и т. Д. Некоторые компоненты встроены в библиотеки DLL / Lib, которые можно использовать для создания ссылок при сборке компоненты, это отношение будет зависимость. То есть если компонент B ссылается на файл lib компонента A, компонент A является зависимостью компонента B.

То, что я ищу, это пример кода того, как это будет сделано, поскольку я все еще учусь программированию. Любое предложение будет оценено, спасибо!

Ответы [ 2 ]

1 голос
/ 20 апреля 2010

Makefile :: GraphViz , вероятно, может помочь здесь.

1 голос
/ 04 марта 2010

Команда NMAKE /N /P выведет отношения зависимости для make-файла, но ничего не соберет.

Вывод такой:


obj\statbar.obj:
        flags:  -s
        dependents:     statbar.cpp obj\precomp.obj res\resource.h sfapp.h
                        frame.h prefs.h appopen.h
        commands:

obj\appopen.obj:
        flags:  -s
        dependents:     appopen.cpp obj\precomp.obj res\resource.h sfapp.h
                        frame.h prefs.h appopen.h
        commands: 

Вывод довольно регулярный, вы можете его проанализировать и использовать для построения вашего графика.

...