quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

pcsi_product_gnv_curl.com (5634B)


      1 $! File: PCSI_PRODUCT_GNV_CURL.COM
      2 $!
      3 $! This command file packages up the product CURL into a sequential
      4 $! format kit
      5 $!
      6 $! Copyright (C) John Malmberg
      7 $!
      8 $! Permission to use, copy, modify, and/or distribute this software for any
      9 $! purpose with or without fee is hereby granted, provided that the above
     10 $! copyright notice and this permission notice appear in all copies.
     11 $!
     12 $! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
     13 $! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     14 $! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
     15 $! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     16 $! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
     17 $! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
     18 $! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     19 $!
     20 $! SPDX-License-Identifier: ISC
     21 $!
     22 $!=========================================================================
     23 $!
     24 $! Save default
     25 $ default_dir = f$environment("DEFAULT")
     26 $!
     27 $! Put things back on error.
     28 $ on warning then goto all_exit
     29 $!
     30 $!
     31 $ can_build = 1
     32 $ producer = f$trnlnm("GNV_PCSI_PRODUCER")
     33 $ if producer .eqs. ""
     34 $ then
     35 $   write sys$output "GNV_PCSI_PRODUCER logical name has not been set."
     36 $   can_build = 0
     37 $ endif
     38 $ producer_full_name = f$trnlnm("GNV_PCSI_PRODUCER_FULL_NAME")
     39 $ if producer_full_name .eqs. ""
     40 $ then
     41 $   write sys$output -
     42         "GNV_PCSI_PRODUCER_FULL_NAME logical name has not been set."
     43 $   can_build = 0
     44 $ endif
     45 $ stage_root_name = f$trnlnm("STAGE_ROOT")
     46 $ if stage_root_name .eqs. ""
     47 $ then
     48 $   write sys$output "STAGE_ROOT logical name has not been set."
     49 $   can_build = 0
     50 $ endif
     51 $!
     52 $ if (can_build .eq. 0)
     53 $ then
     54 $    write sys$output "Not able to build a kit."
     55 $    goto all_exit
     56 $ endif
     57 $!
     58 $! Make sure that the kit name is up to date for this build
     59 $!----------------------------------------------------------
     60 $ @MAKE_PCSI_CURL_KIT_NAME.COM
     61 $!
     62 $!
     63 $! Make sure that the image is built
     64 $!----------------------------------
     65 $ arch_name = f$edit(f$getsyi("arch_name"),"UPCASE")
     66 $ if f$search("[--.src]curl.exe") .eqs. ""
     67 $ then
     68 $   build_it = 1
     69 $   libfile = "[.packages.vms.''arch_name']curllib.olb"
     70 $   if f$search(libfile) .nes. ""
     71 $   then
     72 $       build_it = 0
     73 $   else
     74 $       ! GNV based build
     75 $       libfile = "[.lib.^.libs]libcurl.a"
     76 $       if f$search(libfile) .nes. ""
     77 $       then
     78 $           build_it = 0;
     79 $       endif
     80 $   endif
     81 $   if build_it .eq. 1
     82 $   then
     83 $       @build_vms list
     84 $   endif
     85 $   @gnv_link_curl.com
     86 $ endif
     87 $!
     88 $! Make sure that the release note file name is up to date
     89 $!---------------------------------------------------------
     90 $ @BUILD_GNV_CURL_RELEASE_NOTES.COM
     91 $!
     92 $!
     93 $! Make sure that the source has been backed up.
     94 $!----------------------------------------------
     95 $ arch_type = f$getsyi("ARCH_NAME")
     96 $ arch_code = f$extract(0, 1, arch_type)
     97 $ @backup_gnv_curl_src.com
     98 $!
     99 $! Regenerate the PCSI description file.
    100 $!--------------------------------------
    101 $ @BUILD_GNV_CURL_PCSI_DESC.COM
    102 $!
    103 $! Regenerate the PCSI Text file.
    104 $!---------------------------------
    105 $ @BUILD_GNV_CURL_PCSI_TEXT.COM
    106 $!
    107 $!
    108 $! Parse the kit name into components.
    109 $!---------------------------------------
    110 $ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
    111 $ if kit_name .eqs. ""
    112 $ then
    113 $   write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
    114 $   goto all_exit
    115 $ endif
    116 $ producer = f$element(0, "-", kit_name)
    117 $ base = f$element(1, "-", kit_name)
    118 $ product_name = f$element(2, "-", kit_name)
    119 $ mmversion = f$element(3, "-", kit_name)
    120 $ majorver = f$extract(0, 3, mmversion)
    121 $ minorver = f$extract(3, 2, mmversion)
    122 $ updatepatch = f$element(4, "-", kit_name)
    123 $ if updatepatch .eqs. "" then updatepatch = ""
    124 $!
    125 $ version_fao = "!AS.!AS"
    126 $ mmversion = f$fao(version_fao, "''majorver'", "''minorver'")
    127 $ if updatepatch .nes. ""
    128 $ then
    129 $   version = "''mmversion'" + "-" + updatepatch
    130 $ else
    131 $   version = "''mmversion'"
    132 $ endif
    133 $!
    134 $ @stage_curl_install remove
    135 $ @stage_curl_install
    136 $!
    137 $! Move to the base directories
    138 $ set def [--]
    139 $ current_default = f$environment("DEFAULT")
    140 $ my_dir = f$parse(current_default,,,"DIRECTORY") - "[" - "<" - ">" - "]"
    141 $!
    142 $!
    143 $!
    144 $ source = "''default_dir'"
    145 $ src1 = "new_gnu:[usr.bin],"
    146 $ src2 = "new_gnu:[usr.include.curl],"
    147 $ src3 = "new_gnu:[usr.lib],"
    148 $ src4 = "new_gnu:[usr.lib.pkgconfig],"
    149 $ src5 = "new_gnu:[usr.share.man.man1],"
    150 $ src6 = "new_gnu:[usr.share.man.man3],"
    151 $ src7 = "new_gnu:[vms_src],"
    152 $ src8 = "new_gnu:[common_src],"
    153 $ src9 = "prj_root:[''my_dir'],prj_root:[''my_dir'.src]"
    154 $ gnu_src = src1 + src2 + src3 + src4 + src5 + src6 + src7 + src8 + src9
    155 $!
    156 $!
    157 $ base = ""
    158 $ if arch_name .eqs. "ALPHA" then base = "AXPVMS"
    159 $ if arch_name .eqs. "IA64" then base = "I64VMS"
    160 $ if arch_name .eqs. "VAX" then base = "VAXVMS"
    161 $!
    162 $ if base .eqs. "" then exit 44
    163 $!
    164 $ pcsi_option = "/option=noconfirm"
    165 $ if arch_code .eqs. "V"
    166 $ then
    167 $   pcsi_option = ""
    168 $ endif
    169 $!
    170 $!
    171 $product package 'product_name' -
    172  /base='base' -
    173  /producer='producer' -
    174  /source='source' -
    175  /destination=STAGE_ROOT:[KIT] -
    176  /material=('gnu_src','source') -
    177  /format=sequential 'pcsi_option'
    178 $!
    179 $!
    180 $! VAX can not do a compressed kit.
    181 $! ZIP -9 "-V" does a better job, so no reason to normally build a compressed
    182 $! kit.
    183 $!----------------------------------
    184 $if p1 .eqs. "COMPRESSED"
    185 $then
    186 $   if arch_code .nes. "V"
    187 $   then
    188 $       product copy /options=(novalidate, noconfirm) /format=compressed -
    189         'product_name' -
    190         /source=stage_root:[kit]/dest=stage_root:[kit] -
    191         /version='version'/base='base'
    192 $   endif
    193 $endif
    194 $!
    195 $all_exit:
    196 $ set def 'default_dir'
    197 $ exit