Jump to content
Dave Nottage

Compiler options and corresponding dproj entries

Recommended Posts

I'm looking at extracting compiler options from .dproj files, and looked for an existing "map" of options to PropertyGroup entries, but came up blank, so I figured I'd create one. I'm hoping that others could help verify what I've come up with as well as fill in some blanks. The following was created from the output of the help from dcc32, and from looking through the DCCStrs unit for what appears to match. The value from DCCStrs is on the line following each option. The numbers after some of the DCCStrs value are what also appear in the DCCStrs source. Those I couldn't match are signified with: ???

Compiler Options:

-A<unit>=<alias> = Set unit alias
DCC_UnitAlias

-B = Build all units
DCC_BuildAllUnits

-CC = Console target
DCC_ConsoleTarget

-CG = GUI target
???

-D<syms> = Define conditionals
DCC_Define

-E<path> = EXE/DLL output directory
DCC_ExeOutput

-F<offset> = Find error
DCC_FindError

-GD = Detailed map file
DCC_MapFile

-GP = Map file with publics
DCC_MapFile

-GS = Map file with segments
DCC_MapFile

-H = Output hint messages
DCC_Hints

-I<paths> = Include directories
DCC_IncludePath

-J = Generate .obj file
DCC_ObjOutput

-JPHNE = Generate C++ .obj file, .hpp file, in namespace, export all
???

-JL = Generate package .lib, .bpi, and all .hpp files for C++
???

-K<addr> = Set image base addr
DCC_ImageBase

-LE<path> = package .bpl output directory
DCC_BplOutput

-LN<path> = package .dcp output directory
DCC_DcpOutput

-LU<package> = Use package
DCC_UsePackage

-M = Make modified units
DCC_MakeModifiedUnits

-NU<path> = unit .dcu output directory
DCC_DcuOutput

-NH<path> = unit .hpp output directory
DCC_HppOutput

-NO<path> = unit .obj output directory
DCC_ObjOutput

-NB<path> = unit .bpi output directory
DCC_BpiOutput

-NX<path> = unit .xml output directory
DCC_XmlOutput

-NS<namespaces> = Namespace search path
DCC_Namespace

-O<paths> = Object directories
DCC_ObjPath

-P = look for 8.3 file names also
DCC_OldDosFileNames

-Q = Quiet compile
DCC_Quiet

-R<paths> = Resource directories
DCC_ResourcePath

-TX<ext> = Output name extension
DCC_OutputExt

-U<paths> = Unit directories
DCC_UnitSearchPath

-V = Debug information in EXE
DCC_DebugInfoInExe

-VR = Generate remote debug (RSM)
DCC_RemoteDebug

-VT = Debug information in TDS
DCC_DebugInfoInTDS

-VN = TDS symbols in namespace
??

-W[+|-|^][warn_id] = Output warning messages
DCC_Warnings

-Z = Output 'never build' DCPs
DCC_OutputNeverBuildDcps

-$<dir> = Compiler directive
DCC_Define


Compiler Toggles:

A8  Aligned record fields                   
DCC_Alignment  (0, 1, 2, 4, 8)

B-  Full boolean Evaluation                 
DCC_FullBooleanEvaluations

C+  Evaluate assertions at runtime          
DCC_AssertionsAtRuntime

D+  Debug information                       
DCC_DebugInformation (0, 1, 2) [Depending on platform?]

G+  Use imported data references           
DCC_ImportedDataReferences

H+  Use long strings by default             
DCC_LongStrings

I+  I/O checking                            
DCC_IOChecking

J-  Writeable structured consts             
DCC_WriteableConstants   

L+  Local debug symbols                     
DCC_LocalDebugSymbols

M-  Runtime type info                       
DCC_RunTimeTypeInfo

O+  Optimization                            
DCC_Optimize

P+  Open string params                      
DCC_OpenStringParams

Q-  Integer overflow checking               
DCC_IntegerOverflowCheck

R-  Range checking                          
DCC_RangeChecking

T-  Typed @ operator                        
DCC_TypedAtParameter

U-  Pentium(tm)-safe divide                 
DCC_PentiumSafeDivide

V+  Strict var-strings                      
DCC_StrictVarStrings

W-  Generate stack frames                   
DCC_GenerateStackFrames

X+  Extended syntax                         
DCC_ExtendedSyntax

Y+  Symbol reference info                   
DCC_SymbolReferenceInfo (0, 1, 2) [Depending on platform?]

Z1  Minimum size of enum types              
DCC_MinimumEnumSize  (1, 2, 4)

 

 

  • Thanks 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×