123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339 |
- everything : all
- ###### dxv standard project specs
-
- PROJECT = dxv
- # project name
- # standard modules for this library
- OBJS = \
- $(OBJDIR)dxlcsize.$(OBJ) \
- $(OBJDIR)dxv_init.$(OBJ) \
- $(OBJDIR)dxv_initex.$(OBJ) \
- $(OBJDIR)dxl_main.$(OBJ) \
- $(OBJDIR)vscreen.$(OBJ) \
- $(OBJDIR)ximage.$(OBJ) \
- $(OBJDIR)ximgblit.$(OBJ) \
- $(OBJDIR)getprefs.$(OBJ) \
- $(OBJDIR)dxl_clip.$(OBJ) \
- $(OBJDIR)dxl_bkgr.$(OBJ) \
- $(OBJDIR)dxl_view.$(OBJ) \
- $(OBJDIR)vgetview.$(OBJ) \
- $(OBJDIR)vscerase.$(OBJ) \
- $(OBJDIR)dxl_attr.$(OBJ) \
- $(OBJDIR)dxl_reg.$(OBJ) \
- $(OBJDIR)dxl_feat.$(OBJ) \
- $(OBJDIR)genximg.$(OBJ) \
- $(OBJDIR)svsbitdp.$(OBJ) \
- $(OBJDIR)vscraddr.$(OBJ) \
- $(OBJDIR)blitall.$(OBJ) \
- $(OBJDIR)dxlvinfd.$(OBJ) \
- $(OBJDIR)cpuid.$(OBJ) \
- $(OBJDIR)count_tm.$(OBJ)
- !ifndef NOCLUT
- OBJS = $(OBJS) \
- $(OBJDIR)dxl_clut.$(OBJ)
-
- !endif
-
- !ifndef NOLOGO
- OBJS = $(OBJS) \
- $(OBJDIR)on2logo.$(OBJ) \
- $(OBJDIR)tmlogo55.$(OBJ) \
- $(OBJDIR)tmlogo56.$(OBJ) \
- $(OBJDIR)tmlogo24.$(OBJ) \
- $(OBJDIR)ducklogo.$(OBJ)
- !endif
-
- MAJREV = 6 # major library revision
- MINREV = 0 # minor library revision
- PVER = 1 # minor.minor library revision
- BVER = ".b1" # build version
- # libraries on which this should be built
- !if 0
- $(LIBDIR)$(LIBPREFIX)tmrt$(LIBSUFFIX) \
- $(LIBDIR)$(LIBPREFIX)tm1$(LIBSUFFIX) \
- $(LIBDIR)$(LIBPREFIX)tm20$(LIBSUFFIX) \
- $(LIBDIR)$(LIBPREFIX)vp3$(LIBSUFFIX) \
- $(LIBDIR)$(LIBPREFIX)vp31d$(LIBSUFFIX)
- !endif
- !if 0
- USER_LIBS = \
- $(LIBDIR)$(LIBPREFIX)torq$(LIBSUFFIX)
- !endif
- #
- # project sub options sent to compilers
- #
- !ifndef CENV
- CENV = -DTORQB -DTM1B -DTM2B -DTMRTB
- !endif
- # add sub-options to c options (allows for environment override)
- C_FLAGS = $(CENV)
- c_flags = $(C_FLAGS)
- # this proj library is to be built as a shared or master library
- SHAREDLIB = 0
- M_INCLUDES = -I$(INCDIR)/$(OS) -I$(INCDIR) -I. -I../generic $(M_INCLUDES)
- # win95 specific modules
- OBJS = $(OBJS) \
- $(OBJDIR)dxv.$(OBJ) \
- $(OBJDIR)dkprof.$(OBJ) \
- $(OBJDIR)perf.$(OBJ) \
- $(OBJDIR)pentium.$(OBJ) \
- $(OBJDIR)$(PROJECT).res
- # modules specifically sent to linker,
- # others are provided in libraries
- DLLOBJS = $(OBJDIR)dxl_main.obj \
- $(OBJDIR)dxv_mem.$(OBJ) \
- $(OBJDIR)dxv_mems.$(OBJ) \
- $(OBJDIR)$(PROJECT).res \
- $(OBJDIR)$(PROJECT).$(OBJ)
- PROJLIBS = $(PROJLIBS)
- #$(OBJDIR)sc_$(PROJECT).lib
- THISFILE = makefile
- SRCDIR = .
- GENDIR = ..\generic
- OBJDIR = obj\
- LIBDIR = obj\
- INCDIR = $(CORELIBS_INC)
- ASMDIR = ..\X86\
- MMXDIR = ..\mmx\
- WASMDIR = ..\wX86\
- OBJRELDIR = $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)\Release\
- OBJDEBDIR = $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)\Debug\
- LIBRELDIR = $(ROOT)Private\CoreLibs\Lib\$(OS)\Release
- LIBDEBDIR = $(ROOT)Private\CoreLibs\Lib\$(OS)\Debug
- OBJ = obj
- MKDIR =
- # tools
- CC = cl
- ASM = tasm /ml /m8 /dWINP /zd /I$(ASMDIR) /dWIN95
- WASM = wasm /dWINP /dWIN95 /I=$(ASMDIR) /I=$(MMXDIR) -q
- RC = rc
- LIBNAME = $(OBJDIR)$(PROJECT).lib
- SLIBNAME = $(OBJDIR)s_$(PROJECT).lib
- EXENAME = $(OBJDIR)$(PROJECT).exe
- ###DEFNAME = $(SRCDIR)$(PROJECT).DEF
- DEFNAME = $(PROJECT).DEF
- LIBPREFIX = \s_
- LIBSUFFIX = .lib
- # Include Path Variable Extensible
- include = $(SDK)/inc;$(include)
- ############################################################
- # Global Flags (compiler / linker)
- C_FLAGS = $(C_FLAGS) -Gy -W3 -nologo -DWIN32 -D_MBCS -D_AFXDLL -D_WINDOWS -DHIRES\
- -DDOS32 -c $(M_INCLUDES:/=\)
- #-WX
- L_FLAGS = $(L_FLAGS) /SUBSYSTEM:windows /INCREMENTAL:no /MACHINE:I386
- ############################################################
- # Locally Overridable Flags
- !ifndef DLLNAME
- DLLNAME = $(OBJDIR)$(PROJECT).dll
- !endif
- !ifndef c_thread
- ## SJL - NEED TO USE LIBCMT NOW
- ## c_thread = -MD
- c_thread = -MT
- !endif
- !ifndef c_ndebugflags
- c_ndebugflags = -DNDEBUG -Ob2 -Ot -O2 -G5
- !endif
- !ifndef c_debugflags
- c_debugflags = -D_DEBUG -GX -Od -Z7
- !endif
- !ifndef l_ndebugflags
- l_ndebugflags =
- !endif
- !ifndef l_debugflags
- l_debugflags = -DEBUG -DEBUGTYPE:BOTH
- !endif
- # exe flags / objects
- !ifndef l_exe_flags
- l_exe_flags =
- !endif
- # DLL flags / objects
- !ifndef l_dll_flags
- l_dll_flags = -DLL -DEF:$(DEFNAME)
- !endif
- !ifndef DLLOBJS
- DLLOBJS = $(OBJS)
- !endif
- # targets we will build
- !ifndef targets
- targets = $(SLIBNAME)
- !ifdef SHAREDLIB
- !if $(SHAREDLIB) == 1
- targets = $(TARGETS) $(DLLNAME)
- !endif
- !endif
- !endif
- # versions we will build
- !ifndef VERSIONS
- VERSIONS = release.ver debug.ver
- !endif
- ############################################################
- # inference rules
- # -mkdir $(OBJDIR:\= )
- # -mkdir $(MKOBJDIR:\= )
- # Target Directories
- #$(OBJDIR:\= ) :
- !if 0
- $(OBJDIR:\= ) :
- mkdir $*
- cd $*
- !endif
- $(LIBDIR) :
- # -mkdir $(LIBDIR)\..
- -mkdir $(MKLIBDIR)
- # Object files
- {$(GENDIR)}.c{$(OBJDIR)}.obj:
- $(CC) $(C_FLAGS) $< -Fo$@
- {$(GENDIR)}.cpp{$(OBJDIR)}.obj:
- $(CC) $(C_FLAGS) $< -Fo$@
- {$(SRCDIR)}.c{$(OBJDIR)}.obj:
- $(CC) $(C_FLAGS) $< -Fo$@
- {$(SRCDIR)}.cpp{$(OBJDIR)}.obj:
- $(CC) $(C_FLAGS) $< -Fo$@
- {$(WASMDIR)}.asm{$(OBJDIR)}.obj:
- $(WASM) $< -fo=$@
- editbin /NOLOGO /RELEASE $@
- {$(ASMDIR)}.asm{$(OBJDIR)}.obj:
- $(ASM) $< $@
- editbin /NOLOGO /RELEASE $@
- {$(SRCDIR)}.rc{$(OBJDIR)}.res:
- $(RC) /fo$@ /dALG="$(CENV:-D= )" /dPROJ=$(PROJECT) /dMAJ=$(MAJREV) /dMIN=$(MINREV) /dPVER=$(PVER) /dBVER=$(BVER) $<
- #
- # building of targets
- #
- ###$(SLIBNAME): $(OBJDIR:\= ) $(LIBDIR) $(OBJS)
- $(SLIBNAME): $(OBJS)
- LIB $(OBJS) /OUT:$@
- !ifdef USER_LIBS
- for %i in ($(USER_LIBS)) do LIB $(SLIBNAME) %i /OUT:$@
- !endif
- copy $(SLIBNAME) $(LIBDIR)
- ##$(DLLNAME): $(SLIBNAME) $(OBJDIR:\= ) $(LIBDIR) $(DEFNAME) $(OBJDIR)$(PROJECT).res $(SLIBNAME) $(DLLOBJS)
- $(DLLNAME): $(SLIBNAME) $(LIBDIR) $(DEFNAME) $(OBJDIR)$(PROJECT).res $(SLIBNAME) $(DLLOBJS)
- link $(L_FLAGS) $(l_dll_flags) /OUT:$(DLLNAME) $(DLLOBJS) $(SLIBNAME) /MAP:$(OBJDIR)$(PROJECT).map
- copy $@ $(LIBDIR)
- copy $(LIBNAME) $(LIBDIR)
- $(EXENAME): $(OBJDIR:\= ) $(DEFNAME) $(OBJDIR)$(PROJECT).res $(OBJS)
- link $(L_FLAGS) $(l_exe_flags) /OUT:$(EXENAME) $(OBJS) /MAP:$(OBJDIR)$(PROJECT).map
- #
- # Goals
- #
- build_me: $(targets) $(PROJLIBS)
- @echo Build Completed
- #
- # there should be a more elegant way to build the following directories
- #
- build_dirs:
- @echo BUILDING DIRECTORIES
- mkdir $(ROOT)Object
- mkdir $(ROOT)Object\CoreLibs
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)\Dx
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)\Release
- mkdir $(ROOT)Object\CoreLibs\$(PROJECT)\Dx\$(OS)\Debug
- release.ver:
- set C_FLAGS=$(C_FLAGS) $(c_ndebugflags) $(c_thread) $(c_local)
- set L_FLAGS=$(L_FLAGS) $(l_ndebugflags)
- set OBJDIR=$(OBJRELDIR)
- set LIBDIR=$(LIBRELDIR)
- nmake /NOLOGO /C /S build_dirs
- nmake /NOLOGO -f $(THISFILE) build_me
- debug.ver:
- @echo NOW DOING DEBUG VERSION
- set C_FLAGS=$(C_FLAGS) $(c_debugflags) $(c_thread) $(c_local)
- set L_FLAGS=$(L_FLAGS) $(l_debugflags)
- set OBJDIR=$(OBJDEBDIR)
- set LIBDIR=$(LIBDEBDIR)
- nmake /NOLOGO /C /S build_dirs
- nmake /NOLOGO -f $(THISFILE) build_me
- all:: $(VERSIONS)
- clean:
- deltree /Y obj
- deltree /Y obj.*
- $(OBJDIR)sc_$(PROJECT).lib: $(LIBDIR)\sc_tm20.lib $(LIBDIR)\sc_torq.lib
- LIB $(OBJS) /OUT:$@
- LIB $@ $(LIBDIR)\s_tm1.lib /OUT:$@
- LIB $@ $(LIBDIR)\sc_tm20.lib /OUT:$@
- LIB $@ $(LIBDIR)\s_tmrt.lib /OUT:$@
- LIB $@ $(LIBDIR)\sc_torq.lib /OUT:$@
- copy $@ $(LIBDIR)
|