Documentation ¶
Index ¶
- Variables
- func NewCopyImageFileAction(pathImage osutil.Path, bc *build.Context) action.WithDescription[action.Function]
- type Base
- type BaseWithoutFeature
- type Linux
- type LinuxWithFeaturesAndProfile
- type LinuxWithProfile
- type MacOS
- type MacOSWithFeaturesAndProfile
- type MacOSWithProfile
- type Platforms
- type Template
- type Templates
- type Vulkan
- type Windows
- type WindowsWithFeaturesAndProfile
- type WindowsWithProfile
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidInput = errors.New("invalid input") ErrMissingInput = errors.New("missing input") )
Functions ¶
func NewCopyImageFileAction ¶
func NewCopyImageFileAction( pathImage osutil.Path, bc *build.Context, ) action.WithDescription[action.Function]
NewCopyImageFileAction creates an 'action.Action' which places the specified icon image into the Godot source code.
Types ¶
type Base ¶
type Base struct { // Arch is the CPU architecture of the Godot export template. Arch platform.Arch `toml:"arch"` // CustomModules is a list of paths to custom modules to include in the // template build. CustomModules []osutil.Path `toml:"custom_modules"` // DoublePrecision enables double floating-point precision. DoublePrecision *bool `toml:"double_precision"` // EncryptionKey is the encryption key to embed in the export template. EncryptionKey string `toml:"encryption_key"` // Env is a map of environment variables to set during the build step. Env map[string]string `toml:"env"` // Hook defines commands to be run before or after a build step. Hook build.Hook `toml:"hook"` // Optimize is the specific optimization level for the template. Optimize build.Optimize `toml:"optimize"` // PathCustomPy is a path to a 'custom.py' file which defines export // template build options. PathCustomPy osutil.Path `toml:"custom_py_path"` // SCons contains build command-related settings. SCons build.SCons `toml:"scons"` }
Base contains platform-agnostic settings for constructing a custom Godot export template.
type BaseWithoutFeature ¶
type Linux ¶
type Linux struct { *Base // UseLLVM determines whether the LLVM compiler is used. UseLLVM *bool `toml:"use_llvm"` }
type LinuxWithProfile ¶
type MacOS ¶
type MacOS struct { *Base // LipoCommand contains arguments used to invoke 'lipo'. Defaults to // ["lipo"]. Only used if 'arch' is set to 'platform.ArchUniversal'. LipoCommand []string `toml:"lipo_command"` // Vulkan defines Vulkan-related configuration. Vulkan Vulkan `toml:"vulkan"` }
type MacOSWithProfile ¶
type Platforms ¶
type Platforms struct { Linux LinuxWithFeaturesAndProfile `toml:"linux"` MacOS MacOSWithFeaturesAndProfile `toml:"macos"` Windows WindowsWithFeaturesAndProfile `toml:"windows"` }
type Templates ¶
type Templates struct { *Base Platform Platforms `toml:"platform"` Feature map[string]BaseWithoutFeature `toml:"feature"` Profile map[build.Profile]Base `toml:"profile"` }
Template defines the parameters for building a Godot export template for a specified platform. A 'Template' definition can be customized based on 'feature', 'platform', and 'profile' labels used in the property names. Note that each specifier label can only be used once per property name (i.e. 'target.profile.release.profile.debug' is not allowed). Additionally, the order of specifiers is strict: 'platform' < 'feature' < 'profile'.
For example, the following are all valid table names:
[template] [template.profile.release] [template.platform.macos.feature.client] [template.platform.linux.feature.server.profile.release_debug]
type Vulkan ¶
type Vulkan struct { // Dynamic enables dynamically linking Vulkan to the template. Dynamic *bool `toml:"use_volk"` // PathSDK is the path to the Vulkan SDK root. PathSDK osutil.Path `toml:"sdk_path"` }
Vulkan defines the settings required by the MacOS template for including Vulkan support.
type Windows ¶
type Windows struct { *Base // UseMinGW determines whether the MinGW compiler is used. UseMinGW *bool `toml:"use_mingw"` // PathIcon is a path to a Windows application icon. PathIcon osutil.Path `toml:"icon_path"` }