Class CBuilderXProjectWriter
- java.lang.Object
-
- net.sf.antcontrib.cpptasks.borland.CBuilderXProjectWriter
-
- All Implemented Interfaces:
ProjectWriter
public final class CBuilderXProjectWriter extends java.lang.Object implements ProjectWriter
Writes a CBuilderX 1.0 project file.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCBuilderXProjectWriter.PropertyWriterUtility class to generate property elements.
-
Constructor Summary
Constructors Constructor Description CBuilderXProjectWriter()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringgetActivePlatform(CCTask task)Gets active platform.private CommandLineCompilerConfigurationgetBaseCompilerConfiguration(java.util.Hashtable targets)Gets the first recognized compiler from the compilation targets.private java.lang.StringgetBuildType(CCTask task)Gets build type from link target.private java.lang.StringgetWin32Toolset(CommandLineCompilerConfiguration compilerConfig)private voidwriteCompileOptions(java.lang.String baseDir, CBuilderXProjectWriter.PropertyWriter writer, CommandLineCompilerConfiguration compilerConfig)Writes elements corresponding to compilation options.private voidwriteIlinkArgs(CBuilderXProjectWriter.PropertyWriter writer, java.lang.String linkID, java.lang.String[] args)Writes ilink32 linker options to project file.private voidwriteLdArgs(CBuilderXProjectWriter.PropertyWriter writer, java.lang.String linkID, java.lang.String[] preArgs)Writes ld linker options to project file.private voidwriteLinkOptions(java.lang.String baseDir, CBuilderXProjectWriter.PropertyWriter writer, TargetInfo linkTarget)Writes elements corresponding to link options.voidwriteProject(java.io.File fileName, CCTask task, ProjectDef projectDef, java.util.List sources, java.util.Hashtable targets, TargetInfo linkTarget)Writes a project definition file.
-
-
-
Method Detail
-
writeProject
public void writeProject(java.io.File fileName, CCTask task, ProjectDef projectDef, java.util.List sources, java.util.Hashtable targets, TargetInfo linkTarget) throws java.io.IOException, org.xml.sax.SAXExceptionWrites a project definition file.- Specified by:
writeProjectin interfaceProjectWriter- Parameters:
fileName- project name for file, should has .cbx extensiontask- cc task for which to write projectprojectDef- project elementsources- source filestargets- compilation targetslinkTarget- link target- Throws:
java.io.IOException- if I/O errororg.xml.sax.SAXException- if XML serialization error
-
getBuildType
private java.lang.String getBuildType(CCTask task)
Gets build type from link target.- Parameters:
task- CCTask current task- Returns:
- String build type
-
getActivePlatform
private java.lang.String getActivePlatform(CCTask task)
Gets active platform.- Parameters:
task- CCTask cc task- Returns:
- String platform identifier
-
getWin32Toolset
private java.lang.String getWin32Toolset(CommandLineCompilerConfiguration compilerConfig)
-
getBaseCompilerConfiguration
private CommandLineCompilerConfiguration getBaseCompilerConfiguration(java.util.Hashtable targets)
Gets the first recognized compiler from the compilation targets.- Parameters:
targets- compilation targets- Returns:
- representative (hopefully) compiler configuration
-
writeCompileOptions
private void writeCompileOptions(java.lang.String baseDir, CBuilderXProjectWriter.PropertyWriter writer, CommandLineCompilerConfiguration compilerConfig) throws org.xml.sax.SAXExceptionWrites elements corresponding to compilation options.- Parameters:
baseDir- String base directorywriter- PropertyWriter property writercompilerConfig- representative configuration- Throws:
org.xml.sax.SAXException- if I/O error or illegal content
-
writeLinkOptions
private void writeLinkOptions(java.lang.String baseDir, CBuilderXProjectWriter.PropertyWriter writer, TargetInfo linkTarget) throws org.xml.sax.SAXExceptionWrites elements corresponding to link options.- Parameters:
baseDir- String base directorywriter- PropertyWriter property writerlinkTarget- TargetInfo link target- Throws:
org.xml.sax.SAXException- if I/O error or illegal content
-
writeLdArgs
private void writeLdArgs(CBuilderXProjectWriter.PropertyWriter writer, java.lang.String linkID, java.lang.String[] preArgs) throws org.xml.sax.SAXException
Writes ld linker options to project file.- Parameters:
writer- PropertyWriter property writerlinkID- String linker identifierpreArgs- String[] linker arguments- Throws:
org.xml.sax.SAXException- thrown if unable to write option
-
writeIlinkArgs
private void writeIlinkArgs(CBuilderXProjectWriter.PropertyWriter writer, java.lang.String linkID, java.lang.String[] args) throws org.xml.sax.SAXException
Writes ilink32 linker options to project file.- Parameters:
writer- PropertyWriter property writerlinkID- String linker identifierpreArgs- String[] linker arguments- Throws:
org.xml.sax.SAXException- thrown if unable to write option
-
-