Documentation ¶
Index ¶
- func CopyFile(src, dest string) error
- func DecompressSourceArchive(filename string, dir string) error
- func Download(url string, dest string) error
- func ReplaceInFile(fileName, pattern, repl string) error
- type CMakeCmd
- type Config
- func (config Config) BinDir(p Package) string
- func (config Config) BuildDir(p Package) string
- func (config Config) CacheDir(archive SourceArchive) string
- func (config Config) IncludeDir(p Package) string
- func (config Config) InstallDir(p Package) string
- func (config Config) LibDir(p Package) string
- func (config Config) PkgConfigLibDir(p Package) string
- func (config Config) PkgConfigShareDir(p Package) string
- type ConfigureCmd
- type MakeCmd
- type Package
- type SourceArchive
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CopyFile ¶
CopyFile recursively copies the src to the dest, overwriting it if it already exists. TODO: Make into a purely go function, not shelled out to 'cp -rf'.
func DecompressSourceArchive ¶
Types ¶
type CMakeCmd ¶
type CMakeCmd struct { // Path to cmake binary // If empty, we will look up cmake on $PATH Path string // TODO: Rename to InstallPrefix Prefix string // Used when searching for include files and libraries // TODO: Rename to PrefixPath PathPrefix []string SourceDir string BuildDir string CacheEntries map[string]string Paths []string CFlags []string PkgConfigPaths []string }
type Config ¶
type Config struct { // where we assume applications will finally be installed. Prefix string // Where we store our tarballs. CacheFolder string // Where we extract and build our applications BuildFolder string // Where we install applications to keep them separate. InstallFolder string // How many cores are allocated to building applications. NumCores uint // We load from defaults, overwriting with the entries found in the config file. PackageVersions map[string]string }
func (Config) CacheDir ¶
func (config Config) CacheDir(archive SourceArchive) string
func (Config) IncludeDir ¶
func (Config) InstallDir ¶
func (Config) PkgConfigLibDir ¶
func (Config) PkgConfigShareDir ¶
type ConfigureCmd ¶
type ConfigureCmd struct { Prefix string Args []string CC string CPP string CXX string CFlags []string CppFlags []string CxxFlags []string LdFlags []string Libs []string Paths []string PkgConfigPaths []string Dir string }
func (ConfigureCmd) Cmd ¶
func (configure ConfigureCmd) Cmd() *exec.Cmd
type Package ¶
type Package interface { Name() string URL(version string) string // These execute in the checked out directory. // Should these take in a config object? Would make things much easier and flexible. Build(config Config) error Install(config Config) error Dependencies() []Package }
Package ...
type SourceArchive ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.