Как автоматически генерировать MakeFile от зависимостей #include только в исходных файлах C ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как автоматически генерировать MakeFile от зависимостей #include только в исходных файлах C ++?

Сообщение Anonymous »

мотивация
Я хочу автоматически генерировать Makefile с помощью исполняемых целей C ++, используя только информацию #include в исходных файлах. Цель состоит в том, чтобы устранить избыточность между исходными зависимостями и ручными объявлениями Makefile < /p>
** Пример ** < /p>
📁 Простая структура проекта < /p>
project/
├── exec.cpp
├── util.hpp
├── Makemakefile
< /code>
📄 exec.cpp < /p>
#include "util.hpp"
#include

int main() {
std::cout
📄 util. < /p>
#include "util.hpp"
int add(int a, int b) {
return a + b;
}
< /code>
📄, и я хочу, чтобы этот Makefil был сгенерирован: < /p>
Note: Tabs may appear as spaces in the Makefile snippet below. Make sure to use real tab characters for command lines when copying

# Makefile generated by MakeMakefile (Copyright J. Saint-Martin)
CXX = g++
CXXFLAGS = -Wall -Wextra -std=c++17 -MMD -MP

all: \
exec

exec: exec.o \
util.o
$(CXX) $(CXXFLAGS) $^ -o $@

%.o: %.cpp
$(CXX) $(CXXFLAGS) -c $< -o $@

clean:
rm -f exec
rm -f *.o *.d

help:
@echo "Target available : all, clean, help, exec"


Подробнее здесь: https://stackoverflow.com/questions/797 ... in-c-sourc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»