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

  1 a.dunfey 1.64.2.1 #//%2006////////////////////////////////////////////////////////////////////////
  2 martin   1.62     #//
  3                   #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4                   #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5                   #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6                   #// IBM Corp.; EMC Corporation, The Open Group.
  7                   #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8                   #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9                   #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10                   #// EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 a.dunfey 1.64.2.1 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12                   #// EMC Corporation; Symantec Corporation; The Open Group.
 13 martin   1.62     #//
 14                   #// Permission is hereby granted, free of charge, to any person obtaining a copy
 15                   #// of this software and associated documentation files (the "Software"), to
 16                   #// deal in the Software without restriction, including without limitation the
 17                   #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18                   #// sell copies of the Software, and to permit persons to whom the Software is
 19                   #// furnished to do so, subject to the following conditions:
 20                   #// 
 21                   #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22                   #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23                   #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24                   #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25                   #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26                   #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27                   #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28                   #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29                   #//
 30                   #//==============================================================================
 31 mike     1.4      ifeq ($(COMPILER),xlc)
 32 sage     1.29       LINK_COMMAND = xlC_r
 33 kv.le    1.46       ifdef PEGASUS_USE_RELEASE_DIRS
 34 kv.le    1.61         ifdef PEGASUS_HAS_MESSAGES
 35                         ifdef ICU_ROOT
 36                           ifdef ICU_INSTALL
 37                             LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/lib:/usr/lib:/lib:$(ICU_INSTALL)/lib -Wl,-bhalt:$(AIX_LD_HALT)
 38                           endif
 39                         endif
 40                       else
 41                         LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -blibpath:/usr/linux/lib:/usr/lib:/lib -Wl,-bhalt:$(AIX_LD_HALT)
 42                       endif
 43 kv.le    1.46       else
 44                       LINK_ARGUMENTS = -qmkshrobj=$(AIX_LIB_PRIORITY) -Wl,-bhalt:$(AIX_LD_HALT)
 45                     endif
 46 mike     1.4        LINK_OUT = -o
 47 sage     1.29       ifeq ($(PEGASUS_SUPPORTS_DYNLIB), yes)
 48                       LINK_COMMAND += -G
 49                     endif
 50 mike     1.4      endif
 51                   
 52 mike     1.5      ifeq ($(COMPILER),acc)
 53 kumpf    1.55       LINK_COMMAND = $(CXX) -b -Wl,+hlib$(LIBRARY)$(LIB_SUFFIX)
 54 kumpf    1.31       ifeq ($(PEGASUS_PLATFORM), HPUX_IA64_ACC)
 55 kumpf    1.22         LINK_COMMAND += +DD64 -mt
 56 kumpf    1.55       else
 57                       LINK_COMMAND += -Wl,-Bsymbolic
 58 kumpf    1.22       endif
 59 kumpf    1.11       ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
 60 kumpf    1.43         ifdef PEGASUS_USE_RELEASE_DIRS
 61 denise.eckstein 1.58           LINK_COMMAND += -Wl,+b$(PEGASUS_DEST_LIB_DIR):/usr/lib
 62 kumpf           1.44           ifeq ($(PEGASUS_PLATFORM), HPUX_PARISC_ACC)
 63 w.otsuka        1.49             LINK_COMMAND += -Wl,+cdp,$(PEGASUS_PLATFORM_SDKROOT)/usr/lib:/usr/lib -Wl,+cdp,$(PEGASUS_HOME)/lib:$(PEGASUS_DEST_LIB_DIR)
 64 kumpf           1.44           endif
 65 kumpf           1.43         else
 66 denise.eckstein 1.58             LINK_COMMAND += -Wl,+b$(LIB_DIR):/usr/lib
 67 r.kieninger     1.52         endif
 68 kumpf           1.11       endif
 69 denise.eckstein 1.59       LINK_COMMAND += -Wl,+s
 70 aruran.ms       1.63       ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS 
 71 kumpf           1.11         LINK_COMMAND += -g
 72                            endif
 73 mike            1.15       ifdef PEGASUS_CCOVER
 74 denise.eckstein 1.56         EXTRA_LIBRARIES += $(CCOVER_LIB)/libcov.a
 75 mike            1.15       endif
 76 mike            1.5        LINK_ARGUMENTS =
 77                            LINK_OUT = -o
 78                          endif
 79                          
 80 mike            1.4      ifeq ($(COMPILER),gnu)
 81 dudhe.girish    1.45       ifneq ($(PEGASUS_PLATFORM),DARWIN_PPC_GNU)
 82 denise.eckstein 1.50        ifdef PEGASUS_USE_RELEASE_DIRS
 83 a.dunfey        1.64.2.1       LINK_COMMAND = $(CXX) -shared $(LINK_MACHINE_OPTIONS)
 84 w.otsuka        1.57           LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX)  -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR)
 85 denise.eckstein 1.50        else
 86 a.dunfey        1.64.2.1       LINK_COMMAND = $(CXX) -shared $(LINK_MACHINE_OPTIONS)
 87 denise.eckstein 1.50           LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX)  -Xlinker -rpath -Xlinker $(LIB_DIR) $(EXTRA_LINK_ARGUMENTS)
 88                             endif
 89 dudhe.girish    1.45       else
 90 kumpf           1.60         LINK_COMMAND = $(CXX) -dynamiclib
 91 kumpf           1.47         LINK_ARGUMENTS = --helplib$(LIBRARY)$(LIB_SUFFIX) -ldl
 92 dudhe.girish    1.45       endif
 93 konrad.r        1.53       ifeq ($(PEGASUS_PLATFORM), SOLARIS_SPARC_GNU)
 94                          	LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) -Xlinker -L$(LIB_DIR) $(EXTRA_LINK_ARGUMENTS)
 95                            endif
 96 mike            1.4        LINK_OUT = -o
 97                          endif
 98 mike            1.5      
 99 mike            1.12     ifeq ($(COMPILER),deccxx)
