backup_gnv_curl_src.com (4197B)
1 $! File: Backup_gnv_curl_src.com 2 $! 3 $! Procedure to create backup save sets for installing in a PCSI kit. 4 $! 5 $! To comply with most Open Source licenses, the source used for building 6 $! a kit will be packaged with the distribution kit for the binary. 7 $! 8 $! Backup save sets are the only storage format that I can expect a 9 $! VMS system to be able to extract ODS-5 filenames and directories. 10 $! 11 $! The make_pcsi_kit_name.com needs to be run before this procedure to 12 $! properly name the files that will be created. 13 $! 14 $! This file is created from a template file for the purpose of making it 15 $! easier to port Unix code, particularly open source code to VMS. 16 $! Therefore permission is freely granted for any use. 17 $! 18 $! Copyright (C) John Malmberg 19 $! 20 $! Permission to use, copy, modify, and/or distribute this software for any 21 $! purpose with or without fee is hereby granted, provided that the above 22 $! copyright notice and this permission notice appear in all copies. 23 $! 24 $! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 25 $! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 26 $! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 27 $! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 28 $! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 29 $! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT 30 $! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 31 $! 32 $! SPDX-License-Identifier: ISC 33 $! 34 $!=========================================================================== 35 $! 36 $! Save default 37 $ default_dir = f$environment("DEFAULT") 38 $! 39 $ arch_type = f$getsyi("ARCH_NAME") 40 $ arch_code = f$extract(0, 1, arch_type) 41 $! 42 $ if arch_code .nes. "V" 43 $ then 44 $ set proc/parse=extended 45 $ endif 46 $! 47 $ ss_abort = 44 48 $ status = ss_abort 49 $! 50 $ kit_name = f$trnlnm("GNV_PCSI_KITNAME") 51 $ if kit_name .eqs. "" 52 $ then 53 $ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run." 54 $ goto all_exit 55 $ endif 56 $ producer = f$trnlnm("GNV_PCSI_PRODUCER") 57 $ if producer .eqs. "" 58 $ then 59 $ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run." 60 $ goto all_exit 61 $ endif 62 $ filename_base = f$trnlnm("GNV_PCSI_FILENAME_BASE") 63 $ if filename_base .eqs. "" 64 $ then 65 $ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run." 66 $ goto all_exit 67 $ endif 68 $! 69 $ node_swvers = f$getsyi("NODE_SWVERS") 70 $ node_swvers_type = f$extract(0, 1, node_swvers) 71 $ node_swvers_vers = f$extract(1, f$length(node_swvers), node_swvers) 72 $ swvers_maj = f$element(0, ".", node_swvers_vers) 73 $ node_swvers_min_update = f$element(1, ".", node_swvers_vers) 74 $ swvers_min = f$element(0, "-", node_swvers_min_update) 75 $ swvers_update = f$element(1, "-", node_swvers_min_update) 76 $! 77 $ if swvers_update .eqs. "-" then swvers_update = "" 78 $! 79 $ vms_vers = f$fao("!2ZB!2ZB!AS", 'swvers_maj', 'swvers_min', swvers_update) 80 $! 81 $! 82 $! 83 $! If available make an interchange save set 84 $!------------------------------------------- 85 $ interchange = "" 86 $ if arch_code .eqs. "V" 87 $ then 88 $ interchange = "/interchange" 89 $ endif 90 $ if (swvers_maj .ges. "8") .and. (swvers_min .ges. 4) 91 $ then 92 $ interchange = "/interchange/noconvert" 93 $ endif 94 $! 95 $! 96 $! Move to the base directories 97 $ set def [--] 98 $! 99 $! Put things back on error. 100 $ on warning then goto all_exit 101 $! 102 $ current_default = f$environment("DEFAULT") 103 $ my_dir = f$parse(current_default,,,"DIRECTORY") - "[" - "<" - ">" - "]" 104 $! 105 $ src_root = "src_root:" 106 $ if f$trnlnm("src_root1") .nes. "" then src_root = "src_root1:" 107 $ backup'interchange' 'src_root'[curl...]*.*;0 - 108 'filename_base'_original_src.bck/sav 109 $ status = $status 110 $! 111 $! There may be a VMS specific source kit 112 $!----------------------------------------- 113 $ vms_root = "vms_root:" 114 $ if f$trnlnm("vms_root1") .nes. "" then vms_root = "vms_root1:" 115 $ files_found = 0 116 $ define/user sys$error nl: 117 $ define/user sys$output nl: 118 $ directory 'vms_root'[...]*.*;*/exc=*.dir 119 $ if '$severity' .eq. 1 then files_found = 1 120 $! 121 $ if files_found .eq. 1 122 $ then 123 $ backup'interchange' 'vms_root'[curl...]*.*;0 - 124 'filename_base'_vms_src.bck/sav 125 $ status = $status 126 $ endif 127 $! 128 $all_exit: 129 $ set def 'default_dir' 130 $ exit