Makefile 1.79 KB
# --------------------------------------------------------------------
#        Copyright (C) 1997 Nintendo. (Originated by SGI)
#        
#        $RCSfile: Makefile,v $
#        $Revision: 1.1.1.1 $
#        $Date: 2002/05/02 03:27:20 $
# --------------------------------------------------------------------
include $(ROOT)/usr/include/make/PRdefs

APP =		trivial
APP_EM =	trivial_em

OPTIMIZER =	-g

TARGETS =	rom

HFILES =	trivial.h walk_around.h brick.h

CODEFILES =     trivial.c walk_around.c dram_stack.c
CODEOBJECTS =	$(CODEFILES:.c=.o)

# recompile for real & emulator environments
SPECIFICCODEFILES =
SCODEOBJECTS =	$(SPECIFICCODEFILES:.c=.o)
SCODEOBJECTS_EM = $(SPECIFICCODEFILES:.c=_em.o)

CODESEGMENT =	codesegment.o
CODESEGMENT_EM =codesegment_em.o

DATAFILES =	static.c dynamic.c zbuf.c cfb.c
DATAOBJECTS =	$(DATAFILES:.c=.o)

OBJECTS =	$(CODESEGMENT) $(DATAOBJECTS)
OBJECTS_EM =	$(CODESEGMENT_EM) $(DATAOBJECTS)

LCINCS =	-I. -I$(ROOT)/usr/include/PR 
LCOPTS =	-D_DEBUG -fullwarn -non_shared -G 0

LDFLAGS =	$(MKDEPOPT) -nostdlib -L$(ROOT)/usr/lib -L$(ROOT)/usr/lib/PR \
		-lultra_d
LDFLAGS_EM =	$(MKDEPOPT) -nostdlib -L$(ROOT)/usr/lib -L$(ROOT)/usr/lib/PR \
		-lem -lultra_em

LDIRT =         $(APP) load.map

default:	$(TARGETS)

include $(COMMONRULES)

install:	default
		$(INSTALL) -m 444 -F /usr/src/PR/demos/trivial \
			$(HFILES) $(CODEFILES) $(DATAFILES) Makefile spec

$(CODESEGMENT):	$(CODEOBJECTS) $(SCODEOBJECTS)
		$(LD) -m -o $(CODESEGMENT) -r $(CODEOBJECTS) \
			$(SCODEOBJECTS) $(LDFLAGS) > load.map

rom $(APP):	spec $(OBJECTS) $(MAKEROM)
		$(MAKEROM) spec

$(CODESEGMENT_EM):	$(CODEOBJECTS) $(SCODEOBJECTS_EM)
		$(LD) -m -o $(CODESEGMENT_EM) -r $(CODEOBJECTS) \
			$(SCODEOBJECTS_EM) $(LDFLAGS_EM) > load_em.map

rom_em $(APP_EM):	spec_em $(OBJECTS_EM) $(MAKEROM)
		$(MAKEROM) -e -r rom_em spec_em