Changeset 189


Ignore:
Timestamp:
Nov 7, 2017, 7:12:58 AM (8 years ago)
Author:
Ben Rietbroek
Message:

Updated information on building AiR-BOOT [v1.1.1-testing]

Keep it small and simple at the master level.
More detailed build information will later become available from the
'bootcode' directory.

CAUTION:
This is a testbuild !
AirBoot uses the BIOS to access disks and a small coding error can trash
partition tables or other vital disk structures. You are advised to make
backups of TRACK0 and EBRs before using this testbuild. More info at:
https://rousseaux.github.io/netlabs.air-boot/pdf/AirBoot-v1.1.0-manual.pdf

Location:
trunk
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/BUILD.NFO

    r54 r189  
    11===============================================================================
    2  BUILD.NFO -- Information on building AiR-BOOT v1.1.0
     2Information on building AiR-BOOT                                     [20170413]
    33===============================================================================
    44
    5 Building AiR-BOOT and the support tools has been completely revamped
    6 in this version. The code has been "de-tasmized" so it can now also
    7 be assembled with JWasm, which is the preferred assembler as of this version.
    85
    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.
     6This is the Master Build Directory
     7----------------------------------
     8By default, it builds a RELEASE version for ALL languages and components,
     9which is probably *not* what you want if you only want to _fiddle_ with
     10the beast.
    5611
    5712
    58 Rousseau.
     13Fiddling
     14--------
     15Fiddling can be done in the 'bootcode' directory.
     16Do a 'make dev-info' in 'bootcode' to learn more.
     17-- or --
     18Use File Commander and press F2 which will present a nice Build Menu.
     19
     20
     21A RELEASE Version
     22-----------------
     23If you _do_ build a RELEASE and *distribute* it, you are obliged to honor the
     24GPL and thus also make available the sources from which the release was built.
     25Furthermore, you are obliged to use *your* VENDOR and MACHINE information
     26for the BLDLEVEL information.
     27
     28
     29The '_build.cmd' script
     30-----------------------
     31Builds the whole shebang.
     32Stuff is put in the 'release' directoy.
     33
     34
     35The '_package.cmd' script
     36-------------------------
     37Creates a zip-file containing all the RELEASE files.
     38
     39
     40The '_clean.cmd' script
     41-----------------------
     42Yep, you guessed it...
     43
     44
     45File Commander
     46--------------
     47The Swiss Army Knife used to provide Build Menus.
     48Just press F2 here for the Master Build Menu,
     49-- or --
     50go to the 'bootcode' directory and press F2 for the Development Build Menu.
     51
     52
     53
     54Ben Rietbroek,
     55  AiR-BOOT maintainer.
  • trunk/Makefile

    r185 r189  
    134134
    135135
     136
     137# -----------------------------------------------------------------------------
     138# SHOW MASTER BUILD INFORMATION
     139# -----------------------------------------------------------------------------
     140info: .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# -----------------------------------------------------------------------------
     157license: .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# -----------------------------------------------------------------------------
     174package: .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
    136187# -----------------------------------------------------------------------------
    137188# 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  
    2929        $(info )
    3030        $(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
    3432        @echo
    3533
     
    4442        wmake -h
    4543
     44# Create package
     45package:
     46        $(info )
     47        $(info [$@])
     48        @echo
     49        @echo "*** Packaging is not implemented yet ***"
     50        @echo
     51
    4652# Cleanup the generated files
    4753clean:
     
    5157        wmake -h clean
    5258
    53 
     59# Show license information
     60license:
     61        $(info )
     62        $(info [$@])
     63        @less COPYING
     64        @echo
    5465
    5566#
  • trunk/fc.mnu

    r188 r189  
    1616C:      Clean
    1717        wmake -h clean
     18
     19-:      -------------
     20
     21L:      Show License
     22        wmake -h license
  • trunk/fcl.mnu

    r188 r189  
    2121S:      Git Status
    2222        git status
     23
     24L:      Show License
     25        make license USE_GNU_MAKE=y
Note: See TracChangeset for help on using the changeset viewer.