Как написать make-файл, который собирает только библиотеки? - PullRequest
1 голос
/ 21 января 2011

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

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

Предложите несколько мнений.

Edit: Описание: мое приложение называется xyz, и все исходные файлы находятся в каталоге ./src/xyz. Это зависит от таких библиотек, как ssh и net-snmp. И net-snmp, и ssh помещаются в каталог ./lib.

Теперь, когда приложение собирается, все библиотеки перестраиваются. Здесь я не изменяю библиотечные пакеты, необходимые для моего приложения.

На сборку уходит почти час. при каждой сборке библиотеки перестраиваются и это не требуется.

Теперь, мой вопрос? Как мне написать make-файл, который будет собирать библиотеки и приложение отдельно.

1 Ответ

0 голосов
/ 21 января 2011

Вы не предоставили нам достаточно информации, чтобы дать подробный ответ, но вот схема:

LIBRARIES = ./lib/ssh ./lib/net-snmp

SOURCES = foo bar baz

xyz: $(LIBRARIES) $(SOURCES)
    command-that-rebuilds-app-from-sources-and-libraries

./lib/ssh: things-that-ssh-needs
    command-that-rebuilds-ssh

./lib/net-snmp: things-that-net-snmp-needs
    command-that-rebuilds-net-snmp

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