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

Diff for /pegasus/mak/library-unix.mak between version 1.7 and 1.46

version 1.7, 2001/05/29 23:55:43 version 1.46, 2004/05/19 16:35:55
Line 1 
Line 1 
   
 ifeq ($(COMPILER),xlc) ifeq ($(COMPILER),xlc)
   LINK_COMMAND = makeC++SharedLib    LINK_COMMAND = xlC_r
   LINK_ARGUMENTS = -p 0    ifdef PEGASUS_USE_RELEASE_DIRS
       LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/lib:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT)
     else
       LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -Wl,-bhalt:$(AIX_LD_HALT)
     endif
   LINK_OUT = -o   LINK_OUT = -o
     ifeq ($(PEGASUS_SUPPORTS_DYNLIB), yes)
       LINK_COMMAND += -G
     endif
 endif endif
  
 ifeq ($(COMPILER),acc) ifeq ($(COMPILER),acc)
   LINK_COMMAND = aCC -b    LINK_COMMAND = $(CXX) -b -Wl,+hlib$(LIBRARY)$(LIB_SUFFIX)
     ifeq ($(PEGASUS_PLATFORM), HPUX_IA64_ACC)
       LINK_COMMAND += +DD64 -mt
     endif
     ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
       ifdef PEGASUS_USE_RELEASE_DIRS
         LINK_COMMAND += -Wl,+s -Wl,+b/opt/wbem/lib:/usr/lib
         ifeq ($(PEGASUS_PLATFORM), HPUX_PARISC_ACC)
           LINK_COMMAND += -Wl,+cdp,$(PEGASUS_PLATFORM_SDKROOT)/usr/lib:/usr/lib -Wl,+cdp,$(PEGASUS_HOME)/lib:/opt/wbem/lib
         endif
       else
         LINK_COMMAND += -Wl,+s -Wl,+b$(LIB_DIR):/usr/lib
       endif
     endif
     ifdef PEGASUS_DEBUG
       LINK_COMMAND += -g
     endif
     ifdef PEGASUS_CCOVER
       FULL_LIBRARIES += $(CCOVER_LIB)/libcov.a
     endif
   LINK_ARGUMENTS =   LINK_ARGUMENTS =
   LINK_OUT = -o   LINK_OUT = -o
 endif endif
  
 ifeq ($(COMPILER),gnu) ifeq ($(COMPILER),gnu)
   LINK_COMMAND = g++    ifneq ($(PEGASUS_PLATFORM),DARWIN_PPC_GNU)
   LINK_ARGUMENTS = -shared    LINK_COMMAND = g++ -shared
     LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX)
     else
     LINK_COMMAND = g++ -dynamiclib
     LINK_ARGUMENTS = --helplib$(LIBRARY)$(LIB_SUFFIX) -ldl
     endif
     LINK_OUT = -o
   endif
   
   ifeq ($(COMPILER),deccxx)
     LINK_COMMAND = cxx -shared
     LINK_ARGUMENTS =
     LINK_OUT = -o
   endif
   
   ifeq ($(COMPILER),ibm)
     LINK_COMMAND = c++ $(FLAGS)
     LINK_ARGUMENTS = -W "l,XPLINK,dll"
     LINK_OUT = -o
   endif
   
   ifeq ($(COMPILER),CC)
     LINK_COMMAND = CC
     LINK_ARGUMENTS = -G -KPIC -mt -h lib$(LIBRARY).so
   LINK_OUT = -o   LINK_OUT = -o
 endif endif
  
 FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX) FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX)
  
 ifneq ($(COMPILER),xlc)  ## Rule for all UNIX library builds
 $(FULL_LIB): $(LIB_DIR)/target $(OBJ_DIR)/target $(OBJECTS) $(LIBRARIES) $(ERROR)  $(FULL_LIB): $(LIB_DIR)/target $(OBJ_DIR)/target $(OBJECTS) $(FULL_LIBRARIES) \
         $(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT)$(FULL_LIB) $(OBJECTS) $(LIBRARIES)      $(ERROR)
         @ $(ECHO)    ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
       ## To generate shared libraries which will cause dynamic
       ## search of other shared libraries which they reference,
       ## must specify the referenced shared libraries as "-l<name>"
       ## DYNAMIC_LIBRARIES must be defined appropriately in the
       ## libraries.mak file that includes this file
       ##
   
   
       ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)
           rm -f $(FULL_LIB)
       endif
   
           $(LINK_COMMAND) $(LINK_ARGUMENTS) -L$(LIB_DIR) $(LINK_OUT) $(FULL_LIB) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(EXTRA_LIBRARIES)
   
       ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)
         ## z/OS needs side definition files to link executables to
         ## dynamic libraries, so we have to copy them into the lib_dir
           touch $(ROOT)/src/$(DIR)/lib$(LIBRARY).x
           cp $(ROOT)/src/$(DIR)/lib$(LIBRARY).x $(LIB_DIR)
       endif
 else else
 $(FULL_LIB): $(LIB_DIR)/target $(OBJ_DIR)/target $(OBJECTS) $(LIBRARIES) $(ERROR)          $(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT) $(FULL_LIB) $(OBJECTS) $(FULL_LIBRARIES) $(EXTRA_LIBRARIES)
         ar crv $(OS_TYPE).lib $(OBJECTS) $(LIBRARIES)    endif
         $(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT)$(FULL_LIB) $(PEGASUS_PLATFORM).lib      ifeq ($(PEGASUS_PLATFORM),HPUX_PARISC_ACC)
         rm -f $(PEGASUS_PLATFORM).lib          $(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=sl
         @ $(ECHO)  
 endif endif
       ifeq ($(PEGASUS_PLATFORM),HPUX_IA64_ACC)
           $(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=so
       endif
       ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
           $(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=so
       endif
           $(TOUCH) $(FULL_LIB)
           @ $(ECHO)
  
 clean-lib: $(ERROR) clean-lib: $(ERROR)
         rm -f $(FULL_LIB)         rm -f $(FULL_LIB)
  
   ln:
           ln -f -s $(LIBRARY)$(SUFFIX) $(LIBRARY).$(PLATFORM_SUFFIX)
   
 FILES_TO_CLEAN = $(OBJECTS) $(FULL_LIB) FILES_TO_CLEAN = $(OBJECTS) $(FULL_LIB)


Legend:
Removed from v.1.7  
changed lines
  Added in v.1.46

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2