Changeset 4734 for trunk/tools/install
- Timestamp:
- Dec 3, 2000, 9:06:36 AM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/install/odin.cmd
r4543 r4734 1 /* Odin installation script */ 1 /* $Id: odin.cmd,v 1.17 2000-12-03 08:06:36 bird Exp $ 2 * 3 * Odin32 API WarpIn installation script generator. 4 * 5 * Copyright (c) 2000 knut st. osmundsen (knut.stange.osmundsen@mynd.no) 6 * 7 * Project Odin Software License can be found in LICENSE.TXT 8 * 9 * 10 * Util to build WarpIn archive. 11 * Syntax: Odin.cmd <dlldir> [dlldir2] [dlldir3] [dlldir4] 12 * Where <dlldir> is the subdirectory name in /bin. 13 * 14 */ 15 16 17 /* 18 * Load REXX util functions. 19 */ 2 20 Call RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs' 3 21 Call SysLoadFuncs 4 22 5 "del odininst.wis" 23 24 /* 25 * Parse arguments. 26 */ 27 parse arg asArg.1 asArg.2 asArg.3 asArg.4 asArg.5 asArg.6 asArg.7 asArg.8 asArg.9 28 29 30 /* If no arguments Then display syntax and fail. */ 31 if (asArg.1 = '') then 32 do 33 call Syntax; 34 exit(1); 35 end 36 37 /* 38 * Process arguments. 39 */ 40 i = 1; 41 do while ((asArg.i <> '') & (i < 9)) 42 /* 43 * Look for unsupported options. 44 */ 45 ch = substr(asArg.i, 1, 1); 46 if (ch = '-' || ch = '/') then 47 do /* option */ 48 call Syntax; 49 exit(1); 50 end 51 52 /* 53 * The argument specifies a dlldirectory under bin. 54 * Make distribution. 55 */ 56 if (CreateWarpInScript('odininst.wis', asArg.i) <> 0) then 57 do 58 say 'failed to create WarpIn script.' 59 exit(2); 60 end 61 if (PackFiles('odininst.wis', asArg.i, MakeArchiveName(asArg.i)) <> 0) then 62 do 63 say 'failed to create WarpIn script.' 64 exit(3); 65 end 66 i = i + 1; 67 end 68 69 /* 70 * successfull exit 71 */ 72 exit(0); 73 74 75 /* 76 * Display syntax. 77 */ 78 Syntax: procedure; 79 say 'Util to build WarpIn archive.'; 80 say 'Syntax: Odin.cmd <dlldir> [dlldir2] [dlldir3] [dlldir4]'; 81 say ' Where <dlldir> is the subdirectory name in /bin.'; 82 return; 83 84 85 /* 86 * Create the install script file 87 */ 88 CreateWarpInScript: procedure 89 parse arg sInstFile, sDlldir 90 91 call SysFileDelete sInstFile; 6 92 7 93 /* create warpin installation script */ 8 instfile = 'odininst.wis' 9 rc = lineout(instfile, '<WARPIN>', 1); 10 rc = lineout(instfile, '<HEAD>'); 11 rc = lineout(instfile, '<PCK INDEX=1'); 12 rc = lineout(instfile, ' PACKAGEID="Odin\Odin\Odin Core Files\0\0\5"'); 13 rc = lineout(instfile, ' TARGET="C:\ODIN" BASE'); 94 rc = lineout(sInstFile, '<WARPIN>', 1); 95 rc = lineout(sInstFile, '<HEAD>'); 96 rc = lineout(sInstFile, '<PCK INDEX=1'); 97 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Odin Core Files\0\0\5"'); 98 rc = lineout(sInstFile, ' TARGET="C:\ODIN" BASE'); 14 99 title = " TITLE=""Odin Daily Build ("date()")"""; 15 rc = lineout( instfile, title);16 rc = lineout( instfile, ' SELECT NODESELECT');17 rc = lineout( instfile, ' >Installation of Odin Daily Build .</PCK>');18 rc = lineout( instfile, '');19 rc = lineout( instfile, '<PCK INDEX=2');20 rc = lineout( instfile, ' PACKAGEID="Odin\Odin\Odin System Files\0\0\5"');21 rc = lineout( instfile, ' TARGET="C:\ODIN\SYSTEM32"');22 rc = lineout( instfile, ' FIXED SELECT NODESELECT');100 rc = lineout(sInstFile, title); 101 rc = lineout(sInstFile, ' SELECT NODESELECT'); 102 rc = lineout(sInstFile, ' >Installation of Odin Daily Build .</PCK>'); 103 rc = lineout(sInstFile, ''); 104 rc = lineout(sInstFile, '<PCK INDEX=2'); 105 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Odin System Files\0\0\5"'); 106 rc = lineout(sInstFile, ' TARGET="C:\ODIN\SYSTEM32"'); 107 rc = lineout(sInstFile, ' FIXED SELECT NODESELECT'); 23 108 title = " TITLE=""Odin Daily Build System Files ("date()")"""; 24 rc = lineout(instfile, title); 25 rc = lineout(instfile, ' EXECUTE="odininst.exe"'); 26 rc = lineout(instfile, ' CONFIGSYS="LIBPATH=$(1)\SYSTEM32 | ADDRIGHT"'); 27 rc = lineout(instfile, ' CONFIGSYS="SET PATH=$(1)\SYSTEM32 | ADDRIGHT"'); 28 rc = lineout(instfile, ' >Installation of Odin System files .</PCK>'); 29 rc = lineout(instfile, ''); 30 rc = lineout(instfile, '<PCK INDEX=3'); 31 rc = lineout(instfile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo OpenGL Files\0\0\5"'); 32 rc = lineout(instfile, ' TARGET="C:\ODIN\SYSTEM32"'); 33 rc = lineout(instfile, ' FIXED'); 109 rc = lineout(sInstFile, title); 110 rc = lineout(sInstFile, ' EXECUTE="odininst.exe"'); 111 rc = lineout(sInstFile, ' CONFIGSYS="LIBPATH=$(1)\SYSTEM32 | ADDRIGHT"'); 112 rc = lineout(sInstFile, ' CONFIGSYS="SET PATH=$(1)\SYSTEM32 | ADDRIGHT"'); 113 rc = lineout(sInstFile, ' >Installation of Odin System files .</PCK>'); 114 rc = lineout(sInstFile, ''); 115 rc = lineout(sInstFile, '<PCK INDEX=3'); 116 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Add Win32k.sys to Config.sys\0\0\5"'); 117 rc = lineout(sInstFile, ' TARGET="C:\ODIN\SYSTEM32"'); 118 rc = lineout(sInstFile, ' FIXED SELECT'); 119 title = " TITLE=""Add Win32k.sys to Config.sys"""; 120 rc = lineout(sInstFile, title); 121 rc = lineout(sInstFile, ' CONFIGSYS="DEVICE=$(1)\SYSTEM32\Win32k.sys | UNIQUE ADDBEFORE(PROTSHELL)"'); 122 rc = lineout(sInstFile, ' >Add Win32k.sys to Config.sys .</PCK>'); 123 rc = lineout(sInstFile, ''); 124 rc = lineout(sInstFile, '<PCK INDEX=4'); 125 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo OpenGL Files\0\0\5"'); 126 rc = lineout(sInstFile, ' TARGET="C:\ODIN\SYSTEM32"'); 127 rc = lineout(sInstFile, ' FIXED'); 34 128 title = " TITLE=""Odin Daily Build 3dfx Voodoo OpenGL Files ("date()")"""; 35 rc = lineout( instfile, title);36 rc = lineout( instfile, ' >Installation of Odin 3dfx Voodoo OpenGL files .</PCK>');37 rc = lineout( instfile, '');38 rc = lineout( instfile, '<PCK INDEX=4');39 rc = lineout( instfile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo 1 Glide Files\0\0\5"');40 rc = lineout( instfile, ' TARGET="C:\ODIN\SYSTEM32"');41 rc = lineout( instfile, ' FIXED');129 rc = lineout(sInstFile, title); 130 rc = lineout(sInstFile, ' >Installation of Odin 3dfx Voodoo OpenGL files .</PCK>'); 131 rc = lineout(sInstFile, ''); 132 rc = lineout(sInstFile, '<PCK INDEX=5'); 133 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo 1 Glide Files\0\0\5"'); 134 rc = lineout(sInstFile, ' TARGET="C:\ODIN\SYSTEM32"'); 135 rc = lineout(sInstFile, ' FIXED'); 42 136 title = " TITLE=""Odin Daily Build 3dfx Voodoo 1 Glide Files ("date()")"""; 43 rc = lineout( instfile, title);44 rc = lineout( instfile, ' >Installation of Odin 3dfx Voodoo 1 Glide files .</PCK>');45 rc = lineout( instfile, '');46 rc = lineout( instfile, '<PCK INDEX=5');47 rc = lineout( instfile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo 2 Glide Files\0\0\5"');48 rc = lineout( instfile, ' TARGET="C:\ODIN\SYSTEM32"');49 rc = lineout( instfile, ' FIXED');137 rc = lineout(sInstFile, title); 138 rc = lineout(sInstFile, ' >Installation of Odin 3dfx Voodoo 1 Glide files .</PCK>'); 139 rc = lineout(sInstFile, ''); 140 rc = lineout(sInstFile, '<PCK INDEX=6'); 141 rc = lineout(sInstFile, ' PACKAGEID="Odin\Odin\Odin 3dfx Voodoo 2 Glide Files\0\0\5"'); 142 rc = lineout(sInstFile, ' TARGET="C:\ODIN\SYSTEM32"'); 143 rc = lineout(sInstFile, ' FIXED'); 50 144 title = " TITLE=""Odin Daily Build 3dfx Voodoo 2 Glide Files ("date()")"""; 51 rc = lineout(instfile, title); 52 rc = lineout(instfile, ' >Installation of Odin 3dfx Voodoo 2 Glide files .</PCK>'); 53 rc = lineout(instfile, '</HEAD>'); 54 rc = lineout(instfile, '<BODY>'); 55 rc = lineout(instfile, '<PAGE INDEX=1 TYPE=TEXT>'); 56 rc = lineout(instfile, '<NEXTBUTTON TARGET=2>~Next</NEXTBUTTON>'); 57 rc = lineout(instfile, '<TEXT>'); 58 rc = lineout(instfile, 'Project Odin Information'); 59 rc = lineout(instfile, '========================'); 60 rc = lineout(instfile, ''); 61 rc = lineout(instfile, 'Odin is a free Open Source project with the goal to eventually'); 62 rc = lineout(instfile, 'provide a fully working Win32 (Win 95/98/NT/2000) runtime environment,'); 63 rc = lineout(instfile, 'making it possible to run your favorite Windows programs under OS/2,'); 64 rc = lineout(instfile, 'as if they were native OS/2 programs. The second goal of Odin is to'); 65 rc = lineout(instfile, 'provide the full Win32 application programming interface (API) so'); 66 rc = lineout(instfile, 'that it is possible to build OS/2 programs using Windows source'); 67 rc = lineout(instfile, 'code. This is also refered to as Odin32 whereas Odin is the name'); 68 rc = lineout(instfile, 'of the Win32 binary emulator.'); 69 rc = lineout(instfile, ''); 70 rc = lineout(instfile, 'Odin is available thanks to the work of the following people:'); 71 rc = lineout(instfile, ''); 72 rc = lineout(instfile, ' Christoph Bratschi'); 73 rc = lineout(instfile, ' Oliver Braun'); 74 rc = lineout(instfile, ' Edgar Buerkle'); 75 rc = lineout(instfile, ' Yuri Dario'); 76 rc = lineout(instfile, ' Przemyslaw Dobrowolski'); 77 rc = lineout(instfile, ' Daniela Engert'); 78 rc = lineout(instfile, ' Peter Fitzsimmons'); 79 rc = lineout(instfile, ' Adrian Gschwend'); 80 rc = lineout(instfile, ' Jeroen van den Horn'); 81 rc = lineout(instfile, ' Patrick Haller'); 82 rc = lineout(instfile, ' Achim Hasenmueller'); 83 rc = lineout(instfile, ' Kevin Langman'); 84 rc = lineout(instfile, ' Bart van Leeuwen'); 85 rc = lineout(instfile, ' Sander van Leeuwen'); 86 rc = lineout(instfile, ' Felix Maschek'); 87 rc = lineout(instfile, ' Chris McKillop'); 88 rc = lineout(instfile, ' Nenad Milenkovic'); 89 rc = lineout(instfile, ' Markus Montkowski'); 90 rc = lineout(instfile, ' Michal Necasek'); 91 rc = lineout(instfile, ' Ondrej Necasek'); 92 rc = lineout(instfile, ' Knut Stange Osmundsen'); 93 rc = lineout(instfile, ' Vitali E. Pelenyov'); 94 rc = lineout(instfile, ' Rene Pronk'); 95 rc = lineout(instfile, ' David Raison'); 96 rc = lineout(instfile, ' Carsten Tenbrink'); 97 rc = lineout(instfile, ' Vit Timchishin'); 98 rc = lineout(instfile, ' Joel Troster'); 99 rc = lineout(instfile, ' Jens Wiessner'); 100 rc = lineout(instfile, ' Vince Vielhaber'); 101 rc = lineout(instfile, ' All the WINE people'); 102 rc = lineout(instfile, ''); 103 rc = lineout(instfile, '</TEXT>'); 104 rc = lineout(instfile, '</PAGE>'); 105 rc = lineout(instfile, '<PAGE INDEX=2 TYPE=README>'); 106 rc = lineout(instfile, '<NEXTBUTTON TARGET=3>~I agree</NEXTBUTTON>'); 107 rc = lineout(instfile, '<TEXT>'); 108 rc = lineout(instfile, 'By pressing the "I agree" button, you agree to all terms and conditions to the below licence agreement.'); 109 rc = lineout(instfile, '</TEXT>'); 110 rc = lineout(instfile, '<README>'); 111 rc = lineout(instfile, 'Project Odin Software License'); 112 rc = lineout(instfile, ''); 113 rc = lineout(instfile, 'You may, without charge, royalty, or other payment, copy and'); 114 rc = lineout(instfile, 'distribute copies of this work and derivative works of this work'); 115 rc = lineout(instfile, 'in source or binary form provided that:'); 116 rc = lineout(instfile, '(1) you appropriately publish on each copy an appropriate'); 117 rc = lineout(instfile, 'copyright notice; (2) faithfully reproduce all prior copyright'); 118 rc = lineout(instfile, 'included in the original work; and (3) agree to indemnify and'); 119 rc = lineout(instfile, 'hold all prior authors, copyright holders and licensors of the'); 120 rc = lineout(instfile, 'work harmless from and against all damages arising from use of'); 121 rc = lineout(instfile, 'or the inability to use the work.'); 122 rc = lineout(instfile, ''); 123 rc = lineout(instfile, 'You may distribute binaries and sources of derivative works of'); 124 rc = lineout(instfile, 'the work provided that: (1) all modifications to the original'); 125 rc = lineout(instfile, 'source code are publically available; (2) all modifications are'); 126 rc = lineout(instfile, 'released under this license; (3) all copyrights of the original'); 127 rc = lineout(instfile, 'work are included; (4) the modifications are a direct advantage'); 128 rc = lineout(instfile, 'for the functionality and completeness of the product or improve'); 129 rc = lineout(instfile, 'interoperability of the product with another product and do not'); 130 rc = lineout(instfile, 'interfere with the goal of an open source and free emulation'); 131 rc = lineout(instfile, 'product.'); 132 rc = lineout(instfile, ''); 133 rc = lineout(instfile, 'You may NOT use the work as base of another work that is'); 134 rc = lineout(instfile, 'not released under this license agreement meaning that you'); 135 rc = lineout(instfile, 'especially are not allowed to develop any other product which'); 136 rc = lineout(instfile, 'is based on the sources and/or binaries of the work.'); 137 rc = lineout(instfile, ''); 138 rc = lineout(instfile, 'However, you are encouraged to use the work for porting your'); 139 rc = lineout(instfile, 'free or commercial applications. You can ship software'); 140 rc = lineout(instfile, 'converted using the work as long as the original copyright'); 141 rc = lineout(instfile, 'for the work is mentioned and you do not charge for'); 142 rc = lineout(instfile, 'using any part of the work. You may also ship the work in'); 143 rc = lineout(instfile, 'binaries and sources for use with your applications as long'); 144 rc = lineout(instfile, 'as you do not violate the distribution regulations of this license.'); 145 rc = lineout(instfile, ''); 146 rc = lineout(instfile, 'These license terms can be amended by a custom license'); 147 rc = lineout(instfile, 'agreement between a third party and the administration'); 148 rc = lineout(instfile, 'team. Such a custom license might only limit the above terms'); 149 rc = lineout(instfile, 'if the changes cause a direct advantage for the functionality'); 150 rc = lineout(instfile, 'or completeness of the product and do not interfere with the'); 151 rc = lineout(instfile, 'goal of an open-source and free emulation product.'); 152 rc = lineout(instfile, ''); 153 rc = lineout(instfile, 'Parts of the work may be governed by a license other than'); 154 rc = lineout(instfile, 'this one, if the source directory of the part contains a'); 155 rc = lineout(instfile, 'license file called "LICENSE.TXT" of its own. If a different'); 156 rc = lineout(instfile, 'license exists, it supercedes this license. Removing the'); 157 rc = lineout(instfile, 'the part specific license will automatically put back the'); 158 rc = lineout(instfile, 'part under the terms of this license. Only the Odin management'); 159 rc = lineout(instfile, 'team is allowed to put parts of the work under a different'); 160 rc = lineout(instfile, 'license and remove the part specific licenses. The purpose'); 161 rc = lineout(instfile, 'of using different licenses is solely for allowing code'); 162 rc = lineout(instfile, 'sharing of certain parts of the work with other projects that'); 163 rc = lineout(instfile, 'have incompatible licenses. These parts should either have'); 164 rc = lineout(instfile, 'this license in a version that makes it compatible with the'); 165 rc = lineout(instfile, 'license of the second project, or the license of the second'); 166 rc = lineout(instfile, 'project as long as it conforms to the goals of an open source'); 167 rc = lineout(instfile, 'and free emulation software.'); 168 rc = lineout(instfile, ''); 169 rc = lineout(instfile, 'Warranty'); 170 rc = lineout(instfile, ''); 171 rc = lineout(instfile, 'EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED'); 172 rc = lineout(instfile, 'WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING'); 173 rc = lineout(instfile, 'BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A'); 174 rc = lineout(instfile, 'PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE. EXCEPT AS'); 175 rc = lineout(instfile, 'OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR'); 176 rc = lineout(instfile, 'LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF'); 177 rc = lineout(instfile, 'THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.'); 178 rc = lineout(instfile, '</README>'); 179 rc = lineout(instfile, '</PAGE>'); 180 rc = lineout(instfile, '<PAGE INDEX=3 TYPE=README>'); 181 rc = lineout(instfile, '<NEXTBUTTON TARGET=4>~Next</NEXTBUTTON>'); 182 rc = lineout(instfile, '<TEXT>'); 183 rc = lineout(instfile, 'List of changes and bugfixes for this Odin daily build ('date()')'); 184 rc = lineout(instfile, '</TEXT>'); 185 rc = lineout(instfile, '<README>'); 186 /* Insert ChangeLog */ 187 changelog = '..\..\ChangeLog' 188 logline = linein(changelog); 189 do while lines(changelog) > 0 190 rc = lineout(instfile, logline); 191 logline = linein(changelog); 145 rc = lineout(sInstFile, title); 146 rc = lineout(sInstFile, ' >Installation of Odin 3dfx Voodoo 2 Glide files .</PCK>'); 147 rc = lineout(sInstFile, '</HEAD>'); 148 rc = lineout(sInstFile, '<BODY>'); 149 rc = lineout(sInstFile, '<PAGE INDEX=1 TYPE=TEXT>'); 150 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=2>~Next</NEXTBUTTON>'); 151 rc = lineout(sInstFile, '<TEXT>'); 152 rc = lineout(sInstFile, 'Project Odin Information'); 153 rc = lineout(sInstFile, '========================'); 154 rc = lineout(sInstFile, ''); 155 rc = lineout(sInstFile, 'Odin is a free Open Source project with the goal to eventually'); 156 rc = lineout(sInstFile, 'provide a fully working Win32 (Win 95/98/NT/2000) runtime environment, '); 157 rc = lineout(sInstFile, 'making it possible to run your favorite Windows programs under OS/2, '); 158 rc = lineout(sInstFile, 'as if they were native OS/2 programs. The second goal of Odin is to'); 159 rc = lineout(sInstFile, 'provide the full Win32 application programming interface (API) so'); 160 rc = lineout(sInstFile, 'that it is possible to build OS/2 programs using Windows source'); 161 rc = lineout(sInstFile, 'code. This is also refered to as Odin32 whereas Odin is the name'); 162 rc = lineout(sInstFile, 'of the Win32 binary emulator.'); 163 rc = lineout(sInstFile, ''); 164 rc = lineout(sInstFile, 'Odin is available thanks to the work of the following people:'); 165 rc = lineout(sInstFile, ''); 166 rc = lineout(sInstFile, ' Christoph Bratschi'); 167 rc = lineout(sInstFile, ' Oliver Braun'); 168 rc = lineout(sInstFile, ' Edgar Buerkle'); 169 rc = lineout(sInstFile, ' Yuri Dario'); 170 rc = lineout(sInstFile, ' Przemyslaw Dobrowolski'); 171 rc = lineout(sInstFile, ' Daniela Engert'); 172 rc = lineout(sInstFile, ' Peter Fitzsimmons'); 173 rc = lineout(sInstFile, ' Adrian Gschwend'); 174 rc = lineout(sInstFile, ' Jeroen van den Horn'); 175 rc = lineout(sInstFile, ' Patrick Haller'); 176 rc = lineout(sInstFile, ' Achim Hasenmueller'); 177 rc = lineout(sInstFile, ' Kevin Langman'); 178 rc = lineout(sInstFile, ' Bart van Leeuwen'); 179 rc = lineout(sInstFile, ' Sander van Leeuwen'); 180 rc = lineout(sInstFile, ' Felix Maschek'); 181 rc = lineout(sInstFile, ' Chris McKillop'); 182 rc = lineout(sInstFile, ' Nenad Milenkovic'); 183 rc = lineout(sInstFile, ' Markus Montkowski'); 184 rc = lineout(sInstFile, ' Michal Necasek'); 185 rc = lineout(sInstFile, ' Ondrej Necasek'); 186 rc = lineout(sInstFile, ' Knut Stange Osmundsen'); 187 rc = lineout(sInstFile, ' Vitali E. Pelenyov'); 188 rc = lineout(sInstFile, ' Rene Pronk'); 189 rc = lineout(sInstFile, ' David Raison'); 190 rc = lineout(sInstFile, ' Carsten Tenbrink'); 191 rc = lineout(sInstFile, ' Vit Timchishin'); 192 rc = lineout(sInstFile, ' Joel Troster'); 193 rc = lineout(sInstFile, ' Jens Wiessner'); 194 rc = lineout(sInstFile, ' Vince Vielhaber'); 195 rc = lineout(sInstFile, ' All the WINE people'); 196 rc = lineout(sInstFile, ''); 197 rc = lineout(sInstFile, '</TEXT>'); 198 rc = lineout(sInstFile, '</PAGE>'); 199 rc = lineout(sInstFile, '<PAGE INDEX=2 TYPE=README>'); 200 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=3>~I agree</NEXTBUTTON>'); 201 rc = lineout(sInstFile, '<TEXT>'); 202 rc = lineout(sInstFile, 'By pressing the "I agree" button, you agree to all terms and conditions to the below licence agreement.'); 203 rc = lineout(sInstFile, '</TEXT>'); 204 rc = lineout(sInstFile, '<README>'); 205 rc = lineout(sInstFile, 'Project Odin Software License'); 206 rc = lineout(sInstFile, ''); 207 rc = lineout(sInstFile, 'You may, without charge, royalty, or other payment, copy and'); 208 rc = lineout(sInstFile, 'distribute copies of this work and derivative works of this work'); 209 rc = lineout(sInstFile, 'in source or binary form provided that:'); 210 rc = lineout(sInstFile, '(1) you appropriately publish on each copy an appropriate'); 211 rc = lineout(sInstFile, 'copyright notice; (2) faithfully reproduce all prior copyright'); 212 rc = lineout(sInstFile, 'included in the original work; and (3) agree to indemnify and'); 213 rc = lineout(sInstFile, 'hold all prior authors, copyright holders and licensors of the'); 214 rc = lineout(sInstFile, 'work harmless from and against all damages arising from use of'); 215 rc = lineout(sInstFile, 'or the inability to use the work.'); 216 rc = lineout(sInstFile, ''); 217 rc = lineout(sInstFile, 'You may distribute binaries and sources of derivative works of'); 218 rc = lineout(sInstFile, 'the work provided that: (1) all modifications to the original'); 219 rc = lineout(sInstFile, 'source code are publically available; (2) all modifications are'); 220 rc = lineout(sInstFile, 'released under this license; (3) all copyrights of the original'); 221 rc = lineout(sInstFile, 'work are included; (4) the modifications are a direct advantage'); 222 rc = lineout(sInstFile, 'for the functionality and completeness of the product or improve'); 223 rc = lineout(sInstFile, 'interoperability of the product with another product and do not'); 224 rc = lineout(sInstFile, 'interfere with the goal of an open source and free emulation'); 225 rc = lineout(sInstFile, 'product.'); 226 rc = lineout(sInstFile, ''); 227 rc = lineout(sInstFile, 'You may NOT use the work as base of another work that is'); 228 rc = lineout(sInstFile, 'not released under this license agreement meaning that you'); 229 rc = lineout(sInstFile, 'especially are not allowed to develop any other product which'); 230 rc = lineout(sInstFile, 'is based on the sources and/or binaries of the work.'); 231 rc = lineout(sInstFile, ''); 232 rc = lineout(sInstFile, 'However, you are encouraged to use the work for porting your'); 233 rc = lineout(sInstFile, 'free or commercial applications. You can ship software'); 234 rc = lineout(sInstFile, 'converted using the work as long as the original copyright'); 235 rc = lineout(sInstFile, 'for the work is mentioned and you do not charge for'); 236 rc = lineout(sInstFile, 'using any part of the work. You may also ship the work in'); 237 rc = lineout(sInstFile, 'binaries and sources for use with your applications as long'); 238 rc = lineout(sInstFile, 'as you do not violate the distribution regulations of this license.'); 239 rc = lineout(sInstFile, ''); 240 rc = lineout(sInstFile, 'These license terms can be amended by a custom license'); 241 rc = lineout(sInstFile, 'agreement between a third party and the administration'); 242 rc = lineout(sInstFile, 'team. Such a custom license might only limit the above terms'); 243 rc = lineout(sInstFile, 'if the changes cause a direct advantage for the functionality'); 244 rc = lineout(sInstFile, 'or completeness of the product and do not interfere with the'); 245 rc = lineout(sInstFile, 'goal of an open-source and free emulation product.'); 246 rc = lineout(sInstFile, ''); 247 rc = lineout(sInstFile, 'Parts of the work may be governed by a license other than'); 248 rc = lineout(sInstFile, 'this one, if the source directory of the part contains a'); 249 rc = lineout(sInstFile, 'license file called "LICENSE.TXT" of its own. If a different'); 250 rc = lineout(sInstFile, 'license exists, it supercedes this license. Removing the'); 251 rc = lineout(sInstFile, 'the part specific license will automatically put back the'); 252 rc = lineout(sInstFile, 'part under the terms of this license. Only the Odin management'); 253 rc = lineout(sInstFile, 'team is allowed to put parts of the work under a different'); 254 rc = lineout(sInstFile, 'license and remove the part specific licenses. The purpose'); 255 rc = lineout(sInstFile, 'of using different licenses is solely for allowing code'); 256 rc = lineout(sInstFile, 'sharing of certain parts of the work with other projects that'); 257 rc = lineout(sInstFile, 'have incompatible licenses. These parts should either have'); 258 rc = lineout(sInstFile, 'this license in a version that makes it compatible with the'); 259 rc = lineout(sInstFile, 'license of the second project, or the license of the second'); 260 rc = lineout(sInstFile, 'project as long as it conforms to the goals of an open source'); 261 rc = lineout(sInstFile, 'and free emulation software.'); 262 rc = lineout(sInstFile, ''); 263 rc = lineout(sInstFile, 'Warranty'); 264 rc = lineout(sInstFile, ''); 265 rc = lineout(sInstFile, 'EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED'); 266 rc = lineout(sInstFile, 'WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING'); 267 rc = lineout(sInstFile, 'BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A'); 268 rc = lineout(sInstFile, 'PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE. EXCEPT AS'); 269 rc = lineout(sInstFile, 'OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR'); 270 rc = lineout(sInstFile, 'LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF'); 271 rc = lineout(sInstFile, 'THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.'); 272 rc = lineout(sInstFile, '</README>'); 273 rc = lineout(sInstFile, '</PAGE>'); 274 rc = lineout(sInstFile, '<PAGE INDEX=3 TYPE=README>'); 275 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=4>~Next</NEXTBUTTON>'); 276 rc = lineout(sInstFile, '<TEXT>'); 277 rc = lineout(sInstFile, 'List of changes and bugfixes for this Odin daily build ('date()')'); 278 rc = lineout(sInstFile, '</TEXT>'); 279 rc = lineout(sInstFile, '<README>'); 280 281 /* Insert ChangeLog. */ 282 sChangeLog = '..\..\ChangeLog'; 283 sLogLine = linein(sChangeLog); 284 do while (lines(sChangeLog) > 0) 285 rc = lineout(sInstFile, sLogLine); 286 sLogLine = linein(sChangeLog); 192 287 end 193 call stream changelog, 'c', 'close'; 194 195 rc = lineout(instfile, '</README>'); 196 rc = lineout(instfile, '</PAGE>'); 197 rc = lineout(instfile, '<PAGE INDEX=4 TYPE=CONTAINER>'); 198 rc = lineout(instfile, '<NEXTBUTTON TARGET=5>~Next</NEXTBUTTON>'); 199 rc = lineout(instfile, '<TEXT>'); 200 rc = lineout(instfile, 'Please select the packages which are to be installed. You may change the target paths for the packages.'); 201 rc = lineout(instfile, '</TEXT>'); 202 rc = lineout(instfile, '</PAGE>'); 203 rc = lineout(instfile, '<PAGE INDEX=5 TYPE=CONFIGURE>'); 204 rc = lineout(instfile, '<NEXTBUTTON TARGET=6>~Next</NEXTBUTTON>'); 205 rc = lineout(instfile, '<TEXT>'); 206 rc = lineout(instfile, 'Please select additional configuration that WarpIN should perform after installing this archive.'); 207 rc = lineout(instfile, '</TEXT>'); 208 rc = lineout(instfile, '</PAGE>'); 209 rc = lineout(instfile, '<PAGE INDEX=6 TYPE=TEXT>'); 210 rc = lineout(instfile, '<NEXTBUTTON TARGET=0>I~nstall</NEXTBUTTON>'); 211 rc = lineout(instfile, '<TEXT>'); 212 rc = lineout(instfile, 'Press "Install" to begin installing Odin.</TEXT>'); 213 rc = lineout(instfile, '</PAGE>'); 214 rc = lineout(instfile, '</BODY>'); 215 rc = lineout(instfile, '</WARPIN>'); 216 rc = lineout(instfile, ''); 217 rc = lineout(instfile); 218 /* rc = SysFileDelete(instfile); */ 219 220 parse arg cmdline 221 222 curdir = directory(); 223 if cmdline = "debug" 224 then 288 call stream sChangeLog, 'c', 'close'; 289 290 rc = lineout(sInstFile, '</README>'); 291 rc = lineout(sInstFile, '</PAGE>'); 292 rc = lineout(sInstFile, '<PAGE INDEX=4 TYPE=CONTAINER>'); 293 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=5>~Next</NEXTBUTTON>'); 294 rc = lineout(sInstFile, '<TEXT>'); 295 rc = lineout(sInstFile, 'Please select the packages which are to be installed. You may change the target paths for the packages.'); 296 rc = lineout(sInstFile, '</TEXT>'); 297 rc = lineout(sInstFile, '</PAGE>'); 298 rc = lineout(sInstFile, '<PAGE INDEX=5 TYPE=CONFIGURE>'); 299 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=6>~Next</NEXTBUTTON>'); 300 rc = lineout(sInstFile, '<TEXT>'); 301 rc = lineout(sInstFile, 'Please select additional configuration that WarpIN should perform after installing this archive.'); 302 rc = lineout(sInstFile, '</TEXT>'); 303 rc = lineout(sInstFile, '</PAGE>'); 304 rc = lineout(sInstFile, '<PAGE INDEX=6 TYPE=TEXT>'); 305 rc = lineout(sInstFile, '<NEXTBUTTON TARGET=0>I~nstall</NEXTBUTTON>'); 306 rc = lineout(sInstFile, '<TEXT>'); 307 rc = lineout(sInstFile, 'Press "Install" to begin installing Odin.</TEXT>'); 308 rc = lineout(sInstFile, '</PAGE>'); 309 rc = lineout(sInstFile, '</BODY>'); 310 rc = lineout(sInstFile, '</WARPIN>'); 311 rc = lineout(sInstFile, ''); 312 lrc= lineout(sInstFile); 313 return rc; 314 315 316 317 /* 318 * Determins the archive name. 319 */ 320 MakeArchiveName: procedure; 321 parse arg sDllDir 322 sDllDir = filespec('name', sDllDir); 323 return directory()||'\odin32bin-'||date('S')||'-'||sDllDir||'.wpi'; 324 325 326 327 /* 328 * Procedure which packs the files and script into the .wpi file. 329 */ 330 PackFiles: procedure; 331 parse arg sInstFile, sDllDir, sInstallArchive 332 333 /* 334 * Determin directories and wic.exe commandline. 335 */ 336 sCurDir = directory(); 337 sMainDir = filespec('path', sCurDir); 338 sMainDir = filespec('path', substr(sMainDir, 1, length(sMainDir) - 1)); 339 sMainDir = filespec('drive', sCurDir) || substr(sMainDir, 1, length(sMainDir) - 1); 340 sDocDir = sMainDir||'\doc' 341 sBinDir = sMainDir||'\bin'; 342 sDllDir = sBinDir||'\'||sDllDir; 343 sWICCmd = 'wic.exe '||sInstallArchive ' -a'; 344 345 /* 346 * Remove any old target install archive file. 347 */ 348 call SysFileDelete sInstallArchive 349 350 /* 351 * Script 352 */ 353 'wic.exe' sInstallArchive '-s' sInstFile 354 355 /* 356 * Packet 1 357 */ 358 sWICCmd '1 -c'||sMainDir 'ChangeLog LICENSE.TXT'; 359 if (rc <> 0) then return rc; 360 sWICCmd '1 -c'||sDocDir 'ChangeLog-1999 ChangeLog-2000 Readme.txt ReportingBugs.txt Logging.txt'; 361 if (rc <> 0) then return rc; 362 363 /* 364 * Packet 2 365 */ 366 say sWICCmd '2 -c'||sBinDir' *.ini 2 -c'||sDllDir '*.dll pe.exe pec.exe odininst.exe regsvr32.exe win32k.sys win32k.ddp Win32kCC.exe kRx.exe'; 367 sWICCmd '2 -c'||sBinDir' *.ini'; 368 if (rc <> 0) then return rc; 369 sWICCmd '2 -c'||sDllDir 'pe.exe *.dll pec.exe odininst.exe regsvr32.exe win32k.sys win32k.ddp Win32kCC.exe kRx.exe'; 370 if (rc <> 0) then return rc; 371 if (pos('DEBUG', translate(filespec('name', sDllDir))) > 0) then 225 372 do 226 dlldir = "bin\debug";227 installarchive = "odin32bin-"date('S')"-debug" 373 sWICCmd '2 -c'||sDllDir '*.sym'; 374 if (rc <> 0) then return rc; 228 375 end 229 else 230 do 231 dlldir = "bin\release"; 232 installarchive = "odin32bin-"date('S')"-release" 233 end 234 235 maindir = "..\.."; 236 237 "del "installarchive".wpi"; 238 239 "copy ..\..\ChangeLog" 240 "wic.exe "curdir"\"installarchive" -a 1 ChangeLog"; 241 242 call directory maindir; 243 "wic.exe "curdir"\"installarchive" -a 1 LICENSE.TXT"; 244 245 call directory doc 246 "wic.exe "curdir"\"installarchive" -a 1 ChangeLog-1999 ChangeLog-2000 Readme.txt ReportingBugs.txt Logging.txt"; 247 call directory ".." 248 249 call directory dlldir; 250 if cmdline = "debug" 251 then 252 do 253 "wic.exe "curdir"\"installarchive" -a 2 *.dll *.sym pe.exe pec.exe odininst.exe regsvr32.exe *.ini win32k.sys win32k.ddp Win32kCC.exe kRx.exe"; 254 end 255 else 256 do 257 "wic.exe "curdir"\"installarchive" -a 2 *.dll pe.exe pec.exe odininst.exe regsvr32.exe *.ini win32k.sys win32k.ddp Win32kCC.exe kRx.exe"; 258 end 259 260 call directory "Glide" 261 "wic.exe "curdir"\"installarchive" -a 3 *.dll"; 262 263 call directory "Voodoo1" 264 "wic.exe "curdir"\"installarchive" -a 4 *.dll"; 265 266 call directory "..\Voodoo2" 267 "wic.exe "curdir"\"installarchive" -a 5 *.dll"; 268 269 call directory curdir; 270 271 /* add script */ 272 "wic.exe "curdir"\"installarchive" -s "curdir"\odininst.wis" 273 274 exit; 275 276 GetBootDrive: procedure 277 parse upper value VALUE( "PATH",, "OS2ENVIRONMENT" ) with "\OS2\SYSTEM" -2 boot_drive +2 278 return boot_drive 279 376 377 /* 378 * Packet 3 is only win32k.sys config.sys line but it seems like we have to add something. 379 */ 380 sWICCmd '3 -c'||sDllDir '*.ddp'; 381 if (rc <> 0) then return rc; 382 383 /* 384 * Packet 4 385 */ 386 sWICCmd '4 -c'||sDllDir||'\Glide *.dll'; 387 if (rc <> 0) then return rc; 388 389 /* 390 * Packet 5 391 */ 392 sWICCmd '5 -c'||sDllDir||'\Glide\Voodoo1 *.dll'; 393 if (rc <> 0) then return rc; 394 395 /* 396 * Packet 6 397 */ 398 sWICCmd '6 -c'||sDllDir||'\Glide\Voodoo2 *.dll'; 399 if (rc <> 0) then return rc; 400 401 return rc; 402
Note:
See TracChangeset
for help on using the changeset viewer.