1 sage 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 _TMP_O = $(PEGASUS_PLATFORM).o
11
12 # prelinker support
13
14 ifdef PEGASUS_ZOS_PROGRAM_OBJECT
15 ifdef PEGASUS_DEBUG
16 FLAGS = -g -W c,XPLINK
17 else
18 FLAGS = -O2 -W c,XPLINK
19 endif
20 endif
21
22 sage 1.1 $(OBJ_DIR)/%.o: %.cpp $(ERROR)
23 $(CXX) -c -o $(_TMP_O) $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp
24 @ $(COPY) $(_TMP_O) $@
25 @ $(RM) $(_TMP_O)
26 @ $(TOUCH) $@
27 @ $(ECHO)
|