Return to objects-unix.mak CVS log | Up to [Pegasus] / pegasus / mak |
File: [Pegasus] / pegasus / mak / objects-unix.mak
(download)
Revision: 1.10, Tue Mar 30 07:50:22 2004 UTC (20 years, 3 months ago) by schuur Branch: MAIN CVS Tags: RELEASE_2_4_FC_CANDIDATE_1, MONITOR_CONSOLIDATION_2_5_BRANCH, CQL_2_5_BRANCH Changes since 1.9: +14 -0 lines BUG#: 1280 TITLE: Pegasus make process does not support plain c language files DESCRIPTION: second part of fix - first part done by 1326 Linux fixes for 1280 now complete in 2.3.2 and 2.4. Other platforms, except windows, still ave add ther changes. |
################################################################################ ## ## An ugly trick is used here to overcome a bug in g++ 2.9.5. G++ failes to ## 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 ## and then move the file to the object directory. ## ################################################################################ ifeq ($(OS),HPUX) _NO_TMP_O = yes endif ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX) _NO_TMP_O = yes endif ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_CC) _NO_TMP_O = yes endif _TMP_O = $(PEGASUS_PLATFORM).o ifeq ($(_NO_TMP_O), yes) $(OBJ_DIR)/%.o: %.cpp $(ERROR) $(CXX) -c -o $@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp @ $(TOUCH) $@ @ $(ECHO) else $(OBJ_DIR)/%.o: %.cpp $(ERROR) $(CXX) -c -o $(_TMP_O) $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp @ $(COPY) $(_TMP_O) $@ @ $(RM) $(_TMP_O) @ $(TOUCH) $@ @ $(ECHO) endif ifeq ($(_NO_TMP_O), yes) $(OBJ_DIR)/%.o: %.c $(ERROR) $(CC) -c -o $@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.c @ $(TOUCH) $@ @ $(ECHO) else $(OBJ_DIR)/%.o: %.c $(ERROR) $(CC) -c -o $(_TMP_O) $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.c @ $(COPY) $(_TMP_O) $@ @ $(RM) $(_TMP_O) @ $(TOUCH) $@ @ $(ECHO) endif
No CVS admin address has been configured |
Powered by ViewCVS 0.9.2 |