100                            LINK_COMMAND = cxx -shared
101                            LINK_ARGUMENTS =
102                            LINK_OUT = -o
103                          endif
104                          
105 mike            1.15     ifeq ($(COMPILER),ibm)
106 r.kieninger     1.52       LINK_COMMAND = $(CXX) $(FLAGS)
107 marek           1.64       LINK_ARGUMENTS = -W "l,XPLINK,dll,EDIT=NO"
108 mike            1.15       LINK_OUT = -o
109                          endif
110                          
111 keith.petley    1.40     ifeq ($(COMPILER),CC)
112                            LINK_COMMAND = CC
113                            LINK_ARGUMENTS = -G -KPIC -mt -h lib$(LIBRARY).so
114                            LINK_OUT = -o
115 a.dunfey        1.64.2.1   EXTRA_LIBRARIES += $(LIBRARY_SYS_LIBS)
116 keith.petley    1.40     endif
117                          
118 w.otsuka        1.57     ifdef EXTRA_LINK_FLAGS
119                            LINK_COMMAND += $(EXTRA_LINK_FLAGS)
120                          endif
121                          
122 mike            1.5      FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX)
123 mike            1.4      
124 kumpf           1.11     ## Rule for all UNIX library builds
125 mike            1.16     $(FULL_LIB): $(LIB_DIR)/target $(OBJ_DIR)/target $(OBJECTS) $(FULL_LIBRARIES) \
126 mike            1.13         $(ERROR)
127 kumpf           1.11       ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
128                              ## To generate shared libraries which will cause dynamic
129                              ## search of other shared libraries which they reference,
130                              ## must specify the referenced shared libraries as "-l<name>"
131                              ## DYNAMIC_LIBRARIES must be defined appropriately in the
132                              ## libraries.mak file that includes this file
133                              ##
134 kv.le           1.41     
135 kv.le           1.42     
136 kv.le           1.41         ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)
137                          	rm -f $(FULL_LIB)
138                              endif
139                          
140 kumpf           1.28     	$(LINK_COMMAND) $(LINK_ARGUMENTS) -L$(LIB_DIR) $(LINK_OUT) $(FULL_LIB) $(OBJECTS) $(DYNAMIC_LIBRARIES) $(EXTRA_LIBRARIES)
141 mike            1.15     
142                              ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)
143                                ## z/OS needs side definition files to link executables to
144                                ## dynamic libraries, so we have to copy them into the lib_dir
145 sage            1.21     	touch $(ROOT)/src/$(DIR)/lib$(LIBRARY).x
146                          	cp $(ROOT)/src/$(DIR)/lib$(LIBRARY).x $(LIB_DIR)
147 mike            1.15         endif
148 kumpf           1.36       else
149                          	$(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT) $(FULL_LIB) $(OBJECTS) $(FULL_LIBRARIES) $(EXTRA_LIBRARIES)
150                            endif
151                              ifeq ($(PEGASUS_PLATFORM),HPUX_PARISC_ACC)
152 kumpf           1.34     	$(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=sl
153                              endif
154 kumpf           1.36         ifeq ($(PEGASUS_PLATFORM),HPUX_IA64_ACC)
155                          	$(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=so
156                              endif
157 david.eger      1.39         ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
158 david.eger      1.38     	$(MAKE) --directory=$(LIB_DIR) -f $(PEGASUS_ROOT)/mak/library-unix.mak ln LIBRARY=lib$(LIBRARY) SUFFIX=$(LIB_SUFFIX) PLATFORM_SUFFIX=so
159                              endif
160 mike            1.13     	$(TOUCH) $(FULL_LIB)
161 mike            1.7      	@ $(ECHO)
162 mike            1.1      
163 mike            1.3      clean-lib: $(ERROR)
164                          	rm -f $(FULL_LIB)
165 kumpf           1.26     
166                          ln:
167 kumpf           1.34     	ln -f -s $(LIBRARY)$(SUFFIX) $(LIBRARY).$(PLATFORM_SUFFIX)
168 mike            1.3      
169 mike            1.1      FILES_TO_CLEAN = $(OBJECTS) $(FULL_LIB)

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2