1 mike 1.1 ################################################################################
2 ##
3 ## An ugly trick is used here to overcome a bug in g++ 2.9.5. G++ failes to
4 ## cleanup object files that are placed in directories other than the
5 ## current one (using the -o option). To overcome this bug, we use -o.tmp.o
6 ## and then move the file to the object directory.
7 ##
8 ################################################################################
9
|
10 kumpf 1.8 ifeq ($(OS),HPUX)
|
11 dan 1.7 _NO_TMP_O = yes
12 endif
13
14 ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)
15 _NO_TMP_O = yes
16 endif
17
|
18 mike 1.2 _TMP_O = $(PEGASUS_PLATFORM).o
|
19 mike 1.1
|
20 dan 1.7 ifeq ($(_NO_TMP_O), yes)
|
21 kumpf 1.6 $(OBJ_DIR)/%.o: %.cpp $(ERROR)
22 $(CXX) -c -o $@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp
23 @ $(TOUCH) $@
24 @ $(ECHO)
25 else
|
26 mike 1.1 $(OBJ_DIR)/%.o: %.cpp $(ERROR)
|
27 mike 1.3 $(CXX) -c -o $(_TMP_O) $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp
|
28 mike 1.5 @ $(COPY) $(_TMP_O) $@
29 @ $(RM) $(_TMP_O)
30 @ $(TOUCH) $@
|
31 mike 1.1 @ $(ECHO)
|
32 kumpf 1.6 endif
|