version 1.10, 2004/03/30 07:50:22
|
version 1.11, 2004/08/24 19:43:11
|
|
|
################################################################################ | ################################################################################ |
## | ## |
## An ugly trick is used here to overcome a bug in g++ 2.9.5. G++ failes to |
## An ugly trick is used here to overcome a bug in g++ v2.9.5. G++ fails to |
## cleanup object files that are placed in directories other than the | ## cleanup object files that are placed in directories other than the |
## current one (using the -o option). To overcome this bug, we use -o.tmp.o | ## current one (using the -o option). To overcome this bug, we use -o.tmp.o |
## and then move the file to the object directory. |
## and then move the file to the object directory. Note, this is only done for |
|
## v2.9.5 of g++. |
## | ## |
################################################################################ | ################################################################################ |
| |
ifeq ($(OS),HPUX) |
ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU) |
|
GCC_VERSION=$(word 3, $(shell $(CXX) --version)) |
|
ifneq ($(GCC_VERSION), 2.9.5) |
_NO_TMP_O = yes | _NO_TMP_O = yes |
endif | endif |
|
else |
ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX) |
|
_NO_TMP_O = yes |
|
endif |
|
|
|
ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_CC) |
|
_NO_TMP_O = yes | _NO_TMP_O = yes |
endif | endif |
| |
_TMP_O = $(PEGASUS_PLATFORM).o | _TMP_O = $(PEGASUS_PLATFORM).o |
| |
|
|
ifeq ($(_NO_TMP_O), yes) | ifeq ($(_NO_TMP_O), yes) |
$(OBJ_DIR)/%.o: %.cpp $(ERROR) | $(OBJ_DIR)/%.o: %.cpp $(ERROR) |
$(CXX) -c -o $@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp | $(CXX) -c -o $@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp |