<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/syslinux.git/dosutil, branch master</title>
<subtitle>git.kernel.org: pub/scm/boot/syslinux/syslinux.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/'/>
<entry>
<title>Test for Watcom C presence</title>
<updated>2014-06-25T00:30:34+00:00</updated>
<author>
<name>Lubomir Rintel</name>
<email>lkundrak@v3.sk</email>
</author>
<published>2014-06-24T10:22:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=29d80af290485aeede15b87cfd77c0ca9990dcbb'/>
<id>29d80af290485aeede15b87cfd77c0ca9990dcbb</id>
<content type='text'>
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 &lt;lkundrak@v3.sk&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;lkundrak@v3.sk&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add per-firmware object directory support</title>
<updated>2012-10-16T10:38:01+00:00</updated>
<author>
<name>Matt Fleming</name>
<email>matt.fleming@intel.com</email>
</author>
<published>2012-09-25T13:45:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=1408e6ca7b3854d94aaa39612b4bb6fdf9111dc7'/>
<id>1408e6ca7b3854d94aaa39612b4bb6fdf9111dc7</id>
<content type='text'>
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 &lt;matt.fleming@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;matt.fleming@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Makefile: Use -Ox option to NASM</title>
<updated>2012-03-26T21:59:39+00:00</updated>
<author>
<name>H. Peter Anvin</name>
<email>hpa@linux.intel.com</email>
</author>
<published>2012-03-26T21:59:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=9f8174439428e624088648276b7d1ee11e504594'/>
<id>9f8174439428e624088648276b7d1ee11e504594</id>
<content type='text'>
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 &lt;hpa@linux.intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;hpa@linux.intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Makefile: Move Makefile fragments into mk/</title>
<updated>2011-04-07T16:59:11+00:00</updated>
<author>
<name>Matt Fleming</name>
<email>matt.fleming@linux.intel.com</email>
</author>
<published>2011-04-07T16:12:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=d7e6cfaa6a990eb8fe2eaabe7fad1d1c8367a7ee'/>
<id>d7e6cfaa6a990eb8fe2eaabe7fad1d1c8367a7ee</id>
<content type='text'>
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 &lt;matt.fleming@linux.intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;matt.fleming@linux.intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>memdisk: make mstructs.h includable from Linux</title>
<updated>2010-06-22T00:29:11+00:00</updated>
<author>
<name>H. Peter Anvin</name>
<email>hpa@linux.intel.com</email>
</author>
<published>2010-06-22T00:29:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=7556a891b2f28617f6c95aa271aeaf29883d0981'/>
<id>7556a891b2f28617f6c95aa271aeaf29883d0981</id>
<content type='text'>
Make mstructs.h includable from a Linux utility.

Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make mstructs.h includable from a Linux utility.

Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge syslinux/extlinux patch code and core code</title>
<updated>2010-06-21T00:07:52+00:00</updated>
<author>
<name>H. Peter Anvin</name>
<email>hpa@zytor.com</email>
</author>
<published>2010-06-21T00:01:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=2ef260d392537d22c927735e6b9e78b02d36bb7b'/>
<id>2ef260d392537d22c927735e6b9e78b02d36bb7b</id>
<content type='text'>
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 &lt;hpa@zytor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;hpa@zytor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mdiskchk: Add --no-sequential mode</title>
<updated>2010-06-15T04:48:56+00:00</updated>
<author>
<name>Shao Miller</name>
<email>shao.miller@yrdsb.edu.on.ca</email>
</author>
<published>2010-06-15T04:34:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=107806f9ab7e87b0535944606d53b07dca291b1c'/>
<id>107806f9ab7e87b0535944606d53b07dca291b1c</id>
<content type='text'>
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 &lt;gerth@zytor.com&gt;
Signed-off-by: Shao Miller &lt;shao.miller@yrdsb.edu.on.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;gerth@zytor.com&gt;
Signed-off-by: Shao Miller &lt;shao.miller@yrdsb.edu.on.ca&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>eltorito: Include drive 0xFF in scan</title>
<updated>2010-06-15T04:48:34+00:00</updated>
<author>
<name>Shao Miller</name>
<email>shao.miller@yrdsb.edu.on.ca</email>
</author>
<published>2010-06-14T22:50:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=62ac3a7710b846c66a190156a11b7170015e7afb'/>
<id>62ac3a7710b846c66a190156a11b7170015e7afb</id>
<content type='text'>
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 &lt;shao.miller@yrdsb.edu.on.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;shao.miller@yrdsb.edu.on.ca&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>eltorito: Scan upwards instead of downwards</title>
<updated>2010-06-17T18:44:37+00:00</updated>
<author>
<name>Shao Miller</name>
<email>shao.miller@yrdsb.edu.on.ca</email>
</author>
<published>2010-06-11T04:15:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=aa1050f66db73be1f61eea0c2df8169430d32d8e'/>
<id>aa1050f66db73be1f61eea0c2df8169430d32d8e</id>
<content type='text'>
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 &lt;shao.miller@yrdsb.edu.on.ca&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 &lt;shao.miller@yrdsb.edu.on.ca&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mdiskchk: Support three new features</title>
<updated>2010-06-11T05:08:41+00:00</updated>
<author>
<name>Shao Miller</name>
<email>shao.miller@yrdsb.edu.on.ca</email>
</author>
<published>2010-03-09T23:33:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/syslinux.git/commit/?id=3a2d5f8b3a75961e621c83890a592db24dd960a6'/>
<id>3a2d5f8b3a75961e621c83890a592db24dd960a6</id>
<content type='text'>
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&gt;setenv.bat
  mdiskchk.com -m -s -b&gt;&gt;setenv.bat
  call setenv.bat&gt;nul

Signed-off-by: Shao Miller &lt;shao.miller@yrdsb.edu.on.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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&gt;setenv.bat
  mdiskchk.com -m -s -b&gt;&gt;setenv.bat
  call setenv.bat&gt;nul

Signed-off-by: Shao Miller &lt;shao.miller@yrdsb.edu.on.ca&gt;
</pre>
</div>
</content>
</entry>
</feed>
