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