Fantom

 

abstract class

build::BuildPod

sys::Obj
  build::BuildScript
    build::BuildPod

BuildPod is the base class for build scripts used to manage building a Fantom source code and resources into a Fantom pod.

See docTools::Build for details.

Slots

cleanSource

@Target
virtual Void clean()

Delete all intermediate and target files

compileSource

@Target
virtual Void compile()

Compile the source into a pod file and all associated natives. See compileFan, compileJava, and compileDotnet.

compileDotnetSource

virtual Void compileDotnet()

Compile native .NET assembly is podDotnetDirs configured

compileFanSource

virtual Void compileFan()

Compile Fan code into pod file

compileJavaSource

virtual Void compileJava()

Compile native Java jar file if podJavaDirs is configured

dependsSource

Str[] depends := Str[,]

List of dependencies for pod formatted as sys::Depend.

dependsDirSource

Uri? dependsDir := null

The directory to look in for the dependency pod file (and potentially their recursive dependencies). If null then we use the compiler's own pod definitions via reflection (which is more efficient). As a general rule you shouldn't mess with this field - it is used by the build and compiler build scripts for bootstrap build.

docSource

@Target
virtual Void doc()

Build the HTML documentation

docApiSource

Bool docApi := true

Indicates if if fandoc API should be included in the documentation. By default API is included.

docSrcSource

Bool docSrc := false

Indicates if if source code should be included in the documentation. By default source code it not included.

dotnetDirsSource

Uri[]? dotnetDirs

List of Uris relative to build script of directories containing the C# source files to compile for .NET native methods.

fullSource

@Target
virtual Void full()

Run clean, compile, and test

indexSource

Str:Obj index := [Str:Obj][:]

Pod index name/value pairs to compile into pod. See sys::Env.index. The index values can be a single Str or a Str[] if there are multiple values mapped to one key.

javaDirsSource

Uri[]? javaDirs

List of Uris relative to build script of directories containing the Java source files to compile for Java native methods.

jsDirsSource

Uri[]? jsDirs

List of Uris relative to build script of directories containing the JavaScript source files to compile for JavaScript native methods.

metaSource

Str:Str meta := ...

Pod meta-data name/value pairs to compile into pod. See sys::Pod.meta.

outDirSource

Uri outDir := Env.cur().workDir().plus(`lib/fan/`).uri

Directory to write pod file. By default it goes into "{Env.cur.workDir}/lib/fan/"

podNameSource

Str? podName := null

Required name of the pod.

resDirsSource

Uri[]? resDirs

List of Uris relative to build script of directories of resources files to package into pod zip file. Optional.

srcDirsSource

Uri[]? srcDirs

List of Uris relative to build script of directories containing the Fan source files to compile.

summarySource

Str? summary := null

Required summary description of pod.

testSource

@Target
virtual Void test()

Run the unit tests using fant for this pod

versionSource

Version version := ...

Version of the pod - default is set to config prop buildVersion.