1 $! File: PCSI_PRODUCT_GNV_CURL.COM
5 $! This command file packages up the product CURL into a sequential
8 $! Copyright 2009, John Malmberg
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.
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.
22 $! 16-Jun-2009 J.Malmberg
24 $!=========================================================================
27 $ default_dir = f$environment("DEFAULT")
29 $! Put things back on error.
30 $ on warning then goto all_exit
34 $ producer = f$trnlnm("GNV_PCSI_PRODUCER")
35 $ if producer .eqs. ""
37 $ write sys$output "GNV_PCSI_PRODUCER logical name has not been set."
40 $ producer_full_name = f$trnlnm("GNV_PCSI_PRODUCER_FULL_NAME")
41 $ if producer_full_name .eqs. ""
44 "GNV_PCSI_PRODUCER_FULL_NAME logical name has not been set."
47 $ stage_root_name = f$trnlnm("STAGE_ROOT")
48 $ if stage_root_name .eqs. ""
50 $ write sys$output "STAGE_ROOT logical name has not been set."
54 $ if (can_build .eq. 0)
56 $ write sys$output "Not able to build a kit."
60 $! Make sure that the kit name is up to date for this build
61 $!----------------------------------------------------------
62 $ @MAKE_PCSI_CURL_KIT_NAME.COM
64 $! Make sure that the release note file name is up to date
65 $!---------------------------------------------------------
66 $ @BUILD_GNV_CURL_RELEASE_NOTES.COM
69 $! Make sure that the source has been backed up.
70 $!----------------------------------------------
71 $ arch_type = f$getsyi("ARCH_NAME")
72 $ arch_code = f$extract(0, 1, arch_type)
73 $ @backup_gnv_curl_src.com
75 $! Regenerate the PCSI description file.
76 $!--------------------------------------
77 $ @BUILD_GNV_CURL_PCSI_DESC.COM
79 $! Regenerate the PCSI Text file.
80 $!---------------------------------
81 $ @BUILD_GNV_CURL_PCSI_TEXT.COM
84 $! Parse the kit name into components.
85 $!---------------------------------------
86 $ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
87 $ if kit_name .eqs. ""
89 $ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
92 $ producer = f$element(0, "-", kit_name)
93 $ base = f$element(1, "-", kit_name)
94 $ product_name = f$element(2, "-", kit_name)
95 $ mmversion = f$element(3, "-", kit_name)
96 $ majorver = f$extract(0, 3, mmversion)
97 $ minorver = f$extract(3, 2, mmversion)
98 $ updatepatch = f$element(4, "-", kit_name)
99 $ if updatepatch .eqs. "" then updatepatch = ""
101 $ version_fao = "!AS.!AS"
102 $ mmversion = f$fao(version_fao, "''majorver'", "''minorver'")
103 $ if updatepatch .nes. ""
105 $ version = "''mmversion'" + "-" + updatepatch
107 $ version = "''mmversion'"
111 $! Move to the base directories
113 $ current_default = f$environment("DEFAULT")
114 $ my_dir = f$parse(current_default,,,"DIRECTORY") - "[" - "<" - ">" - "]"
117 $ source = "''default_dir'"
118 $ src1 = "new_gnu:[usr.bin],"
119 $ src2 = "new_gnu:[usr.include.curl],"
120 $ src3 = "new_gnu:[usr.lib],"
121 $ src4 = "new_gnu:[usr.lib.pkgconfig],"
122 $ src5 = "new_gnu:[usr.share.man.man1],"
123 $ src6 = "new_gnu:[usr.share.man.man3],"
124 $ src7 = "new_gnu:[vms_src],"
125 $ src8 = "new_gnu:[common_src],"
126 $ src9 = "prj_root:[''my_dir'],prj_root:[''my_dir'.src]"
127 $ gnu_src = src1 + src2 + src3 + src4 + src5 + src6 + src7 + src8 + src9
131 $ arch_name = f$edit(f$getsyi("arch_name"),"UPCASE")
132 $ if arch_name .eqs. "ALPHA" then base = "AXPVMS"
133 $ if arch_name .eqs. "IA64" then base = "I64VMS"
134 $ if arch_name .eqs. "VAX" then base = "VAXVMS"
136 $ if base .eqs. "" then exit 44
138 $ pcsi_option = "/option=noconfirm"
139 $ if arch_code .eqs. "V"
145 $product package 'product_name' -
147 /producer='producer' -
149 /destination=STAGE_ROOT:[KIT] -
150 /material=('gnu_src','source') -
151 /format=sequential 'pcsi_option'
154 $! VAX can not do a compressed kit.
155 $! ZIP -9 "-V" does a better job, so no reason to normally build a compressed
157 $!----------------------------------
158 $if p1 .eqs. "COMPRESSED"
160 $ if arch_code .nes. "V"
162 $ product copy /options=(novalidate, noconfirm) /format=compressed -
164 /source=stage_root:[kit]/dest=stage_root:[kit] -
165 /version='version'/base='base'
170 $ set def 'default_dir'