LINUX.ORG.RU

История изменений

Исправление dimgel, (текущая версия) :

ответил по поводу clang

Чёт про clang ты к нему не по адресу: он над gcc работает.

с примером, чтобы самому явно не прописывать зависимости

target/build/linux/%.d: src/%.cpp
	@mkdir -p $(@D)
	@$(CCL) -E -MMD -MP -MF $@ -MT "$(@:.d=.o)" -o /dev/null $<
	@util/make-transform-d.cpp $@

И куришь получившийся .d файл. Без моих заморочек с мультиплатформенными целями даже и трансформация по большому счёту не нужна… хотя добавить сам d-файл в цели первого правила – не лишне.

Так что походу у них нет самих примера того, как ты хочешь. Лишь явно задавать зависимости модулей самому…

Ты пишешь про makefile, тут всё есть и всё работает, я ж выше отписался. А вот в qt-creator похоже ещё не завезли. В пятой версии появится экспериментальная полная замена ClangCodeModel на LanguageClient, там возможно будут подвижки.

Исправление dimgel, :

ответил по поводу clang

Чёт про clang ты к нему не по адресу: он над gcc работает.

с примером, чтобы самому явно не прописывать зависимости

target/build/linux/%.d: src/%.cpp
	@mkdir -p $(@D)
	@$(CCL) -E -MMD -MP -MF $@ -MT "$(@:.d=.o)" -o /dev/null $<
	@util/make-transform-d.cpp $@

# Чтобы make не считал эти файлы временными и не удалял их.
$(DLL_Ds) $(TESTW_Ds) $(TESTL_Ds):

-include $(DLL_Ds) $(TESTW_Ds) $(TESTL_Ds)

И куришь получившийся .d файл. Без моих заморочек с мультиплатформенными целями даже и трансформация по большому счёту не нужна… хотя добавить сам d-файл в цели первого правила – не лишне.

Так что походу у них нет самих примера того, как ты хочешь. Лишь явно задавать зависимости модулей самому…

Ты пишешь про makefile, тут всё есть и всё работает, я ж выше отписался. А вот в qt-creator похоже ещё не завезли. В пятой версии появится экспериментальная полная замена ClangCodeModel на LanguageClient, там возможно будут подвижки.

Исходная версия dimgel, :

ответил по поводу clang

Чёт про clang ты к нему не по адресу: он над gcc работает.

с примером, чтобы самому явно не прописывать зависимости

target/build/linux/%.d: src/%.cpp
	@mkdir -p $(@D)
	@$(CCL) -E -MMD -MP -MF $@ -MT "$(@:.d=.o)" -o /dev/null $<
	@util/make-transform-d.cpp $@

# Чтобы make не считал эти файлы временными и не удалял их.
$(DLL_Ds) $(TESTW_Ds) $(TESTL_Ds):

-include $(DLL_Ds) $(TESTW_Ds) $(TESTL_Ds)

И куришь получившийся .d файл. Без моих заморочек с мультиплатформенными целями даже и трансформация по большому счёту не нужна… хотя добавить сам d-файл в цели первого правила – не лишне.