1 karl 1.4 #//%2006////////////////////////////////////////////////////////////////////////
|
2 martin 1.3 #//
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 karl 1.4 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 #// EMC Corporation; Symantec Corporation; The Open Group.
|
13 martin 1.3 #//
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 carson.hovey 1.6 #//=============================================================================
|
31 gs.keenan 1.1 ifdef VMS_HAS_CC
|
32 carson.hovey 1.6 CPPVMSOBJECTS = $(SOURCES:.cpp=.obj,)
33 TMPVMSOBJECTS += $(CPPVMSOBJECTS:.c=.obj,)
|
34 gs.keenan 1.1
|
35 carson.hovey 1.6 TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
36 CPP_OBJECTS = $(TMP_OBJECTS:.cpp=.obj)
37 OBJECTS = $(CPP_OBJECTS:.c=.obj)
|
38 gs.keenan 1.1 else
|
39 carson.hovey 1.6 TMPVMSOBJECTS = $(SOURCES:.cpp=.obj,)
|
40 gs.keenan 1.1
|
41 carson.hovey 1.6 TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
42 OBJECTS = $(TMP_OBJECTS:.cpp=.obj)
|
43 gs.keenan 1.1 endif
44
45 VMSOBJECTS = $(OBJ_VMSDIRA)]$(TMPVMSOBJECTS)
46
47 FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX)
48 FULL_VMSLIB=$(LIB_VMSDIRA)]lib$(LIBRARY)$(LIB_SUFFIX)
49
50 FULL_PROGRAM=$(BIN_DIR)/$(PROGRAM)$(EXE)
51 FULL_VMSPROGRAM=$(BIN_VMSDIRA)]$(PROGRAM)$(EXE)
52
53 EXE_OUTPUT =$(FULL_PROGRAM)
|
54 carson.hovey 1.6
|
55 john.eisenbraun 1.7 ifeq ($(PEGASUS_USE_STATIC_LIBRARIES),true)
56 EXTRA_LIBRARIES += -L$(OPENSSL_LIB) -lssl$$libssl_shr -lssl$$libcrypto_shr32
57 LIBRARIES += vms/include=vms_crtl_init
58 endif
59
60 ifeq (,$(findstring libpegrepository, $(LIBRARIES)))
61 EXTRA_LIBRARIES += -Llibz -lz
62 endif
63
|
64 carson.hovey 1.6 ifdef VMSSHARE
65 EXE_VMSOUTPUT =/sysexe/share=$(FULL_VMSPROGRAM)
66 else
67 EXE_VMSOUTPUT =/exe=$(FULL_VMSPROGRAM)
68 endif
|
69 gs.keenan 1.1
70 #OPT = $(VMSROOT)[src$(VMSDIRA)]$(PROGRAM)/opt
71 OPT = $(OPT_VMSDIRA)]$(PROGRAM)/opt
72 VMSPROGRAM = YES
73
|
74 john.eisenbraun 1.7 # GSMATCH and IDENTIFICATION
75
76 LINKER_OPTIONS += \
77 GSMATCH=$(PEGASUS_VMS_LINKER_GSMATCH) \
78 IDENTIFICATION=$(PEGASUS_VMS_LINKER_IDENT)
|
79 gs.keenan 1.2
|
80 carson.hovey 1.6 $(FULL_PROGRAM): $(OBJ_DIR)/target $(BIN_DIR)/target $(OPT_DIR)/target \
81 $(OBJECTS) $(FULL_LIBRARIES) $(ERROR)
|
82 gs.keenan 1.1
83 ifdef OBJECTS_IN_OPTIONFILE
|
84 john.eisenbraun 1.7 @ take $(PLATFORM_VMSDIRA)]vms_create_optfile.com \
85 "$(PROGRAM)" "$(strip $(LIBRARIES))" "$(strip $(EXTRA_LIBRARIES))" \
86 "$(strip $(VMS_VECTOR))" "$(strip $(LINKER_OPTIONS))" \
87 "$(SOURCES)" "$(OBJ_VMSDIRA)]"
|
88 carson.hovey 1.6 cxxlink$(LFLAGS)$(EXE_VMSOUTPUT)/reposit=$(CXXREPOSITORY_VMSROOT) \
|
89 john.eisenbraun 1.7 $(foreach lib,$(SYS_LIBS),$(lib),) $(OPT) $(DLLOPT)
|
90 gs.keenan 1.1 else
|
91 john.eisenbraun 1.7 @ take $(PLATFORM_VMSDIRA)]vms_create_optfile.com \
92 "$(PROGRAM)" "$(strip $(LIBRARIES))" "$(strip $(EXTRA_LIBRARIES))" \
93 "$(strip $(VMS_VECTOR))" "$(strip $(LINKER_OPTIONS))"
|
94 carson.hovey 1.6 cxxlink$(LFLAGS)$(EXE_VMSOUTPUT)/reposit=$(CXXREPOSITORY_VMSROOT) \
|
95 john.eisenbraun 1.7 $(VMSOBJECTS) $(foreach lib,$(SYS_LIBS),$(lib),) $(OPT) $(DLLOPT)
|
96 gs.keenan 1.1 endif
97 @ $(TOUCH) $(FULL_VMSPROGRAM)
98 ifdef SHARE_COPY
|
99 carson.hovey 1.6 ifdef PEGASUS_RELEASE_BUILD
|
100 gs.keenan 1.1 # $(COPY) $(FULL_VMSPROGRAM) sys$$share:$(PROGRAM)$(EXE)
101 $(COPY) "$(FULL_VMSPROGRAM)" "$(PEGASUS_SYSSHARE)$(PROGRAM)$(EXE)"
|
102 carson.hovey 1.6 endif
103 endif
104 ifdef VMSSHARE
105 library/create/share $(FULL_VMSLIB) $(FULL_VMSPROGRAM)
106 define/job/log $(PROGRAM) $(FULL_VMSPROGRAM)
|
107 gs.keenan 1.1 endif
108 @ $(ECHO)
109
110 include $(ROOT)/mak/objects.mak
111
112 FILES_TO_CLEAN = $(VMSOBJECTS) $(FULL_VMSPROGRAM);
113
114 include $(ROOT)/mak/clean.mak
115
116 -include $(ROOT)/mak/depend.mak
117
118 include $(ROOT)/mak/build.mak
119
120 include $(ROOT)/mak/sub.mak
121
122 -include $(OBJ_DIR)/depend.mak
123
124 include $(ROOT)/mak/misc.mak
125
|