Note: This is a module for NimScript; do not import from Nim modules. If you want to get the information configured by this module from Nim modules, import gdext/private/buildsettings instead.
Types
Architecture = enum default, ## HostCPU. The architecture what you use double, ## double-precision build single, ## single-precision build x86_64, ## 64-bit x86 build arm64, ## 64-bit ARM build rv64, ## 64-bit RISC-V build riscv, ## RISC-V build (any bitness) wasm32 ## 32-bit WebAssembly build
- Godot Docs: Architecture
BuildSettings = ref object name*: string ## The name of the extension. ## It affects the name of the generated file and ## the name of the class that emulates the top level of Nim. extpath*: string ## The path to the .gdextension file. ## If empty, the default path is applied. ## If the file does not exist, a new one is created there. entrySymbol*: string = "init_library" ## The name of the function ## Godot will call when initializing the extension. ## Usually does not need to be changed. platform*: Platform = linux ## Actually depends on your hostOS ## Specify the platform to build. The default value is the OS used for ## the build. ## You can override the value also with the `-d:platform=XXX` command line option. target*: Target = debug ## Specifies the use of the binary. ## `-d:release` is automatically set only if Target.release is specified. ## You can override the value also with the `-d:target=XXX` command line option. arch*: Architecture = default ## Specify the CPU architecture on which the binary will run. ## You can override the value also with the `-d:arch=XXX` command line option. updateMethod*: UpdateMethod = create genEditorHelp*: bool = true ## Specifies whether to generate in-editor class references.
Platform = enum windows, ## Windows operating system macos, ## Mac operating system linux, ## Linux operating system android, ## Android operating system ios, ## iOS operating system web ## Web browser
- Godot Docs: Running System
Target = enum debug, ## Target with debug symbols release, ## Optimized build without debug symbols editor ## Editor build
- Godot Docs: Build
UpdateMethod = enum create, ## Discard the original file and create a new one overwrite, ## Retain the original changes and overwrites the updated ones inject ## Retain the original changes and inject the missing ones
- Methods by which the gdext build system updates files
Procs
proc cmdswitched(_: typedesc[Architecture]): bool
proc cmdswitched(_: typedesc[Platform]): bool
proc cmdswitched(_: typedesc[Target]): bool
proc configure(setting: BuildSettings) {....raises: [IOError, OSError, Exception, ValueError, KeyError, CatchableError], tags: [ReadDirEffect, ReadIOEffect, WriteIOEffect, RootEffect], forbids: [].}
Templates
template configure(setting: BuildSettings; body)