# --------- Visual C/C++ 6.0 configuration ---------
# --- general --------------------------------------
# $P  - project name
# $Pp - path to project directory
# $Pn - project name
# --- compile --------------------------------------
# $I  - input full name
# $Ip - input path
# $In - input name
# $Ie - input extension
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for compiler
# --- build ----------------------------------------
# $T  - target full name
# $Tp - target path
# $Tn - target name
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for linker

[Settings]

DevStudio = 6.0|5.0
Target = 
Category&00 = DEFAULT RUN CONFIGURATION
Working Directory =.
Command Line Arguments = 
Category&01 = COMPILER OPTIONS
Warning Level = 3|0|1|2|4
Link With = MD|ML|MT
Machine = IX86|ALPHA|ARM|MIPS|MIPS16|MIPSR41XX|PPC|SH3|SH4
Optimization = speed|default|disable|size
Processor = blend|386|486|pentium|pentium pro
Calling Convention = __cdecl|__fastcall|__stdcall
Exception Handling = enable|disable
RTTI = disable|enable
ConDisp = enable|disable
Struct Alignment = 8 Bytes|1 Bytes|2 Bytes|4 Bytes|16 Bytes
Incremental Compilation = no|yes
Additional Include Directories = 
Preprocessor (Debug) = /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS"
Preprocessor (Release) = /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS"
Compiler Options = 
Category&02 = LINKER OPTIONS
Align = 
Comment = 
Debug Type = Microsoft Format|COFF Format|Both Formats
Map File = no|yes
Map Info = 
Merge = 
Stub = 
Libraries = kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
Linker Options =
Excluded Files = Excludes
Debugger = msdev
External Dependencies=yes|no

[SettingsInfo]
DevStudio = Provides a space for you to specify an version of compiler you want to use. 
Target = Provides a space for you to specify an output file and location of the program that the linker creates.
Working Directory = Provides a space for you to specify the directory in which executing occurs. If you do not specify a directory, executing occurs in the directory where the executable is located.
Command Line Arguments = Provides a space for you to specify command-line arguments you want to pass to the program at startup.
Libraries = Provides a space for you to specify an object file or standard library (either static or import) to pass to the linker. Separate file names with a space.
Preprocessor (Debug) = Shows the switches the tool will use to build. You can to add or remove switches.
Preprocessor (Release) = Shows the switches the tool will use to build. You can to add or remove switches.
Warning Level = Specifies the severity of warning for which the compiler generates messages.	
Link With = Link with MD-Creates a multithreaded App using MSVCRT, ML-Creates a single-threaded App using LIBC, MT-Creates a multithreaded App using LIBCMT
Machine = This option specifies the target platform for the program.
Excluded Files = This will exclude the file(s) included in this UE project group from the build.
Compiler Options = Provides a space for you to specify an additional compiler options.
Linker Options = Provides a space for you to specify an additional linker options.
Debugger=Provides a space for you to set the debugger you want to use to debug application.
Additional Include Directories = Provides a place for you to add one or more directories to the list of directories searched for include files. Separate directory names with a semicolon.
Align = Specifies the alignment of each section.
Comment = Inserts a comment string into header.
Debug Type = Creates particular formats of debugging information.
Map File = Creates a map file.
Map Info = Includes the specified information in the map file. EXPORTS tells the linker to include exported functions. FIXUPS tells the linker to include base-relocation information. LINES includes line-number information.
Merge = FROM=TO. This option combines the first section (from) with the second section (to), naming the resulting section to. If the second section does not exist, LINK renames the section from as to.
Stub = Attaches an MS-DOS stub program to a Win32 program.
Optimization = Select from a list of compiler code optimizations. Only for RELEASE mode.
Processor = Optimizes code to favor the selected processor.
Calling Convention = A calling convention defines the way internal and external functions are called. Calling conventions differ in how arguments are passed, how values are returned by functions, and how the stack is cleaned up. Refer to the online reference material for the calling conventions applicable to the x86 platform.
Exception Handling = Select this option to call destructors for automatic objects during a stack unwind caused by either a Windows NT-based structured exception or a C++ exception.
RTTI = Select this option to add code for checking object types at run time (run-time type information).	
ConDisp = Disable Construction Displacements. Suppresses the vtordisp constructor/destructor displacement member. Choose this option only if you are certain that all class constructors and destructors call virtual functions virtually.
Struct Alignment = This setting allows you to use non-standard alignments for data structure members. Alignments other than the default can cause severe application performance degradation due to alignment faults and subsequent fixups. Change this setting from the default with caution. This setting changes the value of the /Zp compiler switch.
Incremental Compilation = Select this option to enable function-level recompilation.
External Dependencies=If you select "yes" option, UE Studio will generate in project group "External Dependencies" from included files.

[SettingsReps]

