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

 1 mike  1.1 
 2 mike  1.4 ifeq ($(COMPILER),xlc)
 3 mike  1.6   LINK_COMMAND = makeC++SharedLib
 4 mike  1.4   LINK_ARGUMENTS = -p 0
 5             LINK_OUT = -o
 6           endif
 7           
 8 mike  1.5 ifeq ($(COMPILER),acc)
 9             LINK_COMMAND = aCC -b
10 kumpf 1.11   ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
11                LINK_COMMAND += -Wl,+b/usr/lib -Wl,+s
12              endif
13              ifdef PEGASUS_DEBUG
14                LINK_COMMAND += -g
15              endif
16 mike  1.15   ifdef PEGASUS_CCOVER
17 mike  1.16     FULL_LIBRARIES += $(CCOVER_LIB)/libcov-PIC.a
18 mike  1.15   endif
19 mike  1.5    LINK_ARGUMENTS =
20              LINK_OUT = -o
21            endif
22            
23 mike  1.4  ifeq ($(COMPILER),gnu)
24 kumpf 1.11   LINK_COMMAND = g++ -shared
25              LINK_ARGUMENTS =
26 mike  1.4    LINK_OUT = -o
27            endif
28 mike  1.5  
29 mike  1.12 ifeq ($(COMPILER),deccxx)
30              LINK_COMMAND = cxx -shared
31              LINK_ARGUMENTS =
32              LINK_OUT = -o
33            endif
34            
35 mike  1.15 ifeq ($(COMPILER),ibm)
36              LINK_COMMAND = c++ -W l,dll -W c,dll,expo
37              LINK_ARGUMENTS =
38              LINK_OUT = -o
39            endif
40            
41 mike  1.5  FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX)
42 mike  1.4  
43 kumpf 1.11 ## Rule for all UNIX library builds
44 mike  1.16 $(FULL_LIB): $(LIB_DIR)/target $(OBJ_DIR)/target $(OBJECTS) $(FULL_LIBRARIES) \
45 mike  1.13     $(ERROR)
46 mike  1.7  ifneq ($(COMPILER),xlc)
47 kumpf 1.11   ## Actions for all UNIX compilers except xlc
48              ifeq ($(PEGASUS_SUPPORTS_DYNLIB),yes)
49                ## To generate shared libraries which will cause dynamic
50                ## search of other shared libraries which they reference,
51                ## must specify the referenced shared libraries as "-l<name>"
52                ## DYNAMIC_LIBRARIES must be defined appropriately in the
53                ## libraries.mak file that includes this file
54                ##
55            	$(LINK_COMMAND) $(LINK_ARGUMENTS) -L$(LIB_DIR) $(LINK_OUT)$(FULL_LIB) $(OBJECTS) $(DYNAMIC_LIBRARIES)
56 mike  1.15 
57                ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)
58                  ## z/OS needs side definition files to link executables to
59                  ## dynamic libraries, so we have to copy them into the lib_dir
60            	$(COPY) $(ROOT)/src/$(DIR)/*.x $(LIB_DIR)
61                endif
62            
63 kumpf 1.11   else
64 mike  1.16 	$(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT) $(FULL_LIB) $(OBJECTS) $(FULL_LIBRARIES)
65 kumpf 1.11   endif
66 mike  1.7  else
67 mike  1.16 	ar crv $(PEGASUS_PLATFORM).lib $(OBJECTS) $(FULL_LIBRARIES)
68 mike  1.7  	$(LINK_COMMAND) $(LINK_ARGUMENTS) $(LINK_OUT)$(FULL_LIB) $(PEGASUS_PLATFORM).lib
69            	rm -f $(PEGASUS_PLATFORM).lib
70 mike  1.14 endif
71 mike  1.13 	$(TOUCH) $(FULL_LIB)
72 mike  1.7  	@ $(ECHO)
73 mike  1.1  
74 mike  1.3  clean-lib: $(ERROR)
75            	rm -f $(FULL_LIB)
76            
77 mike  1.1  FILES_TO_CLEAN = $(OBJECTS) $(FULL_LIB)

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2