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

  1 martin 1.9 #//%LICENSE////////////////////////////////////////////////////////////////
  2 martin 1.3 #// 
  3 martin 1.9 #// Licensed to The Open Group (TOG) under one or more contributor license
  4            #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
  5            #// this work for additional information regarding copyright ownership.
  6            #// Each contributor licenses this file to you under the OpenPegasus Open
  7            #// Source License; you may not use this file except in compliance with the
  8            #// License.
  9            #// 
 10            #// Permission is hereby granted, free of charge, to any person obtaining a
 11            #// copy of this software and associated documentation files (the "Software"),
 12            #// to deal in the Software without restriction, including without limitation
 13            #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
 14            #// and/or sell copies of the Software, and to permit persons to whom the
 15            #// Software is furnished to do so, subject to the following conditions:
 16            #// 
 17            #// The above copyright notice and this permission notice shall be included
 18            #// in all copies or substantial portions of the Software.
 19            #// 
 20            #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 21            #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
 22            #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 23            #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 24 martin 1.9 #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 25            #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 26            #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27            #// 
 28            #//////////////////////////////////////////////////////////////////////////
 29 gs.keenan 1.1 ifdef VMS_HAS_CC
 30 carson.hovey 1.6     CPPVMSOBJECTS = $(SOURCES:.cpp=.obj,)
 31                      TMPVMSOBJECTS += $(CPPVMSOBJECTS:.c=.obj,)
 32 gs.keenan    1.1 
 33 carson.hovey 1.6     TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
 34                      CPP_OBJECTS = $(TMP_OBJECTS:.cpp=.obj)
 35                      OBJECTS = $(CPP_OBJECTS:.c=.obj)
 36 gs.keenan    1.1 else
 37 carson.hovey 1.6     TMPVMSOBJECTS = $(SOURCES:.cpp=.obj,)
 38 gs.keenan    1.1 
 39 carson.hovey 1.6     TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
 40                      OBJECTS = $(TMP_OBJECTS:.cpp=.obj)
 41 gs.keenan    1.1 endif
 42                  
 43                  VMSOBJECTS = $(OBJ_VMSDIRA)]$(TMPVMSOBJECTS)
 44                  
 45                  FULL_LIB=$(LIB_DIR)/lib$(LIBRARY)$(LIB_SUFFIX)
 46                  FULL_VMSLIB=$(LIB_VMSDIRA)]lib$(LIBRARY)$(LIB_SUFFIX)
 47                  
 48                  FULL_PROGRAM=$(BIN_DIR)/$(PROGRAM)$(EXE)
 49                  FULL_VMSPROGRAM=$(BIN_VMSDIRA)]$(PROGRAM)$(EXE)
 50                  
 51                  EXE_OUTPUT =$(FULL_PROGRAM)
 52 carson.hovey 1.6 
 53 john.eisenbraun 1.7 ifeq ($(PEGASUS_USE_STATIC_LIBRARIES),true)
 54 john.eisenbraun 1.8     EXTRA_LIBRARIES += \
 55                             -L$(OPENSSL_LIB) -lssl$$libssl_shr32 -lssl$$libcrypto_shr32
 56 john.eisenbraun 1.7     LIBRARIES += vms/include=vms_crtl_init
 57                     endif
 58                     
 59                     ifeq (,$(findstring libpegrepository, $(LIBRARIES)))
 60                         EXTRA_LIBRARIES += -Llibz -lz
 61                     endif
 62                     
 63 carson.hovey    1.6 ifdef VMSSHARE
 64                         EXE_VMSOUTPUT =/sysexe/share=$(FULL_VMSPROGRAM)
 65                     else
 66                         EXE_VMSOUTPUT =/exe=$(FULL_VMSPROGRAM)
 67                     endif
 68 gs.keenan       1.1 
 69                     #OPT = $(VMSROOT)[src$(VMSDIRA)]$(PROGRAM)/opt
 70                     OPT = $(OPT_VMSDIRA)]$(PROGRAM)/opt
 71                     VMSPROGRAM = YES
 72                     
 73 john.eisenbraun 1.7 # GSMATCH and IDENTIFICATION
 74                     
 75                     LINKER_OPTIONS += \
 76                         GSMATCH=$(PEGASUS_VMS_LINKER_GSMATCH) \
 77                         IDENTIFICATION=$(PEGASUS_VMS_LINKER_IDENT)
 78 gs.keenan       1.2 
 79 carson.hovey    1.6 $(FULL_PROGRAM): $(OBJ_DIR)/target $(BIN_DIR)/target $(OPT_DIR)/target \
 80                         $(OBJECTS) $(FULL_LIBRARIES) $(ERROR)
 81 gs.keenan       1.1 
 82                     ifdef OBJECTS_IN_OPTIONFILE
 83 john.eisenbraun 1.7 	@ take $(PLATFORM_VMSDIRA)]vms_create_optfile.com \
 84                                 "$(PROGRAM)" "$(strip $(LIBRARIES))" "$(strip $(EXTRA_LIBRARIES))" \
 85                                 "$(strip $(VMS_VECTOR))" "$(strip $(LINKER_OPTIONS))" \
 86                                 "$(SOURCES)" "$(OBJ_VMSDIRA)]" 
 87 carson.hovey    1.6 	cxxlink$(LFLAGS)$(EXE_VMSOUTPUT)/reposit=$(CXXREPOSITORY_VMSROOT) \
 88 john.eisenbraun 1.7             $(foreach lib,$(SYS_LIBS),$(lib),) $(OPT) $(DLLOPT)
 89 gs.keenan       1.1 else
 90 john.eisenbraun 1.7 	@ take $(PLATFORM_VMSDIRA)]vms_create_optfile.com \
 91                                 "$(PROGRAM)" "$(strip $(LIBRARIES))" "$(strip $(EXTRA_LIBRARIES))" \
 92                                 "$(strip $(VMS_VECTOR))" "$(strip $(LINKER_OPTIONS))"
 93 carson.hovey    1.6 	cxxlink$(LFLAGS)$(EXE_VMSOUTPUT)/reposit=$(CXXREPOSITORY_VMSROOT) \
 94 john.eisenbraun 1.7             $(VMSOBJECTS) $(foreach lib,$(SYS_LIBS),$(lib),) $(OPT) $(DLLOPT)
 95 gs.keenan       1.1 endif
 96                     	@ $(TOUCH) $(FULL_VMSPROGRAM)
 97                     ifdef SHARE_COPY
 98 carson.hovey    1.6     ifdef PEGASUS_RELEASE_BUILD
 99 gs.keenan       1.1 #	$(COPY) $(FULL_VMSPROGRAM) sys$$share:$(PROGRAM)$(EXE)
100                     	$(COPY) "$(FULL_VMSPROGRAM)" "$(PEGASUS_SYSSHARE)$(PROGRAM)$(EXE)"
101 carson.hovey    1.6     endif
102                     endif
103                     ifdef VMSSHARE
104                     	library/create/share $(FULL_VMSLIB) $(FULL_VMSPROGRAM)
105                     	define/job/log $(PROGRAM) $(FULL_VMSPROGRAM)
106 gs.keenan       1.1 endif
107                     	@ $(ECHO)
108                     
109                     include $(ROOT)/mak/objects.mak
110                     
111                     FILES_TO_CLEAN = $(VMSOBJECTS) $(FULL_VMSPROGRAM);
112                     
113                     include $(ROOT)/mak/clean.mak
114                     
115                     -include $(ROOT)/mak/depend.mak
116                     
117                     include $(ROOT)/mak/build.mak
118                     
119                     include $(ROOT)/mak/sub.mak
120                     
121                     -include $(OBJ_DIR)/depend.mak
122                     
123                     include $(ROOT)/mak/misc.mak
124                     	

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2