1 # Automatic dependancy tracking
2 # Define $DEP_OBJECTS before this file is included
3 # $DEP_OBJECTS contain a list of object files that are checked for dependancies
5 ifneq ($(DEPENDENCIES
),no
)
6 ifneq ($(MAKECMDGOALS
),implib
)
8 DEP_FILTERED
:= $(filter-out $(DEP_EXCLUDE_FILTER
), $(DEP_OBJECTS
:.o
=.d
))
12 ifeq ($(ROS_USE_PCH
),yes
)
13 ifneq ($(TARGET_PCH
),)
15 PCH
= $(TARGET_PCH
).gch
17 DEP_FILTERED
:= $(DEP_FILTERED
) $(TARGET_PCH
:.h
=.d
)
22 DEP_FILES
:= $(join $(dir $(DEP_FILTERED
)), $(addprefix .
, $(notdir $(DEP_FILTERED
))))
24 ifneq ($(MAKECMDGOALS
),clean)
29 DEPENDS_PATH
:= $(subst /,\
,$(PATH_TO_TOP
))\tools
31 DEPENDS_PATH
:= $(PATH_TO_TOP
)/tools
34 .
%.d
: %.c
$(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
35 $(CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
37 .
%.d
: %.
cc $(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
38 $(CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
40 .
%.d
: %.
cpp $(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
41 $(CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
43 .
%.d
: %.S
$(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
44 $(CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
46 .
%.d
: %.s
$(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
47 $(CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
49 .
%.d
: %.asm
$(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
50 $(NASM_CMD
) $(NFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@
52 .
%.d
: %.h
$(PATH_TO_TOP
)/tools
/depends
$(EXE_POSTFIX
) $(GENERATED_HEADER_FILES
)
53 $(PCH_CC
) $(CFLAGS
) -M
$< |
$(DEPENDS_PATH
)$(SEP
)depends
$(EXE_POSTFIX
) $(@D
) $@