Changeset 189
- Timestamp:
- Nov 7, 2017, 7:12:58 AM (8 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BUILD.NFO
r54 r189 1 1 =============================================================================== 2 BUILD.NFO -- Information on building AiR-BOOT v1.1.0 2 Information on building AiR-BOOT [20170413] 3 3 =============================================================================== 4 4 5 Building AiR-BOOT and the support tools has been completely revamped6 in this version. The code has been "de-tasmized" so it can now also7 be assembled with JWasm, which is the preferred assembler as of this version.8 5 9 The DOS batch-files have been replaced by Open Watcom Makefiles that 10 can be used on: DOS, Windows, OS/2 and Linux. 11 This greatly enhances the build-environment, which was previously DOS-only. 12 13 The Open Watcom Linker is now used, which obsoletes the use of the (DOS-only) 14 exe2bin and TLink programs. WLink replaces the functionality of both while 15 also adding extensive cross-platform support. 16 17 Several cross-reference files are generated, like object disassemblies 18 and executable header dumps. This aids development in checking for assembler 19 generation and the correctness of that code. 20 21 The (DOS-only) FIXCODE.COM program that is used to embed the MBR-protection 22 in the AiR-BOOT image has been replaced by platform specific versions. 23 This does away with the need to run a DOS-only program in the tool-chain, 24 and thus enables building AiR-BOOT on Linux. 25 26 The preferred assembler is now JWasm. 27 While Tasm4/Masm6 and Wasm are also supported, their use should be of an 28 experimental nature only. Limitations for checking section overlaps 29 and other assembler specific directives inhibit the use of JWasm to 30 it's fullest capability. 31 Since JWasm is open-source and mature, there is no need to support other 32 assemblers in future releases of AiR-BOOT. 33 34 The JWasmD extended DOS version needs DPMI 'enabled' and XMS set to 0 35 to be able to run in an eCS DOS session. 36 The DOS build-environment will probably be discontinued in 37 the future due to it's many restrictions. DOS specific targets can 38 be built on the other platforms. 39 40 The Open Watcom tool-chain in combination with JWasm is now the 41 default tool-chain. 42 43 Building AiR-BOOT v1.1.0 requires the following tools: 44 - Open Watcom Make Utility v1.9 or higher 45 - Open Watcom 16-bits C-Compiler v1.9 or higher 46 - Open Watcom 32-bits C-Compiler v1.9 or higher 47 - Open Watcom Linker v1.9 or higher 48 - JWasm Assembler v2.06d or higher 49 50 As a convenience a simple GNUmakefile also exists where a Makefile exists. 51 The GNUmakefile forwards to the normal Makefile enabing Linux users to run the 52 familiar "make" command. Target passing is supported. 53 54 Note that only the loader, installer and setaboot targets are built. 55 No floppy, cd-rom, etc. images. 6 This is the Master Build Directory 7 ---------------------------------- 8 By default, it builds a RELEASE version for ALL languages and components, 9 which is probably *not* what you want if you only want to _fiddle_ with 10 the beast. 56 11 57 12 58 Rousseau. 13 Fiddling 14 -------- 15 Fiddling can be done in the 'bootcode' directory. 16 Do a 'make dev-info' in 'bootcode' to learn more. 17 -- or -- 18 Use File Commander and press F2 which will present a nice Build Menu. 19 20 21 A RELEASE Version 22 ----------------- 23 If you _do_ build a RELEASE and *distribute* it, you are obliged to honor the 24 GPL and thus also make available the sources from which the release was built. 25 Furthermore, you are obliged to use *your* VENDOR and MACHINE information 26 for the BLDLEVEL information. 27 28 29 The '_build.cmd' script 30 ----------------------- 31 Builds the whole shebang. 32 Stuff is put in the 'release' directoy. 33 34 35 The '_package.cmd' script 36 ------------------------- 37 Creates a zip-file containing all the RELEASE files. 38 39 40 The '_clean.cmd' script 41 ----------------------- 42 Yep, you guessed it... 43 44 45 File Commander 46 -------------- 47 The Swiss Army Knife used to provide Build Menus. 48 Just press F2 here for the Master Build Menu, 49 -- or -- 50 go to the 'bootcode' directory and press F2 for the Development Build Menu. 51 52 53 54 Ben Rietbroek, 55 AiR-BOOT maintainer. -
trunk/Makefile
r185 r189 134 134 135 135 136 137 # ----------------------------------------------------------------------------- 138 # SHOW MASTER BUILD INFORMATION 139 # ----------------------------------------------------------------------------- 140 info: .SYMBOLIC 141 !ifdef __LINUX__ 142 @clear 143 @less BUILD.NFO 144 @echo 145 !else 146 @cls 147 @type BUILD.NFO | more 148 @echo. 149 @pause 150 !endif 151 152 153 154 # ----------------------------------------------------------------------------- 155 # SHOW LICENSE 156 # ----------------------------------------------------------------------------- 157 license: .SYMBOLIC 158 !ifdef __LINUX__ 159 @clear 160 @less COPYING 161 @echo 162 !else 163 @cls 164 @type COPYING | more 165 @echo. 166 @pause 167 !endif 168 169 170 171 # ----------------------------------------------------------------------------- 172 # CREATE PACKAGE 173 # ----------------------------------------------------------------------------- 174 package: .SYMBOLIC 175 !ifdef __LINUX__ 176 @echo 177 @echo "*** Packaging is not implemented yet ***" 178 @echo 179 !else 180 @echo. 181 @echo *** Packaging is not implemented yet *** 182 @echo. 183 !endif 184 185 186 136 187 # ----------------------------------------------------------------------------- 137 188 # DISTRIBUTE RELEVANT TARGETS TO RELEASE DIRECTORY -
trunk/_build.cmd
r187 r189 1 @wmake -h 1 @wmake -h %RELEASE=y -
trunk/air-boot.gmk
r187 r189 29 29 $(info ) 30 30 $(info [$@]) 31 @echo 32 @echo "### Master AiR-BOOT Makefile ###" 33 @echo "Use make build to build AiR-BOOT for all languages." 31 @less BUILD.NFO 34 32 @echo 35 33 … … 44 42 wmake -h 45 43 44 # Create package 45 package: 46 $(info ) 47 $(info [$@]) 48 @echo 49 @echo "*** Packaging is not implemented yet ***" 50 @echo 51 46 52 # Cleanup the generated files 47 53 clean: … … 51 57 wmake -h clean 52 58 53 59 # Show license information 60 license: 61 $(info ) 62 $(info [$@]) 63 @less COPYING 64 @echo 54 65 55 66 # -
trunk/fc.mnu
r188 r189 16 16 C: Clean 17 17 wmake -h clean 18 19 -: ------------- 20 21 L: Show License 22 wmake -h license -
trunk/fcl.mnu
r188 r189 21 21 S: Git Status 22 22 git status 23 24 L: Show License 25 make license USE_GNU_MAKE=y
Note:
See TracChangeset
for help on using the changeset viewer.