mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.6 KiB
68 lines
1.6 KiB
!IF "$(MAINOK)" != "YES"
|
|
! ERROR Make process not started at the root
|
|
!ENDIF
|
|
|
|
#################################################################
|
|
#
|
|
# Dependencies and rules for making objects
|
|
#
|
|
#################################################################
|
|
|
|
#
|
|
# Inference rules MUST be in order:
|
|
#
|
|
# (1) C++ source
|
|
# (2) C source
|
|
#
|
|
# (3) CPU-specific C++ source
|
|
# (4) CPU-specific C source
|
|
# (5) CPU-specific ASM source
|
|
#
|
|
# This takes advantage of 2 ordering rules in NMAKE:
|
|
#
|
|
# (1) Different Suffixes - In a conflict, .ASM takes precedence over .C, etc.
|
|
# (2) Same suffixes - In a conflict, the LAST rule takes precedence.
|
|
#
|
|
# The following macro must correspond to the paths in the inference rules
|
|
#
|
|
|
|
.SUFFIXES:
|
|
.SUFFIXES: .exe .obj .asm .a .s .c .cpp .cpp .bas .cbl .for .pas .res .rc
|
|
|
|
SRCPATH = {$(SRCDIR)\mac\$(SRCCPU);$(SRCDIR)\mac;$(SRCDIR)}
|
|
|
|
|
|
# src
|
|
|
|
{$(SRCDIR)}.cpp{$(OBJDIR)}.obj:
|
|
$(CCXX) $(CXXFLAGS) $(CXXFILES)
|
|
|
|
{$(SRCDIR)}.c{$(OBJDIR)}.obj:
|
|
$(CC) $(CFLAGS) $(CFILES)
|
|
|
|
# src\mac
|
|
|
|
{$(SRCDIR)\mac}.cpp{$(OBJDIR)}.obj:
|
|
$(CCXX) $(CXXFLAGS) $(CXXFILES)
|
|
|
|
{$(SRCDIR)\mac}.c{$(OBJDIR)}.obj:
|
|
$(CC) $(CFLAGS) $(CFILES)
|
|
|
|
# src\mac\cpu
|
|
|
|
{$(SRCDIR)\mac\$(CPU)}.cpp{$(OBJDIR)}.obj:
|
|
$(CCXX) $(CXXFLAGS) $(CXXFILES)
|
|
|
|
{$(SRCDIR)\mac\$(CPU)}.c{$(OBJDIR)}.obj:
|
|
$(CC) $(CFLAGS) $(CFILES)
|
|
|
|
{$(SRCDIR)\mac\$(CPU)}.s{$(OBJDIR)}.obj:
|
|
$(ASPPC) $(ASPPCFLAGS) $(AFILES)
|
|
|
|
{$(SRCDIR)\mac\$(CPU)}.asm{$(OBJDIR)}.obj:
|
|
$(AS) $(AFLAGS) $(AFILES)
|
|
|
|
{$(SRCDIR)\mac\$(CPU)}.a{$(OBJDIR)}.obj:
|
|
$(CPP) $(CPPFLAGS) $(CPPFILES)
|
|
$(AAS) $(AAFLAGS) $(AAFILES)
|
|
-del $(AAFILES) 2>nul
|