blob: e5ba85bdb14c806c26ea9a3c69165de5d80b3eb0 [file] [log] [blame]
Building XZ Utils for DOS
=========================
Introduction
This document explains how to build XZ Utils for DOS using DJGPP.
The resulting binaries should run at least on various DOS versions
and under Windows 95/98/98SE/ME.
This is somewhat experimental and has got very little testing.
Note: Makefile and config.h are updated only now and then. This
means that if you checked out a development version, building for
DOS might not work without updating Makefile and config.h first.
Getting and Installing DJGPP
You may use <https://www.delorie.com/djgpp/zip-picker.html> to help
deciding what to download. If you are only interested in building
XZ Utils, the zip-picker may list files that you don't strictly
need. However, using the zip-picker can still be worth it to get a
nice short summary of installation instructions (they can be found
from readme.1st too).
For a more manual method, first select a mirror from
<https://www.delorie.com/djgpp/getting.html> and go the
subdirectory named "current". You need the following files:
unzip32.exe (if you don't already have a LFN-capable unzipper)
v2/djdev205.zip
v2gnu/bnu234b.zip
v2gnu/gcc920b.zip
v2gnu/mak43b.zip
v2misc/csdpmi7b.zip
If newer versions are available, probably you should try them first.
Note that versions older than djdev205.zip aren't supported. Also
note that you want csdpmi7b.zip even if you run under Windows or
DOSEMU because the XZ Utils Makefile will embed cwsdstub.exe to
the resulting xz.exe.
See the instructions in readme.1st found from djdev205.zip. Here's
a short summary, but you should still read readme.1st.
C:\> mkdir DJGPP
C:\> cd DJGPP
C:\DJGPP> c:\download\unzip32 c:\download\djdev205.zip
C:\DJGPP> c:\download\unzip32 c:\download\bnu234b.zip
C:\DJGPP> c:\download\unzip32 c:\download\gcc920b.zip
C:\DJGPP> c:\download\unzip32 c:\download\mak43b.zip
C:\DJGPP> c:\download\unzip32 c:\download\csdpmi7b.zip
C:\DJGPP> set PATH=C:\DJGPP\BIN;%PATH%
C:\DJGPP> set DJGPP=C:\DJGPP\DJGPP.ENV
You may want to add the last two lines into AUTOEXEC.BAT or have,
for example, DJGPP.BAT which you can run before using DJGPP.
Make sure you use completely upper case path in the DJGPP environment
variable. This is not required by DJGPP, but the XZ Utils Makefile is
a bit stupid and expects that everything in DJGPP environment variable
is uppercase.
Building
You need to have an environment that supports long filenames (LFN).
Once you have built XZ Utils, the resulting binaries can be run
without long filename support.
Run "make" in this directory (the directory containing this
INSTALL.txt). You should get xz.exe (and a bunch of temporary files).
Other tools are not built. Having e.g. xzdec.exe doesn't save much
space compared to xz.exe because the DJGPP runtime makes the .exe
quite big anyway.