(file) Return to program-unix.mak CVS log (file) (dir) Up to [Pegasus] / pegasus / mak

Diff for /pegasus/mak/program-unix.mak between version 1.25.2.1 and 1.48

version 1.25.2.1, 2005/01/21 12:08:32 version 1.48, 2008/11/06 09:22:33
Line 1 
Line 1 
   #//%2006////////////////////////////////////////////////////////////////////////
   #//
   #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
   #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   #// IBM Corp.; EMC Corporation, The Open Group.
   #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   #// EMC Corporation; VERITAS Software Corporation; The Open Group.
   #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   #// EMC Corporation; Symantec Corporation; The Open Group.
   #//
   #// Permission is hereby granted, free of charge, to any person obtaining a copy
   #// of this software and associated documentation files (the "Software"), to
   #// deal in the Software without restriction, including without limitation the
   #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
   #// sell copies of the Software, and to permit persons to whom the Software is
   #// furnished to do so, subject to the following conditions:
   #//
   #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
   #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
   #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
   #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
   #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
   #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
   #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
   #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   #//
   #//==============================================================================
 INCLUDES = -I$(ROOT)/src $(EXTRA_INCLUDES) INCLUDES = -I$(ROOT)/src $(EXTRA_INCLUDES)
  
   ifndef LINK_RPATH
       LINK_RPATH = -Xlinker -rpath
   endif
   
   LINK_DEST_LIB = -Xlinker $(PEGASUS_DEST_LIB_DIR)
   
   LINK_LIB_DIR = -Xlinker $(LIB_DIR)
   
   ifndef LINK_RPATH_LINK
       LINK_RPATH_LINK = -Xlinker -rpath-link
   endif
   
   
 TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i) TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
  
 ifeq ($(OS_TYPE),windows)  S_OBJECTS = $(TMP_OBJECTS:.s=.o)
 CPP_OBJECTS = $(TMP_OBJECTS:.cpp=.obj)  CPP_OBJECTS = $(S_OBJECTS:.cpp=.o)
 OBJECTS = $(CPP_OBJECTS:.c=.obj)  
 else  
 CPP_OBJECTS = $(TMP_OBJECTS:.cpp=.o)  
 OBJECTS = $(CPP_OBJECTS:.c=.o) OBJECTS = $(CPP_OBJECTS:.c=.o)
 endif  
  
 FULL_PROGRAM=$(BIN_DIR)/$(PROGRAM)$(EXE) FULL_PROGRAM=$(BIN_DIR)/$(PROGRAM)$(EXE)
  
 EXE_OUTPUT = $(EXE_OUT) $(FULL_PROGRAM) EXE_OUTPUT = $(EXE_OUT) $(FULL_PROGRAM)
  
 ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)  ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
     ifdef PEGASUS_HAS_MESSAGES      ifdef PEGASUS_USE_RELEASE_DIRS
         ifdef ICU_ROOT          EXTRA_LINK_FLAGS += $(LINK_RPATH) $(LINK_DEST_LIB) $(LINK_RPATH_LINK) $(LINK_LIB_DIR)
             ifdef ICU_INSTALL  
               FLAGS += -L${ICU_INSTALL}/lib  
               PRFLAGS += -L${ICU_INSTALL}/lib  
               SYS_LIBS += ${ICU_INSTALL}/lib/libicui18n.x ${ICU_INSTALL}/lib/libicuuc.x  
             endif  
         endif  
     endif  
 else else
 ifdef PEGASUS_HAS_MESSAGES          EXTRA_LINK_FLAGS += $(LINK_RPATH) $(LINK_LIB_DIR)
     ifdef ICU_ROOT  
         ifdef ICU_INSTALL  
           SYS_LIBS += -L${ICU_INSTALL}/lib -licui18n -licuuc  
         endif  
     endif     endif
   
       ifdef ICU_INSTALL
           EXTRA_LINK_FLAGS += $(LINK_RPATH) -Xlinker ${ICU_INSTALL}/lib
 endif endif
 endif endif
  
Line 43 
Line 74 
     SYS_LIBS += $(PURIFY_HOME)/libpurify_stubs.a     SYS_LIBS += $(PURIFY_HOME)/libpurify_stubs.a
 endif endif
  
   ifeq ($(PEGASUS_PLATFORM),PASE_ISERIES_IBMCXX)
     FLAGS += -Wl,-brtl -Wl,-bhalt:$(AIX_LD_HALT)
   endif
   
 $(FULL_PROGRAM): $(OBJ_DIR)/target $(BIN_DIR)/target $(OBJECTS) $(FULL_LIBRARIES) $(ERROR) $(FULL_PROGRAM): $(OBJ_DIR)/target $(BIN_DIR)/target $(OBJECTS) $(FULL_LIBRARIES) $(ERROR)
 ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes) ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
  
