Nilo uses GNU make to build, or any other make program with support for the VPATH variable. There are two main targets, nilo and nilo-floppy.
The current set of Makefile targets are:
Build the default target, which currently is set to only build the standalone Unix hosted version of Nilo, which is used for testing the protocols.
This builds the standalone Unix hosted version of Nilo, which is used for testing the protocols.
This builds the floppy bootable version of Nilo.
This cleans the build directories of junk files, core files, object files, libraries, and executables.
This installs the Nilo utilities on the system. This currently is not enabled.
Run Nilo through it's regression test suite. This currently is not enabled.
It is possible to redefine many of the Makefile variables from the command line. The variables that can be reset will be listed as follows:
These are the flags used when the compiler is running the preprocessor, cpp. There is a default CPPFLAGS value in the Makefile. This value is used in addition to the default values.
These are the flags used when running the compiler. There is a default CFLAGS value in the Makefile. This value is used in addition to the default values.
These are the flags used for linking. There is a default LDFLAGS value in the Makefile. This value is used in addition to the default values.
The compiler to use. This must be set to a version of the GCC or EGCS compiler. This is typically used to test for compiler induced bugs. The default is to use the gcc as found in your path.
The assembler to use. This must be set to a version of the GAS assembler with 16 bit support. This is typically used to test for assembler induced bugs. The default is to use the as as found in your path.
The archiver program to use. The default is to use the ar as found in your path.
The archiver program to use. The default is to use the ar as found in your path.
The objdump program to use. The default is to use the objdump as found in your path.
The objcopy program to use. The default is to use the objcopy as found in your path.