Microsoft-3D-Movie-Maker/kauai/MAKEFILE.DEF

556 lines
9.7 KiB
Plaintext

#--- makefile.def -- included in Kids Build makefiles
!IFNDEF MAKEFILE_DEF
MAKEFILE_DEF = 1
#- Map some variables ----------------------------------------------------------
!IF "$(TYPE)" == "DAY"
TYPE=DEBUG
INCREMENTAL=1
!ELSEIF "$(TYPE)" == "HOME"
TYPE=DEBUG
INCREMENTAL=
!ELSEIF "$(TYPE)" == "DBSHIP"
TYPE=SHIP
DEBUG_LINK=1
!ELSEIF "$(LOCAL_BUILD)" != "1"
DEBUG_LINK=1
!ENDIF
#-Tools-------------------------------------------------------------------------
CPP=cl /nologo
!IF "$(ARCH)" == "MAC"
ASM=asm68
!ENDIF
LINK=link
MRC=mrc
RC=rc
CHOMP=$(KAUAI_ROOT)\obj\wins\chomp.exe
CHELPDMP=$(KAUAI_ROOT)\obj\wins\chelpdmp.exe
!IF "$(ARCH)" == "MAC"
.SUFFIXES : .rsc .rm .asm
!ELSE
.SUFFIXES: .cht .chk .scr
!ENDIF
#-CPPFLAGS----------------------------------------------------------------------
# /YX is "automate precompiled headers"
# /Fp renames the pch file from the default "msvc.pch"
# /W3 provides warning level 3
# /Gz uses "stdcall", the default 32-bit VC++ calling convention.
DEFS = /D"$(ARCH)" /D"STRICT"
!IF "$(CHIP)" != ""
DEFS = $(DEFS) /D"$(CHIP)"
!ENDIF
!IF "$(UNICODE)" != ""
DEFS = $(DEFS) /D"UNICODE"
!ENDIF
#CPPFLAGS = /c /YX /Fp"frame.pch" /W3 /Gz
#PLACED PRECOMPILED HEADERS IN PROJ MAKEFILES
CPPFLAGS = /c /YX /W3 /Gz /Gy
ASMFLAGS = -c
!IF "$(BROWSE)" != ""
CPPFLAGS = /Fr $(CPPFLAGS)
!ENDIF
!IF "$(ARCH)" == "WIN"
DEFS = $(DEFS) /D"WIN32"
!ENDIF
!IF "$(TYPE)" == "DEBUG"
# /Zi generates debugging info and puts it in the .pdb file
# /Fd renames the pdb file from the default "msvc.pdb"
# /Og enables global optimization
# /Ob1 enables inline expansion
DEFS = $(DEFS) /D"DEBUG"
!IF "$(ARCH)" == "MAC"
CPPFLAGS = /Q68m $(CPPFLAGS)
ASMFLAGS = $(ASMFLAGS) -s
!ENDIF
CPPFLAGS = /Gf /Ge $(CPPFLAGS)
!ELSE
#CPPFLAGS = /Ogityb1 /Gs /Gf $(CPPFLAGS) REVIEW shonk: revert to this
CPPFLAGS = /Ogityb1 /Gs /Gf $(CPPFLAGS)
!ENDIF
#-LFLAGS---------------------------------------------------------------------------
# Cannot incrementally link and generate mapfile, or optimize references
# REVIEW seanse: remove /DEBUG flag for ship build later in project
LFLAGS_BASE = /nologo
!IF "$(INCREMENTAL)"==""
LFLAGS_CONS = $(LFLAGS_BASE) /OPT:REF /map
LFLAGS_GUI = $(LFLAGS_BASE) /OPT:REF /map
LFLAGS_LIB = $(LFLAGS_BASE) /OPT:REF
!ELSE
LFLAGS_CONS = /INCREMENTAL:YES $(LFLAGS_BASE)
LFLAGS_GUI = /INCREMENTAL:YES $(LFLAGS_BASE)
LFLAGS_LIB = $(LFLAGS_BASE)
!ENDIF
!IF "$(ARCH)" == "WIN"
LFLAGS_CONS = $(LFLAGS_CONS) /SUBSYSTEM:console kernel32.lib comdlg32.lib\
user32.lib gdi32.lib winmm.lib
LFLAGS_GUI = $(LFLAGS_GUI) $(LFLAGS_PROF) /SUBSYSTEM:windows,4.0 kernel32.lib\
comdlg32.lib user32.lib gdi32.lib winmm.lib advapi32.lib uuid.lib
!ENDIF
!IF "$(ARCH)" == "MAC"
LFLAGS_GUI = $(LFLAGS_GUI) /MACHINE:M68K
!ENDIF
#SHIP AND DEBUG USE /DEBUG FLAG
#!IF "$(TYPE)" == "DEBUG"
# /DEBUG incorporates debugging info (/DEBUGTYPE is cv by default)
#LFLAGS_CONS = /DEBUG $(LFLAGS_CONS)
#LFLAGS_GUI = /DEBUG $(LFLAGS_GUI)
#!ENDIF
!IF ("$(TYPE)" == "DEBUG") || ("$(DEBUG_LINK)" == "1")
LFLAGS_CONS = /DEBUG $(LFLAGS_CONS)
LFLAGS_GUI = /DEBUG $(LFLAGS_GUI)
!ENDIF # DEBUG || DEBUG_LINK
.cpp.exe:
#-Build-Macros---------------------------------------------------------------------
!IF "$(ARCH)" == "WIN"
!IF "$(TYPE)" == "DEBUG"
!IF "$(UNICODE)"==""
BLD_TYPE_DIR = wind
!ELSE
BLD_TYPE_DIR = winud
!ENDIF
!ELSE IF "$(TYPE)" == "SHIP"
!IF "$(UNICODE)"==""
BLD_TYPE_DIR = wins
!ELSE
BLD_TYPE_DIR = winus
!ENDIF
!ENDIF
!ELSE IF "$(ARCH)" == "MAC"
!IF "$(TYPE)" == "DEBUG"
BLD_TYPE_DIR = macd
!ELSE IF "$(TYPE)" == "SHIP"
BLD_TYPE_DIR = macs
!ENDIF
!ENDIF
#AUDIO LIB
!IF "$(ARCH)" == "WIN"
!IF "$(TYPE)" == "DEBUG"
AUDIO_LIB = $(KAUAI_ROOT)\elib\$(BLD_TYPE_DIR)\audiod.lib
!ELSE IF "$(TYPE)" == "SHIP"
AUDIO_LIB = $(KAUAI_ROOT)\elib\$(BLD_TYPE_DIR)\audios.lib
!ENDIF
!ENDIF
#VIDEO FOR WINDOWS LIB
VFW32_LIB = $(MSVCNT_ROOT)\lib\vfw32.lib
#Windows WNet LIB
WNET_LIB = $(MSVCNT_ROOT)\lib\mpr.lib
#KAUAI OBJ DIRECTORIES
KAUAI_OBJ_ROOT_DIR = $(KAUAI_ROOT)\obj
KAUAI_OBJ_DIR = $(KAUAI_OBJ_ROOT_DIR)\$(BLD_TYPE_DIR)
#====================================================================
#KAUIA OBJ GROUPS
#BASE_OBJS
#Base: Base files required for all Kauai based projects
#Requires: nothing
!IF "$(ARCH)" == "WIN"
BASE_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\memwin.obj
!ELSE IF "$(ARCH)" == "MAC"
BASE_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\memmac.obj
!IF "$(CHIP)" == "MC_68020"
BASE_CHIP_SPECIFIC =\
$(KAUAI_OBJ_DIR)\utilmc.obj
!ENDIF
!ENDIF
BASE_OBJS =\
$(KAUAI_OBJ_DIR)\utilglob.obj\
$(KAUAI_OBJ_DIR)\util.obj\
$(KAUAI_OBJ_DIR)\base.obj\
$(KAUAI_OBJ_DIR)\utilcopy.obj\
$(KAUAI_OBJ_DIR)\utilerro.obj\
$(KAUAI_OBJ_DIR)\utilint.obj\
$(KAUAI_OBJ_DIR)\utilmem.obj\
$(KAUAI_OBJ_DIR)\utilrnd.obj\
$(KAUAI_OBJ_DIR)\utilstr.obj\
$(BASE_PLATFORM_SPECIFIC)\
$(BASE_CHIP_SPECIFIC)
#GROUP_OBJS
#Group: Collection classes
#Requires: Base, File, and NoFile
GROUP_OBJS =\
$(KAUAI_OBJ_DIR)\groups.obj\
$(KAUAI_OBJ_DIR)\groups2.obj
#FILE_OBJS
#File: File and chunky file stuff
#Requires: Group
!IF "$(ARCH)" == "WIN"
FILE_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\filewin.obj\
$(KAUAI_OBJ_DIR)\fniwin.obj
!ELSE IF "$(ARCH)" == "MAC"
FILE_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\filemac.obj\
$(KAUAI_OBJ_DIR)\fnimac.obj
!ENDIF
FILE_OBJS =\
$(KAUAI_OBJ_DIR)\chunk.obj\
$(KAUAI_OBJ_DIR)\codec.obj\
$(KAUAI_OBJ_DIR)\codkauai.obj\
$(KAUAI_OBJ_DIR)\crf.obj\
$(KAUAI_OBJ_DIR)\file.obj\
$(FILE_PLATFORM_SPECIFIC)
#NOFILE_OBJS
#NoFile: To be implemented in the future
#Requires: Base
#STREAM_OBJS
#Stream: Stream classes
#Requires: Group
STREAM_OBJS =\
$(KAUAI_OBJ_DIR)\stream.obj
#LEXER_OBJS
#Lexer: Lexing classes
#Requires: Stream
LEXER_OBJS =\
$(KAUAI_OBJ_DIR)\lex.obj
#SCRCOM_OBJS
#ScrCom: Script compiler
#Requires: Lexer
SCRCOM_OBJS =\
$(KAUAI_OBJ_DIR)\scrcom.obj
#KIDCOM_OBJS
#KidCom: Script compiler for kidspace scripts
#Requires: ScrCom
KIDCOM_OBJS =\
$(KAUAI_OBJ_DIR)\scrcomg.obj
#SCREXE_OBJS
#ScrExe: Script interpreter
#Requires: Group
SCREXE_OBJS =\
$(KAUAI_OBJ_DIR)\screxe.obj
#MBMPIO_OBJS
#MbmpIO: Masked bitmap IO support
#Requires: File or NoFile
MBMPIO_OBJS =\
$(KAUAI_OBJ_DIR)\mbmp.obj
#CHSE_OBJS
#Chse: Chunky source emitter
#Requires: Group
CHSE_OBJS =\
$(KAUAI_OBJ_DIR)\chse.obj
#CHCM_OBJS
#Chcm: Chunky compiler and decompiler classes
#Requires: Lexer, Chse, MbmpIO, KidCom
CHCM_OBJS =\
$(KAUAI_OBJ_DIR)\chcm.obj
#SOUND_OBJS
#Sound: Sound support
#Requires: Group
SOUND_OBJS =\
$(KAUAI_OBJ_DIR)\sndm.obj\
$(KAUAI_OBJ_DIR)\sndam.obj\
$(KAUAI_OBJ_DIR)\mididev.obj\
$(KAUAI_OBJ_DIR)\mididev2.obj\
$(KAUAI_OBJ_DIR)\midi.obj
#NOSOUND_OBJS
#NoSound: Not yet implemented
#Requires: Base
#VIDEO_OBJS
#Video: Video playback and support
#Requires: GUI
VIDEO_OBJS =\
$(KAUAI_OBJ_DIR)\video.obj
#NOVIDEO_OBJS
#NoVideo: Not yet implemented
#Requires: GUI
#SPELL_OBJS
#SpellChecker
#Requires: Base, Group
SPELL_OBJS =\
$(KAUAI_OBJ_DIR)\spell.obj
#GUI_OBJS
#Gui: Support for a GUI application
#Requires: Group, MbmpIO, Sound or NoSound, Video or NoVideo
!IF "$(ARCH)" == "WIN"
GUI_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\appbwin.obj\
$(KAUAI_OBJ_DIR)\gfxwin.obj\
$(KAUAI_OBJ_DIR)\gobwin.obj\
$(KAUAI_OBJ_DIR)\menuwin.obj\
$(KAUAI_OBJ_DIR)\picwin.obj
!ELSE IF "$(ARCH)" == "MAC"
GUI_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\appbmac.obj\
$(KAUAI_OBJ_DIR)\gfxmac.obj\
$(KAUAI_OBJ_DIR)\gobmac.obj\
$(KAUAI_OBJ_DIR)\menumac.obj\
$(KAUAI_OBJ_DIR)\picmac.obj
!ENDIF
GUI_OBJS =\
$(KAUAI_OBJ_DIR)\appb.obj\
$(KAUAI_OBJ_DIR)\clok.obj\
$(KAUAI_OBJ_DIR)\cmd.obj\
$(KAUAI_OBJ_DIR)\cursor.obj\
$(KAUAI_OBJ_DIR)\gfx.obj\
$(KAUAI_OBJ_DIR)\gob.obj\
$(KAUAI_OBJ_DIR)\mbmpgui.obj\
$(KAUAI_OBJ_DIR)\region.obj\
$(KAUAI_OBJ_DIR)\pic.obj\
$(GUI_PLATFORM_SPECIFIC)
#DLG_OBJS
#Dlg: Dialog support
#Requires: Gui
!IF "$(ARCH)" == "WIN"
DLG_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\dlgwin.obj\
!ELSE IF "$(ARCH)" == "MAC"
DLG_PLATFORM_SPECIFIC =\
$(KAUAI_OBJ_DIR)\dlgmac.obj\
!ENDIF
DLG_OBJS =\
$(KAUAI_OBJ_DIR)\dlg.obj\
$(DLG_PLATFORM_SPECIFIC)
#CTL_OBJS
#Ctl: Control support
#Requires: Gui
CTL_OBJS =\
$(KAUAI_OBJ_DIR)\ctl.obj
#DOC_OBJS
#Doc: Base document class support
#Requires: Ctl
DOC_OBJS =\
$(KAUAI_OBJ_DIR)\docb.obj\
$(KAUAI_OBJ_DIR)\clip.obj
#RICHTEXT_OBJS
#RichText: Rich text document support
#Requires: Doc, Stream
RICHTEXT_OBJS =\
$(KAUAI_OBJ_DIR)\rtxt.obj\
$(KAUAI_OBJ_DIR)\rtxt2.obj
#TEXTEDIT_OBJS
#TextEdit: Edit controls
#Requires: Gui, Stream
TEXTEDIT_OBJS =\
$(KAUAI_OBJ_DIR)\text.obj
#PLAINTEXT_OBJS
#PlainText: Plain line based text document
#Requires: Doc, Stream
PLAINTEXT_OBJS =\
$(KAUAI_OBJ_DIR)\textdoc.obj
#KID_OBJS
#Kid: Kidspace and help balloon stuff
#Requires: Gui, ScrExe
KID_OBJS =\
$(KAUAI_OBJ_DIR)\kidworld.obj\
$(KAUAI_OBJ_DIR)\kidhelp.obj\
$(KAUAI_OBJ_DIR)\kidspace.obj\
$(KAUAI_OBJ_DIR)\screxeg.obj
#KAUAITEST_OBJS
#KauiaTest: Kauai test app stuff
#Requires: Gui, File
KAUAITEST_OBJS =\
$(KAUAI_OBJ_DIR)\ft.obj\
$(KAUAI_OBJ_DIR)\test.obj
#CHED_OBJS
#Ched: Chunky editor
#Requires: Gui, Kid, KidCom, PlainText, Doc, Chcm
CHED_OBJS =\
$(KAUAI_OBJ_DIR)\chdoc.obj\
$(KAUAI_OBJ_DIR)\ched.obj\
$(KAUAI_OBJ_DIR)\chgrp.obj\
$(KAUAI_OBJ_DIR)\chhex.obj\
$(KAUAI_OBJ_DIR)\chmbmp.obj\
$(KAUAI_OBJ_DIR)\chpic.obj\
$(KAUAI_OBJ_DIR)\chtxt.obj
#CHELP_OBJS
#Chelp: Chunky help editor
#Requires: Gui, Kid, RichText
CHELP_OBJS =\
$(KAUAI_OBJ_DIR)\chelp.obj\
$(KAUAI_OBJ_DIR)\chtop.obj\
$(KAUAI_OBJ_DIR)\chelpexp.obj
#CHOMP_OBJS
#Chomp: Chunky compiler
#Requires: File, Group, Chcm
CHOMP_OBJS =\
$(KAUAI_OBJ_DIR)\chomp.obj\
$(KAUAI_OBJ_DIR)\mssio.obj
!ENDIF # !MAKEFILE_DEF