| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This adds checks for Watcom C DOS cross-compiler in a manner analogous to mingw
compiler for Windows. The compiler is not commonly present in Linux distributions
due to a non-free license.
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we have multiple firmware backends it no longer makes sense
to write object files to the same directory as their source. A better
solution is to write the object files to a per-firmware directory
under a top-level object directory.
The top-level object directory can be specified on the command-line
with the O= variable, e.g. make O=/tmp/obj. If no top-level object
directory is specified an 'obj' directory is created in the top-level
of the Syslinux source repository.
All the existing make targets continue to work as before, however now
they apply to all firmware backends, e.g. 'make installer' will build
the BIOS, 32-bit EFI and 64-bit EFI installers and place them under
$(OBJ)/bios, $(OBJ)/efi32 and $(OBJ)/efi64 respectively.
Note unlike every other bit of Syslinux, the gpxe objects are still
kept in the src directory, e.g. gpxe/src, since gpxe is only required
by the BIOS backend.
It is possible to specify a make target for a specific firmware or
list of firmware with the following syntax,
make [firmware[,firmware]] [target[,target]]
To clean the object directory for just the BIOS firmware type,
'make bios clean'
To build both the 32-bit and 64-bit EFI installers type,
'make efi32 efi64 installer'
Since the Syslinux make infrastructure is now more complex a new file
doc/building.txt has been created to explain how to build Syslinux.
The top-level Makefile now exports some make variables for use in
module Makefiles,
- topdir - the top-level source directory of the Syslinux
repository, e.g. /usr/src/syslinux
- objdir - the top-level object directory for the firmware
backend currently being built, e.g. /obj/syslinux/bios
- SRC - the source directory in the Syslinux repository for the
module currently being built,
e.g. /usr/src/syslinux/com32/libupload
- OBJ - the object directory for the module currently being
built, e.g. /obj/syslinux/bios/com32/libupload
Since we're rewriting the Makefile infrastructure anyway it seemed
like a good idea to add parallel support. By writing subdirectories as
prequisites for make targets the objects in those subdirectories can
be built in parallel.
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
|
|
|
|
|
|
|
| |
We already require a new enough version of NASM that the -Ox option is
supported, so just use it.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move the MCONFIG files into a mk/ directory and give them more
descriptive names.
This is purely a cosmetic change to make the 'include' directives a
bit more coherent by making it obvious exactly which MCONFIG file
we're including. For example, in com32/lua/src/Makefile we exchange
the line,
include ../../MCONFIG
for the much more comprehensible,
include $(MAKEDIR)/com32.mk
Signed-off-by: Matt Fleming <matt.fleming@linux.intel.com>
|
|
|
|
|
|
| |
Make mstructs.h includable from a Linux utility.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
|
| |
Merge the SYSLINUX and EXTLINUX patching code and core code, removing
EXTLINUX as a separate derivative. All the disk-based systems now use
the same code.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
| |
It might be useful to suppress MDISKCHK.COM's classic behaviour
of probing all BIOS drive numbers in search of MEMDISKs. Some BIOSes
might not enjoy being probed.
Reported-by: bylokk
Reported-by: Gert Hulselmans <gerth@zytor.com>
Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
|
|
|
|
|
|
|
|
| |
Although drive 0xFF could yield a false positive as the El Torito
booted-from drive number, some users of GRUB4DOS actually use
this drive number, so we should include it in our scan.
Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A developer for GRUB4DOS called tinybit has reported that some
BIOSes crash when the DOS ElTorito.Sys driver scans drive number
0xFF. According to the El Torito specification, drive 0x7F
means "terminate all," so a plausible explanation suggested
by H. Peter Anvin is that the drive 0xFF is a shadow of drive
0x7F, thus contributing to a failure on these BIOSes.
Now we scan from 0x80 through 0xFF, instead.
[ hpa: dropped checkin of eltorito.sys ]
Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MDISKCHK.COM now supports three new modes:
mdiskchk.com --mbfts
This mode will scan between free base memory and
0xA00000 looking for MEMDISK mBFTs. For each one
found, its detail will be reported.
mdiskchk.com --safe-hooks
This mode will attempt to walk the chain of INT 13h
"safe hooks". For each MEMDISK "safe hook" found,
its detail will be reported.
mdiskchk.com --batch-output
This mode suppresses the normal detail report and
instead outputs a list of DOS SET commands. This
is useful if one wishes to populate a batch file
and call that batch file to set DOS environment
variables, so that programs have access to those
MEMDISK kernel arguments passed at boot-time.
These command-line options may be combined.
For example, your AUTOEXEC.BAT might go:
@echo off
echo @echo off>setenv.bat
mdiskchk.com -m -s -b>>setenv.bat
call setenv.bat>nul
Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
|
|
|
|
|
|
|
| |
Move copybs to dosutil, change the Makefile to deal with UPX being
able to compress (e.g. very small files.)
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Most systems won't have Watcom installed, so don't remove
Watcom-generated binaries even with "make spotless".
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Align some data items (including the jump table) which were misaligned
for no clear reason.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Align the sector buffer.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Move the DOS directory to a subdirectory of the auxdir.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Add the DOS utilities as auxilliary installables
In case someone wants them...
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Fix comment to give a NASM compilation rule, not TASM.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Add $(NASMOPT) to NASM rules, clean up *.lst.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
The sequence ; ... \ is interpreted by NASM as a continuation line of
a comment which thus comments out the next line.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Add eltorito.sys.
Original by Gary Tong and Bart Lagerweij; reconstructed to binary
version 1.4 by Eric Auer; converted to NASM by NoMySo and HPA ;)
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
More complete and consistent structure for dosutil/Makefile.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Update mdiskchk and add a Makefile. Note that since this needs
OpenWatcom to compile, we still check in the binary file (which is
quite small, anyway.)
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
DOS utilities aren't really "samples". Create a dedicated "dosutil"
directory, and move mdiskchk there for now.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|