Makefile 2.62 KB
#!smake
#
# for unix  
# /usr/include/make/ を参照のこと
# 

include $(ROOT)/usr/include/make/PRdefs

PRDEPTH = ../../..
LCINCS = -I$(ROOT)/usr/include/PR -I$(ROOT)/PR/libultra/io -I$(ROOT)/PR/libultra/os

#START_FROM_CASSETTE = YES
#FINAL = YES

#
#  コンパイラ用         → (c)
#  リンカ用             →  (l)
#  ROMパッカ用(makerom makedisk) →  (m)
#

#ifdef FINAL
OPTIMIZER = -O2			 	# (c) 最大レベルの 最適化を行う
#        LCDEFS    =						  
#N64LIB    = -lleo -lultra_rom	 	# (l) インクルードライブラリ
#else
OPTIMIZER = -g				# (c) デバッグ情報を作成する	
LCDEFS   += -D_RDB_	-DDEBUG	        # (c) #define DEBUG 
#N64LIB    = -lleo_d -lultra_d    	# (l) デバッグ用ライブラリのインクルード
#endif

#ifdef  START_FROM_CASSETTE
LCDEFS += -DSTART_FROM_CASSETTE		# (c) define START_FROM_CASSETTE
CODESEGMENT =	ddproc.o
DDOBJ  = dd.o
#        DDDEFS =
#else
#        LCDEFS +=
CODESEGMENT =	ddproc2.o
DDOBJ  = dd2.o 
DDDEFS = -DD64 -t 0			# (m) ディスクタイプ0のDD用イメージファイル
#						  と gwrite 作成。
#endif

#
# まとめてオブジェクト化

CODEFILES   =	globals.c \
		try.c \
		si.c \
		video_core.c video_str.c video_jstr.c video_draw.c \
		sprite.c heap.c reset.c 				

OPTIONALCODES = sb.c btile.c	

#ifndef COMPACT  
CODEFILES += $(OPTIONALCODES)
#endif

CODEOBJECTS =	$(CODEFILES:.c=.o)

#
# 別個にオブジェクト化

DATAFILES   =   
#  cfb.c rsp_cfb.c readwritebuf.c
#  str_dlb.c  sp_dlb.c
DATAOBJECTS =   $(DATAFILES:.c=.o)

OBJECTS =	$(CODESEGMENT) $(DATAOBJECTS)	# (c) ターゲットオブジェクト名	
HFILES = 	font_sys.h hdd.h hddproc.h hglobals.h hreset.h 	\
		hsb.h hsi.h hsp.h hspfix.h htry.h hvideo.h 	\
		hvideo_str.h sysassigned.h hdd_internal.h

LCINCS =	-I.			# (c) カレントディレクトリをインクルードパスに含める
LCOPTS =	-fullwarn -wlint,-f -woff 813,819,822,826,827,852  \
		-non_shared -G 0 -Xcpluscomm	# (c) 
LCDEFS  +=	-DEUC_CODE

#
# (l) リンカ用オプション

LDFLAGS =	$(MKDEPOPT) -nostdlib -L$(ROOT)/usr/lib

#
# /usr/include/make/commonrules 参照
# clobber で削除するファイル

LDIRT  = $(CODESEGMENT)

#ifdef  START_FROM_CASSETTE
$(DDOBJ): dd.c dd_core.c dd_func.c dd_checksum.c
	$(CC) $(CFLAGS) -DSTART_FROM_CASSETTE -c dd.c -o $(DDOBJ)
#else
$(DDOBJ): dd.c dd_core.c dd_func.c dd_checksum.c
	$(CC) $(CFLAGS) -c dd.c -o $(DDOBJ)
#endif

# 
# OBJECTSファイルまで生成します。(.oならコンパイルで終わり)
# 

default: $(OBJECTS)

#
# コンパイル規則
#

include $(COMMONRULES)

install:	default
		$(INSTALL) -m 444 -F /usr/src/PR/demos/reboot/ddproc	\
			$(CODEFILES) $(HFILES) \
			dd.c dd_core.c dd_func.c dd_checksum.c Makefile

#
# リンク
#
#
$(CODESEGMENT):	$(CODEOBJECTS) $(DDOBJ)
		$(LD) -o $(CODESEGMENT) -r $(CODEOBJECTS) $(DDOBJ) $(LDFLAGS)