Line 54 
Line 89 
 ## ICU_INSTALL - Specifies the directory path where the ICU lib directory is located. ## ICU_INSTALL - Specifies the directory path where the ICU lib directory is located.
 ##               This will set runtime library search path for ICU libraries to ${ICU_INSTALL}/lib ##               This will set runtime library search path for ICU libraries to ${ICU_INSTALL}/lib
 ## ##
      ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)       ifeq ($(OS),zos)
         $(LINK_WRAPPER) $(CXX) $(PR_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)          $(LINK_WRAPPER) $(CXX) $(PR_FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES) > $(PROGRAM).llst
           @ $(ZIP) -a -m $(FULL_PROGRAM).llst.zip $(PROGRAM).llst
      else      else
       ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU       ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
           $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
         else
          ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)
            ifdef  PEGASUS_USE_RELEASE_DIRS
         ifdef PEGASUS_HAS_MESSAGES         ifdef PEGASUS_HAS_MESSAGES
           ifdef ICU_ROOT  
             ifdef ICU_INSTALL             ifdef ICU_INSTALL
               ifdef  PEGASUS_USE_RELEASE_DIRS                 $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/lib:/lib:$(ICU_INSTALL)/lib -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
                 $(LINK_WRAPPER) $(CXX) $(FLAGS) -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR) -Xlinker -rpath-link -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/lib -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
               else  
                 $(LINK_WRAPPER) $(CXX) $(FLAGS) -Xlinker -rpath -Xlinker $(LIB_DIR) -Xlinker -rpath -Xlinker ${ICU_INSTALL}/lib -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
               endif  
             endif  
           endif           endif
         else         else
           ifdef  PEGASUS_USE_RELEASE_DIRS               $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
             $(LINK_WRAPPER) $(CXX) $(FLAGS) -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR) -Xlinker -rpath-link -Xlinker $(LIB_DIR) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
           else  
             $(LINK_WRAPPER) $(CXX) $(FLAGS) -Xlinker -rpath -Xlinker $(LIB_DIR) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
           endif  
         endif         endif
       else       else
        ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)             $(LINK_WRAPPER) $(CXX) -Wl,-brtl -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
          ifdef  PEGASUS_USE_RELEASE_DIRS  
            $(LINK_WRAPPER) $(CXX) -Wl,-brtl -blibpath:/usr/linux/lib:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
          else  
            $(LINK_WRAPPER) $(CXX) -Wl,-brtl -Wl,-bhalt:$(AIX_LD_HALT) $(FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)  
          endif          endif
        else        else
         $(LINK_WRAPPER) $(CXX) $(FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS)          $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) -L$(LIB_DIR) $(EXE_OUTPUT) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
        endif        endif
       endif       endif
      endif      endif
   
         $(TOUCH) $(FULL_PROGRAM)  
         @ $(ECHO)  
 else else
         $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXE_OUTPUT) $(OBJECTS) $(FULL_LIBRARIES) $(SYS_LIBS)          $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXTRA_LINK_FLAGS) $(EXE_OUTPUT) $(OBJECTS) $(FULL_LIBRARIES) $(SYS_LIBS) $(EXTRA_LIBRARIES)
 endif endif
         $(TOUCH) $(FULL_PROGRAM)         $(TOUCH) $(FULL_PROGRAM)
   ifdef PEGASUS_TEST_VALGRIND_LOG_DIR
           echo "#!/bin/bash" > $(VALGRIND_SCRIPT_BIN_DIR)/$(PROGRAM)$(EXE)
           echo -e "valgrind --log-file=$(PEGASUS_TEST_VALGRIND_LOG_DIR)/$(PROGRAM) --num-callers=25 --tool=memcheck --leak-check=full --error-limit=no $(FULL_PROGRAM) \x24@" >> $(VALGRIND_SCRIPT_BIN_DIR)/$(PROGRAM)$(EXE)
           chmod 755 $(VALGRIND_SCRIPT_BIN_DIR)/$(PROGRAM)$(EXE)
   endif
         @ $(ECHO)         @ $(ECHO)
  
 include $(ROOT)/mak/objects.mak include $(ROOT)/mak/objects.mak


Legend:
Removed from v.1.25.2.1  
changed lines
  Added in v.1.48

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2