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

  1 martin 1.9 #//%LICENSE////////////////////////////////////////////////////////////////
  2 martin 1.10 #//
  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 martin 1.10 #//
 10 martin 1.9  #// 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 martin 1.10 #//
 17 martin 1.9  #// The above copyright notice and this permission notice shall be included
 18             #// in all copies or substantial portions of the Software.
 19 martin 1.10 #//
 20 martin 1.9  #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 21 martin 1.10 #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 22 martin 1.9  #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 23             #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 24             #// 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 martin 1.10 #//
 28 martin 1.9  #//////////////////////////////////////////////////////////////////////////
 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 kumpf           1.11             "$(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