version 1.21, 2008/12/02 09:00:01
|
version 1.26, 2013/08/30 16:36:38
|
|
|
#////////////////////////////////////////////////////////////////////////// | #////////////////////////////////////////////////////////////////////////// |
DEPEND_MAK = $(OBJ_DIR)/depend.mak | DEPEND_MAK = $(OBJ_DIR)/depend.mak |
| |
ifeq ($(PEGASUS_PLATFORM),HPUX_PARISC_ACC) |
ifeq ($(ARCHITECTURE),PARISC) |
SOURCES_NO_ASM = $(patsubst %.s,,$(SOURCES)) | SOURCES_NO_ASM = $(patsubst %.s,,$(SOURCES)) |
else | else |
SOURCES_NO_ASM = $(SOURCES) | SOURCES_NO_ASM = $(SOURCES) |
endif | endif |
| |
ifeq ($(CXX), g++) |
## |
|
## test for compiler definition in CXX (g++, clang++, etc. compilers). |
|
## Test for compiler type as substring, not exact because there |
|
## are cases where other info exists in CXX (ex. CXX=ccache g++) |
|
## |
|
ifeq ($(findstring g++, $(CXX)), g++) |
PEGASUS_CXX_MAKEDEPEND_OPTION = -M | PEGASUS_CXX_MAKEDEPEND_OPTION = -M |
endif | endif |
|
|
|
ifeq ($(CXX), clang++) |
|
PEGASUS_CXX_MAKEDEPEND_OPTION = -M |
|
C_SOURCES = $(filter %.c, $(SOURCES)) |
|
endif |
|
|
ifeq ($(CXX), CC) | ifeq ($(CXX), CC) |
PEGASUS_CXX_MAKEDEPEND_OPTION = -xM1 | PEGASUS_CXX_MAKEDEPEND_OPTION = -xM1 |
endif | endif |
|
|
acc_sed_filter = -e 's=$(OBJ_DIR).*cpp:==g' | acc_sed_filter = -e 's=$(OBJ_DIR).*cpp:==g' |
endif | endif |
| |
|
## |
|
## If compiler definition found, use compiler to define depend.mak |
|
## each obj dir |
|
## |
ifdef PEGASUS_CXX_MAKEDEPEND_OPTION | ifdef PEGASUS_CXX_MAKEDEPEND_OPTION |
|
|
|
ifeq ($(COMPILER), clang) |
|
ifneq ($(strip $(C_SOURCES)),) |
|
depend: $(OBJ_DIR)/target $(ERROR) |
|
$(CC) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' > $(DEPEND_MAK) |
|
else |
|
depend: $(OBJ_DIR)/target $(ERROR) |
|
$(CXX) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' > $(DEPEND_MAK) |
|
endif |
|
else |
depend: $(OBJ_DIR)/target $(ERROR) | depend: $(OBJ_DIR)/target $(ERROR) |
$(CXX) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' $(acc_sed_filter) > $(DEPEND_MAK) | $(CXX) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' $(acc_sed_filter) > $(DEPEND_MAK) |
|
endif |
| |
|
## |
|
## Compiler type not found. If PEGASUS_HAS_MAKEDEPEND set use makedepend |
|
## to define depend.mak files. Otherwise use OpenPegasus mu to create |
|
## depend.make files |
|
## |
else | else |
ifdef PEGASUS_HAS_MAKEDEPEND | ifdef PEGASUS_HAS_MAKEDEPEND |
DEPEND_INCLUDES += -DPEGASUS_OS_TYPE_UNIX -I/usr/include $(SYS_INCLUDES) | DEPEND_INCLUDES += -DPEGASUS_OS_TYPE_UNIX -I/usr/include $(SYS_INCLUDES) |
|
|
mu depend -O$(OBJ_DIR) $(INCLUDES) $(SOURCES_NO_ASM) > $(DEPEND_MAK) | mu depend -O$(OBJ_DIR) $(INCLUDES) $(SOURCES_NO_ASM) > $(DEPEND_MAK) |
endif | endif |
endif | endif |
|
|
clean-depend: | clean-depend: |
$(RM) $(OBJ_DIR)/depend.mak | $(RM) $(OBJ_DIR)/depend.mak |