DManager.Component

Base class for a D component.

Members

Functions

getBuildID
string getBuildID()

Calculates the cache key, which should be unique and immutable for the same source, build parameters, and build algorithm.

getMake
string[] getMake(Environment env)

Returns the command for the make utility.

getMetadata
Metadata getMetadata()
Undocumented in source. Be warned that the author may not have intended to support it.
getPlatformMakeVars
string[] getPlatformMakeVars(Environment env, string model)
Undocumented in source. Be warned that the author may not have intended to support it.
install
void install()

Copy build results from cacheDir to buildDir

makeFileNameModel
string makeFileNameModel(string model)
Undocumented in source. Be warned that the author may not have intended to support it.
makeFileNameModel
string makeFileNameModel(string model)
Undocumented in source. Be warned that the author may not have intended to support it.
modelSuffix
string modelSuffix(string model)
Undocumented in source. Be warned that the author may not have intended to support it.
needBuild
void needBuild()

Build the component in-place, as needed, without moving the built files anywhere.

needCC
void needCC(Environment env, string model, string dmcVer)
Undocumented in source. Be warned that the author may not have intended to support it.
needInstalled
void needInstalled()

Build and "install" the component to buildDir as necessary.

needSource
void needSource()

Prepare the source checkout for this component. Usually needed by other components.

performBuild
void performBuild()

Build the component in-place, without moving the built files anywhere.

performStage
void performStage()

Place resulting files to stageDir

performTest
void performTest()

Run the component's tests.

run
void run(string[] args, string[string] newEnv, string dir)
Undocumented in source. Be warned that the author may not have intended to support it.
saveMetaData
void saveMetaData(string target)
Undocumented in source. Be warned that the author may not have intended to support it.
test
void test()

Prepare the dependencies then run the component's tests.

updateEnv
void updateEnv(Environment env)

Update the environment post-install, to allow building components that depend on this one.

Manifest constants

platform
enum platform;
Undocumented in source.
platform
enum platform;
Undocumented in source.
platform
enum platform;
Undocumented in source.
platform
enum platform;
Undocumented in source.

Properties

commit
string commit [@property getter]

Commit in the component's repo from which to build this component.

configString
string configString [@property getter]

A string description of this component's configuration.

dMakeArgs
string[] dMakeArgs [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
dependencies
string[] dependencies [@property getter]

The components the state and configuration of which this component depends on. Used for calculating the cache key.

dmd
string dmd [@property getter]

Returns the path to the built dmd executable.

gnuMakeArgs
string[] gnuMakeArgs [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
sourceDependencies
string[] sourceDependencies [@property getter]

The components the source code of which this component depends on. Used for calculating the cache key.

sourceDir
string sourceDir [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
submodule
ManagedRepository submodule [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
submoduleName
string submoduleName [@property getter]

Corresponding subproject repository name.

Static functions

findMakeFile
string findMakeFile(string dir, string fn)

Older versions did not use the posix.mak/win32.mak convention.

Structs

CommonConfig
struct CommonConfig

Configuration applicable to multiple (not all) components.

Metadata
struct Metadata

This metadata is saved to a .json file, and is also used to calculate the cache key.

Variables

binExt
enum string binExt;
Undocumented in source.
binExt
enum string binExt;
Undocumented in source.
makeFileName
enum string makeFileName;
Undocumented in source.
makeFileName
enum string makeFileName;
Undocumented in source.
name
string name;

Name of this component, as registered in DManager.components AA.

stageDir
string stageDir;

Directory to which built files are copied to. This will then be atomically added to the cache.

Meta