Kompilieren Sie sowohl C- als auch CPP -Quelle in einem einzigen Makefile -ZielC++

Programme in C++. Entwicklerforum
Guest
 Kompilieren Sie sowohl C- als auch CPP -Quelle in einem einzigen Makefile -Ziel

Post by Guest »

Ich habe ein Makefile, in dem ich sowohl mit C -Quelle als auch mit CPP -Quelle arbeite. Unten ist ein Codeausschnitt aus dem Makefile. Gibt es eine Möglichkeit, die folgenden zwei Ziele zu kombinieren, um beide Filetypen zu kompilieren? < /P>

#definitions
OBJ_DIR := obj
DEP_DIR := dep

CXX := g++
DEBUG := -g -O0
OPT := -std=c++11 -Wextra -Wall -pthread
LFLAGS = $(DEBUG) $(OPT) $(INC)
CFLAGS = $(LFLAGS) -c

#auto-dependency generation (part 1)
DEP_FLAGS = -MT $@ -MMD -MP -MF $(DEP_DIR)/$*.Td
POSTCOMPILE = @mv -f $(DEP_DIR)/$*.Td $(DEP_DIR)/$*.d && touch $@

#compile object files from CPP source
$(OBJ_DIR)/%.o: %.cpp $(DEP_DIR)/%.d
$(CXX) $(CFLAGS) $(DEP_FLAGS) $< -o $@
$(POSTCOMPILE)

#compile object files from C source
$(OBJ_DIR)/%.o: %.c $(DEP_DIR)/%.d
$(CXX) $(CFLAGS) $(DEP_FLAGS) $< -o $@
$(POSTCOMPILE)

#auto-dependency generation (part 2)
$(DEP_DIR)/%.d: ;
.PRECIOUS: $(DEP_DIR)/%.d
include $(wildcard $(DEP_DIR)/*.d)
< /code>

Ich habe versucht, die Wildcard -Funktion mit einer Vielzahl unterschiedlicher Formatierung mit der zweiten Expansion zu verwenden, aber ohne Erfolg. < /p>

Ich benutze make 4.2. Der Code für automatische Abhängigkeiten wurde von http://make.mad-scientist.net/papers/ad ... eneration/.

Dank im Voraus übernommen

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post