UC Santa Cruz CMP 111
Nachos Project Structure

Nachos Makefiles

Braden Carter / Jim Spring

The Makefiles

Makefiles play an essential role in compiling the Nachos project. There are Makefiles in the Nachos root directory, as well as an individual Makefile within each assignment subdirectory. The Makefiles in the Nachos root directory and their purpose are

Makefile
This file enters each assignment subdirectory and attempts to perform a gmake depend and a gmake nachos.
Makefile.common
This file lists all of the files that are to be compiled, which header files are used for each assignment, and the object files that will be produced. Depending upon the assignment interdependencies, the files for more than one assignment may be compiled. For example, compiling the Multiprogramming assignment would use files for both Thread Management and Multiprogramming.
Makefile.dep
This file contains machine dependcies for the hardware on which Nachos will be compiled and ran. You should not need to modify this file.
The Makefile in each assignment directory is made up of two sections. Any lines including or after
include ../Makefile.common
include ../Makefile.dep
#-----------------------------------------------------------------
# DO NOT DELETE THIS LINE -- make depend uses it
# DEPENDENCIES MUST END AT END OF FILE
should not be modified. These are used when a gmake depend is run. However, those preceding can be modified at your own risk.


Using Gmake

When running gmake, there are four cases that will occur. Those are


bwcarter@cse.ucsc.edu / jims@cse.ucsc.edu

Last Modified 1996/04/18 02:31:07.