Changeset 63
- Timestamp:
- Oct 9, 2016, 10:53:41 PM (9 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 21 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/.gitignore
r61 r63 11 11 # Ignore Geany Project Files 12 12 /*.geany 13 14 # Ignore prepared commit message 15 /commit.msg 16 17 # Ignore scratch files and directories 18 ... -
trunk/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include include/makefrwd.mif -
trunk/Makefile
r60 r63 1 1 ############################################################################### 2 # Makefile :: Builds complete AiR-BOOT; all supported Languages and Platforms # 2 # Makefile :: Builds complete AiR-BOOT -- all platforms and languages (WMake) # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This is the Master Makefile and it builds the whole AiR-BOOT she-bang: # 6 # - The AiR-BOOT Loader Code for all supported languages. # 7 # - The MBR Protection Image that get's embedded in the loader. # 8 # - The 'fixcode' program that embeds the MBR Protection Image. # 9 # - The Installers for all supported platforms. # 10 # - The 'set(a)boot' program for all supported platforms. (OS/2 only) # 11 # # 12 # Note: # 13 # AiR-BOOT and it's helpers are relatively small to build. # 14 # So, although Makefiles are being used to build the lot, there's no explicit # 15 # separation between assembling/compiling from source or just only linking. # 16 # In fact, because of multiple languages for the Loader and cross-platform # 17 # support for the Helpers, any target will almost always be built from source # 18 # everytime. # 19 # # 20 # Also: # 21 # While WMake does it's job, running it on Linux takes a bit of extra effort # 22 # with regard to case sensitivity, directory separators, escape characters # 23 # and other platform differences. # 24 # This is handled in makefile.mif. # 25 # # 3 26 ############################################################################### 4 # rousseau@ecomstation.com 5 # 6 7 # This is the Master Makefile and it builds the whole AiR-BOOT she-bang: 8 # - The AiR-BOOT Loader Code for all supported languages. 9 # - The MBR Protection Image that get's embedded in the loader. 10 # - The 'fixcode' program that embeds the MBR Protection Image. 11 # - The Installers for all supported platforms. 12 # - The 'set(a)boot' program for all supported platforms. (currently only OS/2) 13 14 15 # Note: 16 # AiR-BOOT and it's helpers are relatively small to build. 17 # So, although Makefiles are being used to build the lot, there is no explicit 18 # separation between assembling/compiling from source or just only linking. 19 # In fact, because of multiple languages for the Loader and cross-platform 20 # support for the Helpers, any target will almost always be built from source 21 # everytime. 22 23 # Also: 24 # While WMake does it's job, running it on Linux requires a bit of extra effort 25 # with regard to case sensitivity, directory separators, escape characters 26 # and other platform differences. 27 # This is handled in makefile.mif. 28 29 30 31 # DEFINITIONS AND STUFF 27 28 29 30 # DEFINITIONS AND STUFF 32 31 # _____________________________________________________________________________ 33 32 … … 45 44 # Include a Master Makefile with several cross-platform definitions and macros. 46 45 # This is used to compensate for the differences between the target platforms. 47 !include 46 !include include/makefile.mif 48 47 49 48 … … 55 54 # The order of these Build Directories matters ! 56 55 # 57 # - mbr-prot 58 # - internal 59 # - bootcode 60 # - install/c 61 # - setaboot 56 # - mbr-prot ; MBR Protection Image later to be embedded. (mbr-prot) 57 # - internal ; Helper program to embed the MBR PI. (fixboot[d][2][w][l]) 58 # - bootcode ; AiR-BOOT Boot Manager itself. (airboot.bin) 59 # - install/c ; Installer for multiple platforms. (install[d][2][w][l]) 60 # - setaboot ; The AiR-BOOT setboot replacement for OS/2. (setaboot) 62 61 # 63 62 COMPONENTS=& 64 65 66 67 68 63 bootcode$(DS)mbr-prot& 64 tools$(DS)internal& 65 bootcode& 66 install$(DS)c& 67 tools$(DS)os2$(DS)setaboot& 69 68 70 69 … … 74 73 # and the OS/2 setboot replacement (setaboot). 75 74 COMPONENTS2DIST=& 76 77 78 79 80 81 82 83 84 # 75 bootcode& 76 install$(DS)c& 77 tools$(DS)os2$(DS)setaboot& 78 79 80 81 82 83 # MAIN ACTIONS 85 84 # _____________________________________________________________________________ 86 85 … … 92 91 # Using wmake build would be equivalent. 93 92 # ----------------------------------------------------------------------------- 94 all: 93 all: .SYMBOLIC Makefile.bu 95 94 @%MAKE build 96 95 … … 106 105 # when parsing the Makefile. It needs to be a command related to the target. 107 106 # ----------------------------------------------------------------------------- 108 build: 107 build: .SYMBOLIC 109 108 @SET ACTION=BUILD 110 109 @for %%i in ($(COMPONENTS)) do @$(MAKE) -h %%i … … 138 137 # distribution directory. 139 138 # ----------------------------------------------------------------------------- 140 dist: 139 dist: .SYMBOLIC 141 140 @SET ACTION=DIST 142 141 @for %%i in ($(COMPONENTS2DIST)) do @$(MAKE) -h %%i … … 154 153 # when parsing the Makefile. It needs to be a command related to the target. 155 154 # ----------------------------------------------------------------------------- 156 clean: 155 clean: .SYMBOLIC 157 156 @cd release 158 157 @$(MAKE) -h clean … … 169 168 # SHOW HELP ON USING THIS MAKEFILE 170 169 # ----------------------------------------------------------------------------- 171 help: 172 @echo. 173 @echo 174 @echo wmaketo build all targets and all languages175 @echo wmake devto build a develoopment target176 @echo wmake [LANG]to build EN,DE,NL,FR,IT or RU versions177 @echo wmake listto show the list of buildable targets178 @echo wmake cleanto remove almost all generated files179 @echo wmake rmbinto remove all residual BIN files180 @echo wmake rebuildto rebuild all targets181 @echo wmake distto populate the dist directories182 @echo wmake help forthis information170 help: .SYMBOLIC 171 @echo. 172 @echo The following actions are available: 173 @echo wmake to build all targets and all languages 174 @echo wmake dev to build a develoopment target 175 @echo wmake [LANG] to build EN,DE,NL,FR,IT or RU versions 176 @echo wmake list to show the list of buildable targets 177 @echo wmake clean to remove almost all generated files 178 @echo wmake rmbin to remove all residual BIN files 179 @echo wmake rebuild to rebuild all targets 180 @echo wmake dist to populate the dist directories 181 @echo wmake help to show this information 183 182 @echo. 184 183 … … 191 190 # This also forces a rebuild of all targets. 192 191 # ----------------------------------------------------------------------------- 193 Makefile.bu: 192 Makefile.bu: Makefile 194 193 @echo. 195 194 @echo Makefile modified, forcing rebuild of all targets ! … … 200 199 201 200 202 # 201 # GENERIC HANDLERS 203 202 # _____________________________________________________________________________ 204 203 … … 211 210 # It functions like a "switch". 212 211 # ----------------------------------------------------------------------------- 213 $(COMPONENTS): 212 $(COMPONENTS): .SYMBOLIC 214 213 @echo. 215 214 @echo. -
trunk/README.md
r62 r63 39 39 40 40 After the v1.1.1-testing traject, <b>AirBoot v1.1.2</b> will be released.<br> 41 42 The <b>AirBoot Project</b> is part of <b>[Bens Bits](http://www.bensbits.nl)</b> OS/2 Development.<br> -
trunk/bootcode/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include ../include/makefrwd.mif -
trunk/bootcode/Makefile
r60 r63 1 1 ############################################################################### 2 # Makefile :: Builds the 'airboot.bin' 16-bits RAW Loader Image # 2 # Makefile :: Builds the 'airboot.bin' 16-bits RAW Loader Image (WMake) # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This Makefile builds the 'airboot.bin' program. # 6 # This is the actual AiR-BOOT that you see when starting your system. # 7 # It operates at the BIOS level and thus without any operating-system # 8 # being active. It's first 512 bytes get loaded by the BIOS at address # 9 # 0000:7C00 and then control is transferred. This first 512 bytes constitute # 10 # the AiR-BOOT MBR-code, and this code loads the rest of the AiR-BOOT image. # 11 # # 12 # AiR-BOOT, as designed by Martin Kiewitz, boosts a lot of powerful features # 13 # in a tiny space (just over 31kB). One of this features is detecting # 14 # possible virusses. This detection code is "hooked" into the interrupt-chain # 15 # and therefore has it's own relocations which are not related to the main # 16 # loader image. For this reason, when the main source 'air-boot.asm' is # 17 # assembled to a RAW image, this virus-protection code is "embedded" as the # 18 # last step. You could compare this to binding a resource-file to an OS/2 # 19 # executable. # 20 # # 21 # When AiR-BOOT gets control, this virus-protection code is copied elsewhere # 22 # and hooked into the interrupt-system. So it functions kinda like a DOS TSR. # 23 # # 24 # This embedding proccess consists of three parts: # 25 # - Assembling the virus-detection code, 'mbrprot.asm', which always results # 26 # in a 1024 bytes image. # 27 # - Compiling the 'fixcode' program that does the actual embedding. # 28 # - Running the 'fixcode' program against 'air-boot.com' creating the # 29 # final 'airboot.bin' image. # 30 # # 31 # After these operations have been completed, the 'airboot.bin' image # 32 # is ready to be installed. # 33 # # 3 34 ############################################################################### 4 # rousseau@ecomstation.com 5 6 # 7 # This Makefile builds the 'airboot.bin' program. 8 # This is the actual AiR-BOOT that you see when starting your system. 9 # It operates at the BIOS level and thus without any operating-system 10 # being active. It's first 512 bytes get loaded by the BIOS at address 11 # 0000:7C00 and then control is transferred. This first 512 bytes constitute 12 # the AiR-BOOT MBR-code, and this code loads the rest of the AiR-BOOT image. 13 # 14 15 # 16 # AiR-BOOT, as designed by Martin Kiewitz, boosts a lot of powerful features 17 # in a tiny space (just over 31kB). One of this features is detecting 18 # possible virusses. This detection code is "hooked" into the interrupt-chain 19 # and therefore has it's own relocations which are not related to the main 20 # loader image. For this reason, when the main source 'air-boot.asm' is 21 # assembled to a RAW image, this virus-protection code is "embedded" as the 22 # last step. You could compare this to binding a resource-file to an OS/2 23 # executable. 24 # 25 # When AiR-BOOT gets control, this virus-protection code is copied elsewhere 26 # and hooked into the interrupt-system. So it functions kinda like a DOS TSR. 27 # 28 29 # 30 # This embedding proccess consists of three parts: 31 # - Assembling the virus-detection code, 'mbrprot.asm', which always results 32 # in a 1024 bytes image. 33 # - Compiling the 'fixcode' program that does the actual embedding. 34 # - Running the 'fixcode' program against 'air-boot.com' creating the 35 # final 'airboot.bin' image. 36 # 37 38 # 39 # After these operations have been completed, the 'airboot.bin' image 40 # is ready to be installed. 41 # 42 43 44 45 46 # DEFINITIONS AND STUFF 35 36 37 38 # DEFINITIONS AND STUFF 47 39 # _____________________________________________________________________________ 48 40 … … 50 42 # Include a Master Makefile with several cross-platform definitions and macros. 51 43 # This is used to compensate for the differences between the target platforms. 52 !include 44 !include ../include/makefile.mif 53 45 54 46 # On my system, JWasm takes forever to generate a list-file when on a network … … 56 48 # makes no difference. If you experience the same, then put a '#' in front of 57 49 # the variable below to keep JWasm from generating a list-file. 58 JWASM_LIST_FILE=-Fl=$^&.lst50 #~ JWASM_LIST_FILE=-Fl=$^&.lst 59 51 60 52 # Specifies the level of debugging. … … 136 128 137 129 # If no assembler is specified then default to JWasm. 138 !ifndef 130 !ifndef ASM 139 131 ASM=jwasm 140 132 !endif … … 144 136 # set the XMS memory limit to 0. 145 137 # JWasmR will probably run out of memory and cannot be used. 146 !ifdef 138 !ifdef __MSDOS__ 147 139 ASM=tasm 148 140 !endif … … 151 143 # So we override to jwasm when a non-jwasm assembler is specified and 152 144 # we are building on Linux. 153 !ifdef 145 !ifdef __LINUX__ 154 146 !if "$(ASM)"=="masm" | "$(ASM)"=="tasm" | "$(ASM)"=="alp" 155 147 ASM=jwasm … … 163 155 # JWASM 164 156 !if "$(ASM)"=="jwasm" 165 # -Cp 166 # -zcw 167 # -Zm 168 # -Zd 169 # -Zi 157 # -Cp = case sensitive symbols 158 # -zcw = no _ prefix on symbols (C model) 159 # -Zm = Masm51 compat -- don't use ! (Will generate incorrect offsets) 160 # -Zd = line number debug info 161 # -Zi = symbolic debug info 170 162 ASM_FLAGS_D0=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DJWASM -q -W0 -Cp -zcw -Fo$^. -Sa $(JWASM_LIST_FILE) -Fw$^&.err 171 163 ASM_FLAGS_D1=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DJWASM -q -W4 -Cp -zcw -Zd -Zi -Fo$^. -Sa $(JWASM_LIST_FILE) -Fw$^&.err 172 164 ASM_FLAGS_D2=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DJWASM -q -W4 -Cp -zcw -Zd -Zi -Fo$^. -Sa $(JWASM_LIST_FILE) -Fw$^&.err 165 # Workaround for JWasm list-file generation. 166 # Generate the list-file on a local drive so JWasm doen't take forever. 167 # This is done in the recipe. 168 JWASM_LIST_FILE_LOC=$(%TEMP)\ 169 JWASM_LIST_FILE=-Fl=$(JWASM_LIST_FILE_LOC)$^&.lst 173 170 174 171 # WASM 175 172 !elseif "$(ASM)"=="wasm" 176 # -w0 173 # -w0 = suppress warnings (wasm is nice to check for missing size qualifiers) 177 174 ASM_FLAGS_D0=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dWASM -zq -w4 -fo=$^. -fr=$^&.err 178 175 ASM_FLAGS_D1=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dWASM -zq -w4 -d1 -fo=$^. -fr=$^&.err … … 181 178 # TASM 182 179 !elseif "$(ASM)"=="tasm" 183 # -ml 180 # -ml = case sensitive symbols 184 181 ASM_FLAGS_D0=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dTASM -t -ml -m9 -l 185 182 ASM_FLAGS_D1=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dTASM -t -ml -m9 -z -zi -c -la … … 242 239 243 240 244 # 241 # BEFORE AND AFTER TARGETS 245 242 # _____________________________________________________________________________ 246 243 … … 257 254 # ----------------------------------------------------------------------------- 258 255 .AFTER 259 # 260 !ifdef 256 # @echo == AFTER == 257 !ifdef __MSDOS__ 261 258 @echo $(WARN_DOS_BLD_ENV) 262 259 !endif … … 268 265 269 266 270 # 267 # PSEUDO TARGETS FOR PREPARATION 271 268 # _____________________________________________________________________________ 272 269 … … 281 278 # the intermediate files intact. 282 279 # ----------------------------------------------------------------------------- 283 all: 280 all: .SYMBOLIC Makefile.bu $(BLD_LANGUAGES) footer 284 281 # @echo ALL !! 285 282 # @#MAKE $(BLD_LANGUAGES) … … 296 293 # This is a 'pre-action' before assembling the AiR-BOOT.ASM source. 297 294 # ----------------------------------------------------------------------------- 298 langsetup: 295 langsetup: .SYMBOLIC .MULTIPLE 299 296 # Default to development language is none defined. 300 297 !if "$(%BLD_LANG)"=="" … … 305 302 # Note that this target is not used as a 'dependency' but 'called' explicitly 306 303 # by the $(BLD_LANGUAGES) target. 307 @echo include text/$(%BLD_LANG)/mbr.asm >text$(DS)txtmbr.asm308 @echo include text/$(%BLD_LANG)/menus.asm 309 @echo include text/$(%BLD_LANG)/other.asm 304 @echo include text/$(%BLD_LANG)/mbr.asm> text$(DS)txtmbr.asm 305 @echo include text/$(%BLD_LANG)/menus.asm> text$(DS)txtmenus.asm 306 @echo include text/$(%BLD_LANG)/other.asm> text$(DS)txtother.asm 310 307 311 308 … … 318 315 # depends on it. 319 316 # ----------------------------------------------------------------------------- 320 $(BLD_LANGUAGES): 317 $(BLD_LANGUAGES): .SYMBOLIC 321 318 @SET BLD_LANG=$@ 322 319 @%MAKE header … … 330 327 # @echo $(%AB_DEV) 331 328 # Do not rename for dev-build 332 !if 329 !if "$(%AB_DEV)"!="TRUE" 333 330 #~ !ifndef %AB_DEV 334 331 @echo. … … 353 350 # SHOW THE HEADER FOR THE TARGET BEING BUILT 354 351 # ----------------------------------------------------------------------------- 355 header: 352 header: .SYMBOLIC .MULTIPLE 356 353 @echo. 357 354 @echo ===================================================================== … … 364 361 # SHOW THE FOOTER 365 362 # ----------------------------------------------------------------------------- 366 footer: 363 footer: .SYMBOLIC 367 364 # $(RM) $(TARGET) 368 365 @echo All targets up to date ! … … 378 375 # using the new level. 379 376 # ----------------------------------------------------------------------------- 380 Makefile.bu: 377 Makefile.bu: Makefile 381 378 @echo. 382 379 @echo Makefile modified, forcing rebuild of all targets ! … … 421 418 # It will be embedded into the final AiR-BOOT binary. (airboot.bin) 422 419 # 423 mbrprot: 420 mbrprot: .symbolic 424 421 @echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 425 422 @echo @ Building MBR Protection Image and FixCode first @ … … 434 431 # FixCode embeds the MBR Protection Image into the final AiR-BOOT binary. 435 432 # 436 fixcode: 433 fixcode: .procedure 437 434 cd ..$(DS)tools$(DS)internal 438 435 $(MAKE) -h 439 436 cd ..$(DS)..$(DS)bootcode 440 437 441 442 # MAIN TARGETS 438 # 439 # Installer installs the loader to disk 440 # 441 installer2: .procedure 442 cd ..$(DS)install$(DS)c 443 $(MAKE) -h airboot2.exe 444 cd ..$(DS)..$(DS)bootcode 445 446 # MAIN TARGETS 443 447 # _____________________________________________________________________________ 444 448 … … 454 458 # with NDISASM for cross reference. 455 459 # ----------------------------------------------------------------------------- 456 $(TARGET): 460 $(TARGET): .MULTIPLE Makefile.bu $(BASENAME).com 457 461 @echo $^.: [Final 16-bits raw Binary Image] 458 !ifdef 462 !ifdef __MSDOS__ 459 463 ..$(DS)tools$(DS)internal$(DS)fixcoded.exe 460 464 !endif 461 !ifdef 465 !ifdef __OS2__ 462 466 ..$(DS)tools$(DS)internal$(DS)fixcode2.exe 463 467 !endif 464 !ifdef 468 !ifdef __NT__ 465 469 ..$(DS)tools$(DS)internal$(DS)fixcodew.exe 466 470 !endif 467 !ifdef 471 !ifdef __LINUX__ 468 472 # ..$(DS)tools$(DS)internal$(DS)fixcode 469 473 @chmod +x ..$(DS)tools$(DS)internal$(DS)fixcodel.elf … … 472 476 !endif 473 477 @echo. 474 !ifndef 478 !ifndef __MSDOS__ 475 479 ndisasm $(BASENAME).com > $(BASENAME).com.nda 476 480 ndisasm $(TARGET) > $(TARGET).nda 477 481 !endif 478 482 @echo. 479 @if exist $^. @echo 483 @if exist $^. @echo ** $^. $(MSG_SUCCESS) - [$(%BLD_LANG) version] ** 480 484 481 485 … … 491 495 # So we use DOS COM linkage to proteced us from overflow incorrect fixups. 492 496 # ----------------------------------------------------------------------------- 493 $(BASENAME).com: 494 @echo $^.: 497 $(BASENAME).com: .MULTIPLE $(BASENAME).obj 498 @echo $^.: [16-bits non-100h Intermediate Image] 495 499 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys dos com 496 500 # $(LNK) $(LNK_FLAGS) file $^&.obj name $^. form raw … … 505 509 # - once as a disassembly with opcodes in it 506 510 # ----------------------------------------------------------------------------- 507 $(BASENAME).obj: 508 @echo $^.: 511 $(BASENAME).obj: .MULTIPLE $(BASENAME).asm 512 @echo $^.: [16-bits OMF Object File] 509 513 $(ASM) $(ASM_FLAGS) $(BASENAME).asm 510 !ifndef __MSDOS__ 514 !if "$(%AB_DEV)"=="TRUE" 515 @copy ..\install\c\airboot2.exe . 516 !endif 517 !if "$(ASM)"=="jwasm" 518 # Workaround for generating JWasm list-files. 519 # Command 'move' does not work across drives. 520 # So we do a 'copy' then 'del' instead. 521 @if not exist $^&.lst copy $(JWASM_LIST_FILE_LOC)$^&.lst . 522 @if exist $(JWASM_LIST_FILE_LOC)$^&.lst del $(JWASM_LIST_FILE_LOC)$^&.lst 523 !endif 524 !ifndef __MSDOS__ 511 525 @wdis -fi $^. > $^..wda 512 526 !endif … … 515 529 516 530 517 # 531 # MAIN ACTIONS 518 532 # _____________________________________________________________________________ 519 533 … … 527 541 # This is the main target when developing. 528 542 # ----------------------------------------------------------------------------- 529 dev: 543 dev: .SYMBOLIC 530 544 @%MAKE rmbin 531 545 @%MAKE mbrprot 532 546 @%MAKE fixcode 547 @%MAKE installer2 533 548 SET AB_DEV=TRUE 534 549 # @%MAKE $(DEV_BLD_LANG) … … 538 553 @$(MAKE) -h $(DEV_BLD_LANG) 539 554 # Display the BLDLEVEL information if we are building on OS/2. 540 !ifdef 555 !ifdef __OS2__ 541 556 @echo. 542 557 @bldlevel $(TARGET) … … 546 561 @type airboot.md5 547 562 !endif 548 !ifdef 563 !ifdef __LINUX__ 549 564 @echo. 550 565 @if exist air-boot.lst @grep ^zzz_code_space air-boot.lst … … 559 574 # REBUILD ALL TARGETS 560 575 # ----------------------------------------------------------------------------- 561 rebuild: 576 rebuild: .SYMBOLIC 562 577 @%MAKE clean 563 578 @%MAKE all … … 567 582 # CLEANUP (intermediate files) 568 583 # ----------------------------------------------------------------------------- 569 clean: 584 clean: .SYMBOLIC .MULTIPLE 570 585 # @echo CLEANING UP 571 586 @for %%i in ($(TARGET)) do @if exist %%i $(RM) %%i 572 587 @if exist *.com $(RM) *.com 573 @if exist *. com$(RM) *.exe588 @if exist *.exe $(RM) *.exe 574 589 @if exist *.obj $(RM) *.obj 575 590 @if exist *.wda $(RM) *.wda … … 584 599 # REMOVE ALL RESIDUAL .bin FILES (old builds) 585 600 # ----------------------------------------------------------------------------- 586 rmbin: 601 rmbin: .SYMBOLIC 587 602 @if exist *.bin $(RM) *.bin 588 603 … … 594 609 # Then it installs the English version to 'release' as 'airboot.bin'. 595 610 # ----------------------------------------------------------------------------- 596 dist: 611 dist: .SYMBOLIC 597 612 @if exist *.bin $(CP) *.bin ..$(DS)release$(DS)bootcode 598 613 @if exist airbt-en.bin $(CP) airbt-en.bin ..$(DS)release$(DS)dos$(DS)$(TARGET) … … 605 620 # SHOW HELP ON USING THIS MAKEFILE 606 621 # ----------------------------------------------------------------------------- 607 help: 608 @echo. 609 @echo 610 @echo wmaketo build all targets and all languages611 @echo wmake devto build a develoopment target612 @echo wmake [LANG]to build EN,DE,NL,FR,IT or RU versions613 @echo wmake listto show the list of buildable targets614 @echo wmake cleanto remove almost all generated files615 @echo wmake rmbinto remove all residual 'bin' files616 @echo wmake rebuildto rebuild all targets617 @echo wmake distto populate the dist directories618 @echo wmake help forthis information622 help: .SYMBOLIC 623 @echo. 624 @echo The following actions are available: 625 @echo wmake to build all targets and all languages 626 @echo wmake dev to build a develoopment target 627 @echo wmake [LANG] to build EN,DE,NL,FR,IT or RU versions 628 @echo wmake list to show the list of buildable targets 629 @echo wmake clean to remove almost all generated files 630 @echo wmake rmbin to remove all residual 'bin' files 631 @echo wmake rebuild to rebuild all targets 632 @echo wmake dist to populate the dist directories 633 @echo wmake help to show this information 619 634 @echo. 620 635 … … 623 638 # SHOW LIST OF BUILDABLE TARGETS 624 639 # ----------------------------------------------------------------------------- 625 show: 626 @echo. 627 @echo 640 show: .SYMBOLIC 641 @echo. 642 @echo The following [case sensitive] targets can be built: 628 643 @for %%i in ($(TARGET)) do @echo %%i 629 644 @echo. 630 645 # Alias for show 631 list: 646 list: .SYMBOLIC 632 647 @%MAKE show 633 648 … … 638 653 .ERROR 639 654 @echo. 640 @echo 641 @echo 642 @echo 643 @echo 644 @echo 645 @echo 646 @echo 655 @echo Oops! 656 @echo Some error occured in this build session. 657 @echo If you see stuff about "positive count" 658 @echo you have a section overlap. 659 @echo Check the z_* values at the end of the list-file 660 @echo and look for a negative gap. 661 @echo Type 'wmake help' in the target dir for a list of actions. 647 662 # @%MAKE help 648 663 @echo. 649 664 650 651 # -----------------------------------------------------------------------------652 # How the hell can we use more than one command in the for-loop ??653 # -----------------------------------------------------------------------------654 ttt: .SYMBOLIC655 # This does not work...656 # @for %%i in ($(BLD_LANGUAGES)) do %%i=X; $%WMAKE; -
trunk/bootcode/airboot.md5
r60 r63 1 92fc6c0fd19a5e86b7359da216663576airboot.bin1 ceb2087429349e3c619e30c238982c65 *airboot.bin -
trunk/bootcode/bldlevel.inc
r57 r63 41 41 42 42 ; Vendor 43 BLDLVL_VENDOR EQU 'KIEWITZ' 43 ;~ BLDLVL_VENDOR TEXTEQU <'KIEWITZ'> 44 ;~ BLDLVL_VENDOR TEXTEQU <'RDPe'> 45 BLDLVL_VENDOR TEXTEQU <'*UNKNOWN*'> 44 46 ; Version 45 47 BLDLVL_MAJOR_VERSION EQU AB_MAJOR_VERSION + '0' … … 55 57 BLDLVL_SECONDS EQU (AB_SECONDS SHR 4)+'0',(AB_SECONDS AND 0Fh)+'0' 56 58 ; Build machine 59 ;~ BLDLVL_MACHINE EQU 'OS2BLDBOX' ; 16 chars max. 57 60 BLDLVL_MACHINE EQU '*UNKNOWN*' ; 16 chars max. 58 61 ; Build language -
trunk/bootcode/mbr-prot/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include ../../include/makefrwd.mif -
trunk/bootcode/mbr-prot/Makefile
r60 r63 1 1 ############################################################################### 2 2 # Makefile :: Builds the 'mbr-prot.bin' 16-bits RAW Protection Image # 3 # ##############################################################################4 # rousseau@ecomstation.com5 6 # 7 # Th is Makefile builds the 'mbr_prot.bin' image.8 # This image is embedded in the 'airboot.bin' image to provide virus protection.9 # The 'fixcode' program embeds this image in 'airboot.bin'.10 # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This Makefile builds the 'mbr_prot.bin' image. # 6 # This image is embedded in 'airboot.bin' to provide virus protection. # 7 # The 'fixcode' program embeds this image in 'airboot.bin'. # 8 # # 9 ############################################################################### 10 11 11 12 12 … … 15 15 # This is used to compensate for the differences between the target platforms. 16 16 # 17 !include 17 !include ../../include/makefile.mif 18 18 19 19 # … … 69 69 # we are building on Linux. 70 70 # 71 !ifdef 71 !ifdef __LINUX__ 72 72 !if "$(ASM)"=="masm" | "$(ASM)"=="tasm" | "$(ASM)"=="alp" 73 73 ASM=jwasm … … 76 76 77 77 !if "$(ASM)"=="jwasm" 78 # -Cp 79 # -zcw 78 # -Cp = case sensitive symbols 79 # -zcw = no _ prefix on symbols (C model) 80 80 ASM_FLAGS_D0=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DJWASM -q -Cp -zcw -Fo$^&.obj -Sa -Fl=$^&.lst -Fw$^&.err 81 81 ASM_FLAGS_D1=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DJWASM -q -Cp -zcw -Zd -Zi -Fo$^&.obj -Sa -Fl=$^&.lst -Fw$^&.err … … 90 90 ASM_FLAGS_D2=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dWASM -zq -d1 -fo=$^&.obj -fr=$^&.err 91 91 !elseif "$(ASM)"=="tasm" 92 # -ml 92 # -ml = case sensitive symbols 93 93 ASM_FLAGS_D0=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dTASM -t -ml -m9 -l 94 94 ASM_FLAGS_D1=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dTASM -t -ml -m9 -z -zi -c -la … … 124 124 .AFTER 125 125 # @echo == AFTER == 126 !ifdef 126 !ifdef __MSDOS__ 127 127 @echo $(WARN_DOS_BLD_ENV) 128 128 !endif … … 133 133 # If this Makefile was modified, all targets are forcefully rebuilt. 134 134 # 135 all: 135 all: .SYMBOLIC Makefile.bu header $(TARGET) footer 136 136 137 137 … … 139 139 # Show the header. 140 140 # 141 header: 141 header: .SYMBOLIC 142 142 @echo. 143 143 @echo ===================================================================== … … 150 150 # Show the footer. 151 151 # 152 footer: 152 footer: .SYMBOLIC 153 153 # $(RM) $(TARGET) 154 154 @echo All targets up to date ! … … 162 162 # using the new level. 163 163 # 164 Makefile.bu: 164 Makefile.bu: Makefile 165 165 @echo. 166 166 @echo Makefile modified, forcing rebuild of all targets ! … … 191 191 # 16-bits RAW :: MBR virus protection to be embedded in the 'airboot.bin' image 192 192 ############################################################################### 193 $(TARGET): 194 @echo TARGET: $^. 193 $(TARGET): $(BASENAME).asm 194 @echo TARGET: $^. [DOS 16-bits Raw Image] 195 195 $(ASM) $(ASM_FLAGS) $(BASENAME).asm 196 196 @wdis -fi $^&.obj > $^&.wda 197 197 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys dos com 198 198 # $(LNK) $(LNK_FLAGS) file $^&.obj name $^. form raw 199 @if exist $^. @echo 199 @if exist $^. @echo $^. $(MSG_SUCCESS) 200 200 @ndisasm -k9,0 $^. > $^&.nda 201 201 # @echo. 202 202 203 #$(BASENAME).obj: 204 # @echo. 205 # @echo TARGET: $^. 203 #$(BASENAME).obj: $(BASENAME).asm 204 # @echo. 205 # @echo TARGET: $^. [DOS 16-bits Raw Image] 206 206 # $(ASM) $(ASM_FLAGS) $(BASENAME).asm 207 207 # @wdis -fi $^. > $^&.wda … … 217 217 # Rebuild all targets. 218 218 # 219 rebuild: 219 rebuild: .SYMBOLIC 220 220 @%MAKE clean 221 221 @%MAKE all … … 224 224 # Remove all generated files. 225 225 # 226 clean: 226 clean: .SYMBOLIC 227 227 # @echo CLEANING UP 228 228 # @for %%i in ($(TARGET)) do @if exist %%i $(RM) %%i … … 240 240 # Remove all residual .BIN files. 241 241 # 242 rmbin: 242 rmbin: .SYMBOLIC 243 243 @if exist *.bin $(RM) *.bin 244 244 … … 247 247 # Help on using this Makefile. 248 248 # 249 help: 250 @echo. 251 @echo 252 @echo wmaketo build all targets and all languages253 @echo wmake listto show the list of buildable targets254 @echo wmake cleanto remove almost all generated files255 @echo wmake rmbinto remove all residual BIN files256 @echo wmake rebuildto rebuild all targets257 @echo wmake help forthis information249 help: .SYMBOLIC 250 @echo. 251 @echo The following actions are available: 252 @echo wmake to build all targets and all languages 253 @echo wmake list to show the list of buildable targets 254 @echo wmake clean to remove almost all generated files 255 @echo wmake rmbin to remove all residual BIN files 256 @echo wmake rebuild to rebuild all targets 257 @echo wmake help to show this information 258 258 @echo. 259 259 … … 263 263 show: .SYMBOLIC 264 264 @echo. 265 @echo 266 @for %%i in ($(TARGET)) do @echo 265 @echo The following [case sensitive] targets can be built: 266 @for %%i in ($(TARGET)) do @echo %%i 267 267 @echo. 268 268 # Alias for show 269 list: 269 list: .SYMBOLIC 270 270 @%MAKE show 271 271 … … 275 275 .ERROR 276 276 @echo. 277 @echo 278 @echo 279 @echo 280 @echo 281 @echo 277 @echo Oops! 278 @echo Some error occured in this build session. 279 @echo If it's a linker problem, it could be 280 @echo the result of out-of-sync object files. 281 @echo Doing a wmake rebuild might solve the problem. 282 282 @%MAKE help 283 283 @echo. -
trunk/bootcode/regular/std_text.asm
r57 r63 55 55 db BLDLVL_MINOR_VERSION,' - (c) 1998-' 56 56 db BLDLVL_YEAR 57 ;~ db ' M. Kiewitz <<Release Candidate 4>> (bld: ' 58 db ' Martin Kiewitz, Dedicated to Gerd Kiewitz' 59 ;~ db BLDLVL_YEAR 60 ;~ db BLDLVL_MONTH 61 ;~ db BLDLVL_DAY,')' 57 ;~ db ' M. Kiewitz <<Release Candidate 4>> (bld: ' 58 db ' M. Kiewitz << Test Build >> (bld:' 59 ;~ db ' Martin Kiewitz, Dedicated to Gerd Kiewitz' 60 db BLDLVL_YEAR 61 db BLDLVL_MONTH 62 db BLDLVL_DAY,')' 62 63 db 0 63 64 -
trunk/bootcode/version.inc
r57 r63 32 32 AB_MAJOR_VERSION EQU 1 33 33 AB_MIDDLE_VERSION EQU 1 34 AB_MINOR_VERSION EQU 034 AB_MINOR_VERSION EQU 1 35 35 36 36 ; The Year, Month and Day in BCD so we can easily extract nibbles. 37 AB_YEAR EQU 201 3h38 AB_MONTH EQU 04h39 AB_DAY EQU 0 5h37 AB_YEAR EQU 2016h 38 AB_MONTH EQU 10h 39 AB_DAY EQU 09h 40 40 41 41 ; The Hours, Minutes and Seconds, again in BCD for easy manipulation. 42 AB_HOURS EQU 01h 43 AB_MINUTES EQU 01h 44 AB_SECONDS EQU 00h 42 ;~ AB_HOURS EQU 01h 43 ;~ AB_MINUTES EQU 01h 44 ;~ AB_SECONDS EQU 01h 45 AB_HOURS EQU 99h 46 AB_MINUTES EQU 99h 47 AB_SECONDS EQU 99h 45 48 46 49 ; The AiR-BOOT signature uses big-endian so we shuffle some bits around. -
trunk/install/c/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include ../../include/makefrwd.mif -
trunk/install/c/Makefile
r60 r63 1 1 ############################################################################### 2 # Makefile :: Builds the Installer for several platforms . [wmake] #3 # ##############################################################################4 # rousseau@ecomstation.com5 6 # 7 # This Makefile builds the Installer for DOS, Windows, OS/2 and Linux.8 # Like 'fixcode', each platform version has a letter appended it:9 # 'D' for DOS, 'W' for Windows, '2' for OS/2 and 'L' for Linux.10 # 2 # Makefile :: Builds the Installer for several platforms [WMake] # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This Makefile builds the Installer for DOS, Windows, OS/2 and Linux. # 6 # Like 'fixcode', each platform version has a letter appended it: # 7 # 'D' for DOS, 'W' for Windows, '2' for OS/2 and 'L' for Linux. # 8 # # 9 ############################################################################### 10 11 11 12 12 # … … 14 14 # This is used to compensate for the differences between the target platforms. 15 15 # 16 !include 16 !include ../../include/makefile.mif 17 17 18 18 … … 77 77 # we are building on Linux. 78 78 # 79 !ifdef 79 !ifdef __LINUX__ 80 80 !if "$(ASM)"=="masm" | "$(ASM)"=="tasm" | "$(ASM)"=="alp" 81 81 ASM=jwasm … … 84 84 85 85 !if "$(ASM)"=="jwasm" 86 # -Cp 87 # -zcw 86 # -Cp = case sensitive symbols 87 # -zcw = no _ prefix on symbols (C model) 88 88 ASM_FLAGS_D0=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Cp -Fo$^. -Fl=$^&.lst -Fw$^&.err 89 89 ASM_FLAGS_D1=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Zd -Zi -Fo$^. -Sa -Fl=$^&.lst -Fw$^&.err … … 140 140 LNK_FLAGS_D0=op q op v op map=$^&.map 141 141 #~ LNK_FLAGS_D1=op q op v d all & 142 143 142 #~ order clname CODE clname FAR_CONST clname FAR_DATA clnam BEGDATA clname DATA clname BSS clname STACK clname BLAP NOE & 143 #~ op map=$^&.MAP 144 144 LNK_FLAGS_D1=op q op v d all op map=$^&.map 145 145 LNK_FLAGS_D2=op q op v d all op map=$^&.map … … 158 158 .AFTER 159 159 # @echo == AFTER == 160 !ifdef 160 !ifdef __MSDOS__ 161 161 @echo $(WARN_DOS_BLD_ENV) 162 162 !endif … … 167 167 # If this Makefile was modified, all targets are forcefully rebuilt. 168 168 # 169 all: 169 all: .SYMBOLIC Makefile.bu header $(TARGETS) footer 170 170 171 171 … … 189 189 # Show the header. 190 190 # 191 header: 191 header: .SYMBOLIC 192 192 @echo. 193 193 @echo ===================================================================== … … 200 200 # Show the footer. 201 201 # 202 footer: 202 footer: .SYMBOLIC 203 203 @echo All targets up to date ! 204 204 @echo. … … 211 211 # using the new level. 212 212 # 213 Makefile.bu: 213 Makefile.bu: Makefile 214 214 @echo. 215 215 @echo Makefile modified, forcing rebuild of all targets ! … … 255 255 # DOS 16-bits (MZ) 256 256 ############################################################################### 257 $(MODULE)d.exe: 257 $(MODULE)d.exe: $(MODULE)d.obj 258 258 # @cat $^&.MD5 259 259 $(LNK) $(LNK_FLAGS) op stack=8192 file $^&.obj name $^. sys dos … … 261 261 # @cat $^&.md5 262 262 @wdump $^. > $^&.wdu 263 @if exist $^. @echo 263 @if exist $^. @echo $^. $(MSG_SUCCESS) 264 264 @echo. 265 265 #~ wstrip $^. 266 266 267 $(MODULE)d.obj: 267 $(MODULE)d.obj: $(BASENAME).c $(BASENAME).h 268 268 # @echo. 269 @echo TARGET: $^&.exe 269 @echo TARGET: $^&.exe [DOS 16-bits Executable] 270 270 $(CC16) $(CC16_FLAGS) -I$(%WATCOM)$(DS)h$(DS)os21x -bt=dos $(BASENAME).c 271 271 @wdis -fi $^. > $^&.wda … … 275 275 # NT 32-bits (PE) 276 276 ############################################################################### 277 $(MODULE)w.exe: 277 $(MODULE)w.exe: $(MODULE)w.obj 278 278 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys nt 279 279 @wdump $^. > $^&.wdu 280 @if exist $^. @echo 281 @echo. 282 283 $(MODULE)w.obj: 280 @if exist $^. @echo $^. $(MSG_SUCCESS) 281 @echo. 282 283 $(MODULE)w.obj: $(BASENAME).c $(BASENAME).h 284 284 # @echo. 285 @echo TARGET: $^&.exe 285 @echo TARGET: $^&.exe [NT 32-bits Executable] 286 286 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)nt -bt=nt $(BASENAME).c 287 287 @wdis -fi $^. > $^&.wda … … 291 291 # OS/2 32-bits (LX) 292 292 ############################################################################### 293 $(MODULE)2.exe: 293 $(MODULE)2.exe: $(MODULE)2.obj 294 294 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys os2v2 295 295 @wdump $^. > $^&.wdu 296 @if exist $^. @echo 296 @if exist $^. @echo $^. $(MSG_SUCCESS) 297 297 @echo. 298 298 #~ wstrip $^. 299 299 300 $(MODULE)2.obj: 300 $(MODULE)2.obj: $(BASENAME).c $(BASENAME).h 301 301 # @echo. 302 @echo TARGET: $^&.exe 302 @echo TARGET: $^&.exe [OS/2 32-bits Executable] 303 303 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)os2 -bt=os2 $(BASENAME).c 304 304 @wdis -fi $^. > $^&.wda … … 308 308 # Linux 32-bits (ELF) 309 309 ############################################################################### 310 $(MODULE)l.elf: 310 $(MODULE)l.elf: $(MODULE)l.obj 311 311 $(LNK) $(LNK_FLAGS) file $^&.obj name $^&.elf sys linux 312 312 @wdump $^. > $^&.wdu 313 313 # $(MV) $^&.elf $^. 314 @if exist $^. @echo 315 @echo. 316 317 $(MODULE)l.obj: 314 @if exist $^. @echo $^. $(MSG_SUCCESS) 315 @echo. 316 317 $(MODULE)l.obj: $(BASENAME).c $(BASENAME).h 318 318 # @echo. 319 @echo TARGET: $^&.elf 319 @echo TARGET: $^&.elf [Linux 32-bits Executable] 320 320 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)os2 -bt=linux $(BASENAME).c 321 321 @wdis -fi $^. > $^&.wda … … 337 337 # Then it installs the English version to 'releases' as 'airboot.bin'. 338 338 # ----------------------------------------------------------------------------- 339 dist: 339 dist: .SYMBOLIC 340 340 @if exist airboot2.exe $(CP) airboot2.exe ..$(DS)..$(DS)release$(DS)os2 341 341 @if exist airbootd.exe $(CP) airbootd.exe ..$(DS)..$(DS)release$(DS)dos … … 346 346 # Rebuild all targets. 347 347 # 348 rebuild: 348 rebuild: .SYMBOLIC 349 349 @%MAKE clean 350 350 @%MAKE all … … 353 353 # Remove all generated files. 354 354 # 355 clean: 355 clean: .SYMBOLIC 356 356 @for %%i in ($(TARGETS)) do @if exist %%i $(RM) %%i 357 357 @if exist *.obj $(RM) *.obj … … 367 367 # Help on using this Makefile. 368 368 # 369 help: 370 @echo. 371 @echo 372 @echo wmaketo build all targets373 @echo wmake showto show the list of buildable targets374 @echo wmake cleanto remove all generated files375 @echo wmake rebuildto rebuild all targets376 @echo wmake help forthis information369 help: .SYMBOLIC 370 @echo. 371 @echo The following actions are available: 372 @echo wmake to build all targets 373 @echo wmake show to show the list of buildable targets 374 @echo wmake clean to remove all generated files 375 @echo wmake rebuild to rebuild all targets 376 @echo wmake help to show this information 377 377 @echo. 378 378 … … 380 380 # Show the list of buildable targets. 381 381 # 382 show: 383 @echo. 384 @echo 385 @for %%i in ($(TARGETS)) do @echo 382 show: .SYMBOLIC 383 @echo. 384 @echo The following [case sensitive] targets can be built: 385 @for %%i in ($(TARGETS)) do @echo %%i 386 386 @echo. 387 387 # Alias for show 388 list: 388 list: .SYMBOLIC 389 389 @%MAKE show 390 390 … … 394 394 .ERROR 395 395 @echo. 396 @echo 397 @echo 398 @echo 399 @echo 400 @echo 396 @echo Oops! 397 @echo Some error occured in this build session. 398 @echo If it's a linker problem, it could be 399 @echo the result of out-of-sync object files. 400 @echo Doing a wmake rebuild might resolve the problem. 401 401 @%MAKE help 402 402 @echo. 403 404 -
trunk/install/c/install.h
r60 r63 22 22 */ 23 23 // Vendor 24 #define BLDLVL_VENDOR "KIEWITZ" 24 //~ #define BLDLVL_VENDOR "KIEWITZ" 25 //~ #define BLDLVL_VENDOR "RDPe" 26 #define BLDLVL_VENDOR "*UNKNOWN*" 25 27 // Version 26 28 #define BLDLVL_MAJOR_VERSION "1" 27 29 #define BLDLVL_MIDDLE_VERSION "1" 28 #define BLDLVL_MINOR_VERSION " 0"30 #define BLDLVL_MINOR_VERSION "1" 29 31 // Build date 30 #define BLDLVL_YEAR "201 3"31 #define BLDLVL_MONTH " 04"32 #define BLDLVL_DAY "0 5"32 #define BLDLVL_YEAR "2016" 33 #define BLDLVL_MONTH "10" 34 #define BLDLVL_DAY "09" 33 35 // Build time 34 #define BLDLVL_HOURS "01" 35 #define BLDLVL_MINUTES "01" 36 #define BLDLVL_SECONDS "00" 36 //~ #define BLDLVL_HOURS "01" 37 //~ #define BLDLVL_MINUTES "01" 38 //~ #define BLDLVL_SECONDS "00" 39 #define BLDLVL_HOURS "99" 40 #define BLDLVL_MINUTES "99" 41 #define BLDLVL_SECONDS "99" 37 42 // Build machine 43 //~ #define BLDLVL_MACHINE "OS2BLDBOX" 38 44 #define BLDLVL_MACHINE "*UNKNOWN*" 39 45 // Build language … … 122 128 #define CONFIG_OFFSET 0x6C00 // Byte offset of config-sector 123 129 #define SECTORS_BEFORE_CONFIG CONFIG_OFFSET / BYTES_PER_SECTOR // Nr of sectors before config-sector 124 125 126 127 -
trunk/release/Makefile
r60 r63 5 5 # Include a Master Makefile with several cross-platform definitions and macros. 6 6 # This is used to compensate for the differences between the target platforms. 7 !include 7 !include ../include/makefile.mif 8 8 9 default: 9 default: .SYMBOLIC 10 10 @echo. 11 11 @echo Use wmake clean to remove the distribution files 12 12 @echo. 13 13 14 clean: 14 clean: .SYMBOLIC 15 15 # @for %%i in ($(RELDIRS)) do @$(MAKE) -h %%i 16 16 @echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -
trunk/tools/internal/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include ../../include/makefrwd.mif -
trunk/tools/internal/Makefile
r60 r63 1 1 ############################################################################### 2 # Makefile :: Builds 'fixcode' program for several platforms. [wmake] # 3 ############################################################################### 4 5 # 6 # This Makefile builds the 'fixcode' program for DOS, Windows, OS/2 and Linux. 7 # It is used to embed the anti-virus code into the AiR-BOOT image. 8 # This anti-virus code protects the MBR and is installed as a TSR by the 9 # loader. That's why it cannot be included at the source level. 10 # 2 # Makefile :: Builds 'fixcode' program for several platforms. [WMake] # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This Makefile builds the 'fixcode' program for DOS, Windows, OS/2 & Linux. # 6 # It is used to embed the anti-virus code into the AiR-BOOT image. # 7 # This anti-virus code protects the MBR and is installed as a TSR by the # 8 # loader. That's why it cannot be included at the source level. # 9 # # 10 ############################################################################### 11 11 12 12 13 # … … 14 15 # This is used to compensate for the differences between the target platforms. 15 16 # 16 !include 17 !include ../../include/makefile.mif 17 18 18 19 … … 69 70 # we are building on Linux. 70 71 # 71 !ifdef 72 !ifdef __LINUX__ 72 73 !if "$(ASM)"=="masm" | "$(ASM)"=="tasm" | "$(ASM)"=="alp" 73 74 ASM=jwasm … … 76 77 77 78 !if "$(ASM)"=="jwasm" 78 # -Cp 79 # -zcw 79 # -Cp = case sensitive symbols 80 # -zcw = no _ prefix on symbols (C model) 80 81 ASM_FLAGS_D0=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Cp -Fo$^. -Fl=$^&.lst -Fw$^&.err 81 82 ASM_FLAGS_D1=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Zd -Zi -Fo$^. -Sa -Fl=$^&.lst -Fw$^&.err … … 86 87 ASM_FLAGS_D2=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dASSEMBLER=TASM -zq -d1 -fo=$^. -fr=$^&.err 87 88 !elseif "$(ASM)"=="tasm" 88 # -ml 89 # -ml = case sensitive symbols 89 90 ASM_FLAGS_D0=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dASSEMBLER=TASM -t -l 90 91 ASM_FLAGS_D1=-dDEBUG_LEVEL=$(DEBUG_LEVEL) -dASSEMBLER=TASM -t -z -zi -c -la … … 141 142 .AFTER 142 143 # @echo == AFTER == 143 !ifdef 144 !ifdef __MSDOS__ 144 145 @echo $(WARN_DOS_BLD_ENV) 145 146 !endif … … 150 151 # If this Makefile was modified, all targets are forcefully rebuilt. 151 152 # 152 all: 153 all: .SYMBOLIC Makefile.bu header $(TARGETS) footer 153 154 154 155 … … 172 173 # Show the header. 173 174 # 174 header: 175 header: .SYMBOLIC 175 176 @echo. 176 177 @echo ===================================================================== … … 183 184 # Show the footer. 184 185 # 185 footer: 186 footer: .SYMBOLIC 186 187 @echo All targets up to date ! 187 188 @echo. … … 194 195 # using the new level. 195 196 # 196 Makefile.bu: 197 Makefile.bu: Makefile 197 198 @echo. 198 199 @echo Makefile modified, forcing rebuild of all targets ! … … 222 223 # DOS 16-bits (COM) 223 224 ############################################################################### 224 $(BASENAME).com: 225 $(BASENAME).com: $(BASENAME).obj 225 226 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys dos com 226 @if exist $^. @echo 227 @echo. 228 229 $(BASENAME).obj: 230 # @echo. 231 @echo TARGET: $^&.com 227 @if exist $^. @echo $^. $(MSG_SUCCESS) 228 @echo. 229 230 $(BASENAME).obj: $(BASENAME).asm 231 # @echo. 232 @echo TARGET: $^&.com [DOS 16-bits COM-file] 232 233 $(ASM) $(ASM_FLAGS) $(BASENAME).asm 233 234 @wdis -fi $^. > $^&.wda … … 237 238 # DOS 16-bits (MZ) 238 239 ############################################################################### 239 $(BASENAME)d.exe: 240 $(BASENAME)d.exe: $(BASENAME)d.obj 240 241 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys dos 241 @if exist $^. @echo 242 @echo. 243 244 $(BASENAME)d.obj: 245 # @echo. 246 @echo TARGET: $^&.exe 242 @if exist $^. @echo $^. $(MSG_SUCCESS) 243 @echo. 244 245 $(BASENAME)d.obj: $(BASENAME).c $(BASENAME).h 246 # @echo. 247 @echo TARGET: $^&.exe [DOS 16-bits Executable] 247 248 $(CC16) $(CC16_FLAGS) -bt=dos $(BASENAME).c 248 249 @wdis -fi $^. > $^&.wda … … 252 253 # NT 32-bits (PE) 253 254 ############################################################################### 254 $(BASENAME)w.exe: 255 $(BASENAME)w.exe: $(BASENAME)w.obj 255 256 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys nt 256 @if exist $^. @echo 257 @echo. 258 259 $(BASENAME)w.obj: 260 # @echo. 261 @echo TARGET: $^&.exe 257 @if exist $^. @echo $^. $(MSG_SUCCESS) 258 @echo. 259 260 $(BASENAME)w.obj: $(BASENAME).c $(BASENAME).h 261 # @echo. 262 @echo TARGET: $^&.exe [NT 32-bits Executable] 262 263 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)nt -bt=nt $(BASENAME).c 263 264 @wdis -fi $^. > $^&.wda … … 267 268 # OS/2 32-bits (LX) 268 269 ############################################################################### 269 $(BASENAME)2.exe: 270 $(BASENAME)2.exe: $(BASENAME)2.obj 270 271 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys os2v2 271 @if exist $^. @echo 272 @echo. 273 274 $(BASENAME)2.obj: 275 # @echo. 276 @echo TARGET: $^&.exe 272 @if exist $^. @echo $^. $(MSG_SUCCESS) 273 @echo. 274 275 $(BASENAME)2.obj: $(BASENAME).c $(BASENAME).h 276 # @echo. 277 @echo TARGET: $^&.exe [OS/2 32-bits Executable] 277 278 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)os2 -bt=os2 $(BASENAME).c 278 279 @wdis -fi $^. > $^&.wda … … 282 283 # Linux 32-bits (ELF) 283 284 ############################################################################### 284 $(BASENAME)l.elf: 285 $(BASENAME)l.elf: $(BASENAME)l.obj 285 286 $(LNK) $(LNK_FLAGS) file $^&.obj name $^&.elf sys linux 286 287 # $(MV) $^&.elf $^. 287 @if exist $^. @echo 288 @echo. 289 290 $(BASENAME)l.obj: 291 # @echo. 292 @echo TARGET: $^&.elf 288 @if exist $^. @echo $^. $(MSG_SUCCESS) 289 @echo. 290 291 $(BASENAME)l.obj: $(BASENAME).c $(BASENAME).h 292 # @echo. 293 @echo TARGET: $^&.elf [Linux 32-bits Executable] 293 294 $(CC32) $(CC32_FLAGS) -bt=linux $(BASENAME).c 294 295 @wdis -fi $^. > $^&.wda … … 306 307 # Rebuild all targets. 307 308 # 308 rebuild: 309 rebuild: .SYMBOLIC 309 310 @%MAKE clean 310 311 @%MAKE all … … 313 314 # Remove all generated files. 314 315 # 315 clean: 316 clean: .SYMBOLIC 316 317 @for %%i in ($(TARGETS)) do @if exist %%i $(RM) %%i 317 318 @if exist *.obj $(RM) *.obj … … 326 327 # Help on using this Makefile. 327 328 # 328 help: 329 @echo. 330 @echo 331 @echo wmaketo build all targets332 @echo wmake showto show the list of buildable targets333 @echo wmake cleanto remove all generated files334 @echo wmake rebuildto rebuild all targets335 @echo wmake help forthis information329 help: .SYMBOLIC 330 @echo. 331 @echo The following actions are available: 332 @echo wmake to build all targets 333 @echo wmake show to show the list of buildable targets 334 @echo wmake clean to remove all generated files 335 @echo wmake rebuild to rebuild all targets 336 @echo wmake help to show this information 336 337 @echo. 337 338 … … 339 340 # Show the list of buildable targets. 340 341 # 341 show: 342 @echo. 343 @echo 344 @for %%i in ($(TARGETS)) do @echo 342 show: .SYMBOLIC 343 @echo. 344 @echo The following [case sensitive] targets can be built: 345 @for %%i in ($(TARGETS)) do @echo %%i 345 346 @echo. 346 347 # Alias for show 347 list: 348 list: .SYMBOLIC 348 349 @%MAKE show 349 350 … … 353 354 .ERROR 354 355 @echo. 355 @echo 356 @echo 357 @echo 358 @echo 359 @echo 356 @echo Oops! 357 @echo Some error occured in this build session. 358 @echo If it's a linker problem, it could be 359 @echo the result of out-of-sync object files. 360 @echo Doing a wmake rebuild might resolve the problem. 360 361 @%MAKE help 361 362 @echo. 362 363 -
trunk/tools/os2/setaboot/GNUmakefile
r60 r63 6 6 # Include the forwarder. 7 7 # 8 include 8 include ../../../include/makefrwd.mif -
trunk/tools/os2/setaboot/Makefile
r60 r63 1 1 ############################################################################### 2 # Makefile :: Builds the 'set(a)boot' 'setboot' replacement for OS/2 [wmake] # 2 # Makefile :: Builds the 'set(a)boot' 'setboot' replacement for OS/2 [WMake] # 3 # --------------------------------------------------------------------------- # 4 # # 5 # This Makefile builds the 'set(a)boot' 'setboot' replacement for OS/2. # 6 # # 3 7 ############################################################################### 4 # rousseau@ecomstation.com 5 6 7 # 8 # This Makefile builds the 'set(a)boot' 'setboot' replacement for OS/2. 9 # 8 10 9 11 10 # … … 13 12 # This is used to compensate for the differences between the target platforms. 14 13 # 15 !include 14 !include ../../../include/makefile.mif 16 15 17 16 … … 70 69 # we are building on Linux. 71 70 # 72 !ifdef 71 !ifdef __LINUX__ 73 72 !if "$(ASM)"=="masm" | "$(ASM)"=="tasm" | "$(ASM)"=="alp" 74 73 ASM=jwasm … … 77 76 78 77 !if "$(ASM)"=="jwasm" 79 # -Cp 80 # -zcw 78 # -Cp = case sensitive symbols 79 # -zcw = no _ prefix on symbols (C model) 81 80 ASM_FLAGS_D0=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Cp -Fo$^. -Fl=$^&.lst -Fw$^&.err 82 81 ASM_FLAGS_D1=-DDEBUG_LEVEL=$(DEBUG_LEVEL) -DASSEMBLER=JWASM -q -Cp -Zd -Zi -Fo$^. -Sa -Fl=$^&.lst -Fw$^&.err … … 159 158 # If this Makefile was modified, all targets are forcefully rebuilt. 160 159 # 161 all: 160 all: .SYMBOLIC Makefile.bu header $(TARGETS) footer 162 161 163 162 … … 170 169 # The second method uses the procedure method, no concatenation problem. 171 170 # 172 #all: 171 #all: .SYMBOLIC 173 172 # Recursive method (concatenation problem) 174 173 # @for %%i in (header $(TARGETS) footer) do @$(MAKE) -h %%i … … 181 180 # Show the header. 182 181 # 183 header: 182 header: .SYMBOLIC 184 183 @echo. 185 184 @echo ===================================================================== … … 192 191 # Show the footer. 193 192 # 194 footer: 193 footer: .SYMBOLIC 195 194 @echo All targets up to date ! 196 195 @echo. … … 203 202 # using the new level. 204 203 # 205 Makefile.bu: 204 Makefile.bu: Makefile 206 205 @echo. 207 206 @echo Makefile modified, forcing rebuild of all targets ! … … 247 246 # OS/2 32-bits (LX) 248 247 ############################################################################### 249 $(MODULE).exe: 248 $(MODULE).exe: $(MODULE).obj 250 249 $(LNK) $(LNK_FLAGS) file $^&.obj name $^. sys os2v2 251 @if exist $^. @echo 250 @if exist $^. @echo $^. $(MSG_SUCCESS) 252 251 @echo. 253 252 #~ wstrip $^. … … 255 254 $(MODULE).obj: $(BASENAME).c $(BASENAME).h 256 255 # @echo. 257 @echo TARGET: $^&.exe 256 @echo TARGET: $^&.exe [OS/2 32-bits Executable] 258 257 $(CC32) $(CC32_FLAGS) -I$(%WATCOM)$(DS)h$(DS)os2 -bt=os2 $(BASENAME).c 259 258 @wdis -fi $^. > $^&.wda … … 268 267 # Rebuild all targets. 269 268 # 270 rebuild: 269 rebuild: .SYMBOLIC 271 270 @%MAKE clean 272 271 @%MAKE all … … 275 274 # Remove all generated files. 276 275 # 277 clean: 276 clean: .SYMBOLIC 278 277 @for %%i in ($(TARGETS)) do @if exist %%i $(RM) %%i 279 278 @if exist *.obj $(RM) *.obj … … 290 289 # This distributes 'setaboot' 'release'. 291 290 # ----------------------------------------------------------------------------- 292 dist: 291 dist: .SYMBOLIC 293 292 @if exist *.exe $(CP) *.exe ..$(DS)..$(DS)..$(DS)release$(DS)os2 294 293 # 295 294 # Help on using this Makefile. 296 295 # 297 help: 298 @echo. 299 @echo 300 @echo wmaketo build all targets301 @echo wmake showto show the list of buildable targets302 @echo wmake cleanto remove all generated files303 @echo wmake rebuildto rebuild all targets304 @echo wmake help forthis information296 help: .SYMBOLIC 297 @echo. 298 @echo The following actions are available: 299 @echo wmake to build all targets 300 @echo wmake show to show the list of buildable targets 301 @echo wmake clean to remove all generated files 302 @echo wmake rebuild to rebuild all targets 303 @echo wmake help to show this information 305 304 @echo. 306 305 … … 308 307 # Show the list of buildable targets. 309 308 # 310 show: 311 @echo. 312 @echo 313 @for %%i in ($(TARGETS)) do @echo 309 show: .SYMBOLIC 310 @echo. 311 @echo The following [case sensitive] targets can be built: 312 @for %%i in ($(TARGETS)) do @echo %%i 314 313 @echo. 315 314 # Alias for show 316 list: 315 list: .SYMBOLIC 317 316 @%MAKE show 318 317 … … 322 321 .ERROR 323 322 @echo. 324 @echo 325 @echo 326 @echo 327 @echo 328 @echo 323 @echo Oops! 324 @echo Some error occured in this build session. 325 @echo If it's a linker problem, it could be 326 @echo the result of out-of-sync object files. 327 @echo Doing a wmake rebuild might resolve the problem. 329 328 @%MAKE help 330 329 @echo. 331 332 -
trunk/tools/os2/setaboot/setaboot.h
r57 r63 8 8 */ 9 9 // Vendor 10 #define BLDLVL_VENDOR "KIEWITZ" 10 //~ #define BLDLVL_VENDOR "KIEWITZ" 11 //~ #define BLDLVL_VENDOR "RDPe" 12 #define BLDLVL_VENDOR "*UNKNOWN*" 11 13 // Version 12 14 #define BLDLVL_MAJOR_VERSION "1" 13 15 #define BLDLVL_MIDDLE_VERSION "1" 14 #define BLDLVL_MINOR_VERSION " 0"16 #define BLDLVL_MINOR_VERSION "1" 15 17 // Build date 16 #define BLDLVL_YEAR "201 3"17 #define BLDLVL_MONTH " 04"18 #define BLDLVL_DAY "0 5"18 #define BLDLVL_YEAR "2016" 19 #define BLDLVL_MONTH "10" 20 #define BLDLVL_DAY "09" 19 21 // Build time 20 #define BLDLVL_HOURS "01" 21 #define BLDLVL_MINUTES "01" 22 #define BLDLVL_SECONDS "00" 22 //~ #define BLDLVL_HOURS "01" 23 //~ #define BLDLVL_MINUTES "01" 24 //~ #define BLDLVL_SECONDS "00" 25 #define BLDLVL_HOURS "99" 26 #define BLDLVL_MINUTES "99" 27 #define BLDLVL_SECONDS "99" 23 28 // Build machine 29 //~ #define BLDLVL_MACHINE "OS2BLDBOX" 24 30 #define BLDLVL_MACHINE "*UNKNOWN*" 25 31 // Build language … … 44 50 45 51 46 47 48 52 #ifdef __cplusplus 49 53 };
Note:
See TracChangeset
for help on using the changeset viewer.