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
Kompilieren Sie sowohl C- als auch CPP -Quelle in einem einzigen Makefile -Ziel ⇐ C++
-
- Similar Topics
- Replies
- Views
- Last post