Align = @/ALIGN:%s
Warning Level = @/W%s
Link With = @/%s
Comment = "@/COMMENT:"%s""
Debug Type = Microsoft Format=/DEBUGTYPE:CV|COFF Format=/DEBUGTYPE:COFF|Both Formats=/DEBUGTYPE:BOTH
Map File = no=|yes=/MAP
Map Info = @/MAPINFO:{%s}
Merge = @/MERGE:%s
Stub = @/STUB:%s
Optimization = default=|disable=/Od|speed=/O2|size=/O1
Processor = blend=|386=/G3|486=/G4|pentium=/G5|pentium pro=/G6
Calling Convention = __cdecl=|__fastcall=/Gr|__stdcall=/Gz
Exception Handling = disable=|enable=/GX
RTTI = disable=|enable=/GR
ConDisp = enable=|disable=/vd0
Struct Alignment = 8 Bytes=|1 Bytes=/Zp1|2 Bytes=/Zp2|4 Bytes=/Zp4|16 Bytes=/Zp16
Incremental Compilation = no=|yes=/Gi
External Dependencies=yes=1|no=0
Additional Include Directories=^@[;|%s;]

[Variables]

DevStudioRegistry = $(DevStudio)
Platform = Win32 (x86)
RegPath = Software\Microsoft\DevStudio\$(DevStudioRegistry)\Build System\Components\Platforms

COPT = $(Compiler Options) $(Warning Level) $(Calling Convention) $(Exception Handling) $(RTTI) $(ConDisp) $(Processor) $(Struct Alignment) $(Incremental Compilation)
LOPT = $(Linker Options) /MACHINE:$(Machine) $(Align) $(Comment) $(Map File) $(Map Info) $(Merge) $(Stub)

[Environment]

PATH = $(HKEY_CURRENT_USER\$(RegPath)\$(Platform)\Directories\Path Dirs)
INCLUDE = $Pp;$(HKEY_CURRENT_USER\$(RegPath)\$(Platform)\Directories\Include Dirs);$(Additional Include Directories)
LIB = $(HKEY_CURRENT_USER\$(RegPath)\$(Platform)\Directories\Library Dirs)

[General]

TargetExt = .DLL
ReleaseOut = Release
DebugOut = Debug
UseFullPaths = 0
UseDosNames = 0
Excludes = $(Excluded Files)

.CPP=.C
.CXX=.C
.CC=.C
.I=.C
.S=.NSM
GenerateEDGroup=$(External Dependencies)

[MakeCommands]

run = Execute Application
debug =Start Debugger
peview=PEview
makef=Show Makefile

[Execute Application]

Title = Execute $T
Cmd0 = $(Command Line Arguments)
Depends = $T
ShowWindow = 1
DisplayConsole = 1

[Start Debugger]

Cmd0 = $(Debugger) $T
Depends =$T
ShowWindow =1
Title = Debug $T

[InsertFiles]

group0 = $(Libraries)

[FileGroups]

FGO = .obj;.res;
FGL = .lib;
FGD = .def;

[GroupFormats]

FGO = %s
FGL = %s
FGD = /def:%s

[Build]

Out = $T
Depends = $FGO
ReleaseFlag = /incremental:no
DebugFlag = /incremental:yes /debug $(Debug Type)
Cmd0 = LINK /NOLOGO $(LOPT) /DLL $FGD /implib:$Tn.lib /OUT:$O $R $FGO $FGL

[.C]

Out = $In.obj
ReleaseFlag = $(Link With) $(Optimization) /FD $(Preprocessor (Release))
DebugFlag = $(Link With)d /Gm /ZI /Od /FD /GZ $(Preprocessor (Debug))
Cmd0 = CL /nologo $(COPT) $R /c $I

IncFiles = 1
CaseSensitive = 1
IncDirs = .;$(INCLUDE);
IncKeyWords = #include;
Comments = /*.*/.//.eol.

[.RC]

Out = $In.res
Cmd0 = RC /fo$O $I
IncFiles = 1
CaseSensitive = 1
IncDirs = .;$(INCLUDE);
IncKeyWords = #include;
Comments = /*.*/.//.eol.

[.ASM]

Out = $In.obj
Cmd0 = ML /nologo /coff /c /Cp /Fo$O $I

IncFiles = 1
CaseSensitive = 0
IncDirs = .;$(INCLUDE);
IncKeyWords = include;
Comments = ;.eol.

[.NSM]

Out = $In.obj
Cmd0 = NASMW -f win32 -i$Ip -o$O $I
IncFiles = 1
CaseSensitive = 0
IncDirs = .;
IncKeyWords = %include;
Comments = ;.eol.

[PEview]
Title=Show PE Information
Depends=$T
Cmd0=uetools -pe $T
ShowWindow=1
DisplayConsole=0
[Show Makefile]
Title=Show makefile
Cmd0=uestudio $(UESMAKEFILE)
ShowWindow=1
DisplayConsole=0
