DoxigAlpha

Compile

Fields of this type

Fields

#
root_module:*Module
name:[]const u8
linker_script:?LazyPath
= null
version_script:?LazyPath
= null
out_filename:[]const u8
out_lib_filename:[]const u8
linkage:?std.builtin.LinkMode
= null
version:?std.SemanticVersion
major_only_filename:?[]const u8
name_only_filename:?[]const u8
formatted_panics:?bool
= null
compress_debug_sections:enum { none, zlib, zstd }
= .none
verbose_link:bool
verbose_cc:bool
bundle_compiler_rt:?bool
= null
bundle_ubsan_rt:?bool
= null
rdynamic:bool
import_memory:bool
= false
export_memory:bool
= false
import_symbols:bool
For WebAssembly targets, this will allow for undefined symbols to
import_table:bool
= false
export_table:bool
= false
initial_memory:?u64
= null
max_memory:?u64
= null
shared_memory:bool
= false
global_base:?u64
= null
zig_lib_dir:?LazyPath
Set via options; intended to be read-only after that.
exec_cmd_args:?[]const ?[]const u8
filters:[]const []const u8
test_runner:?TestRunner
wasi_exec_model:?std.builtin.WasiExecModel
= null
installed_headers:std.array_list.Managed(HeaderInstallation)
installed_headers_include_tree:?*Step.WriteFile
This step is used to create an include tree that dependent modules can add to their include
rc_includes:enum { any, msvc, gnu, none }
Behavior of automatic detection of include directories when compiling .rc files.
win32_manifest:?LazyPath
(Windows) .manifest file to embed in the compilation
installed_path:?[]const u8
image_base:?u64
Base address for an executable image.
libc_file:?LazyPath
= null
each_lib_rpath:?bool
= null
build_id:?std.zig.BuildId
On ELF targets, this will emit a link section called ".note.gnu.build-id"
link_eh_frame_hdr:bool
Create a .eh_frame_hdr section and a PT_GNU_EH_FRAME segment in the ELF
link_emit_relocs:bool
= false
link_function_sections:bool
Place every function in its own section so that unused ones may be
link_data_sections:bool
Place every data in its own section so that unused ones may be
link_gc_sections:?bool
Remove functions and data that are unreachable by the entry point or
linker_dynamicbase:bool
(Windows) Whether or not to enable ASLR.
linker_allow_shlib_undefined:?bool
= null
linker_allow_undefined_version:?bool
Allow version scripts to refer to undefined symbols.
linker_enable_new_dtags:?bool
= null
link_z_notext:bool
Permit read-only relocations in read-only segments.
link_z_relro:bool
Force all relocations to be read-only after processing.
link_z_lazy:bool
Allow relocations to be lazily processed after load.
link_z_common_page_size:?u64
Common page size
link_z_max_page_size:?u64
Maximum page size
install_name:?[]const u8
(Darwin) Install name for the dylib
entitlements:?[]const u8
(Darwin) Path to entitlements file
pagezero_size:?u64
(Darwin) Size of the pagezero segment.
headerpad_size:?u32
(Darwin) Set size of the padding between the end of load commands
headerpad_max_install_names:bool
(Darwin) Automatically Set size of the padding between the end of load commands
dead_strip_dylibs:bool
(Darwin) Remove dylibs that are unreachable by the entry point or exported symbols.
force_load_objc:bool
(Darwin) Force load all members of static archives that implement an Objective-C class or category
discard_local_symbols:bool
Whether local symbols should be discarded from the symbol table.
pie:?bool
Position Independent Executable
lto:?std.zig.LtoMode
Link Time Optimization mode
dll_export_fns:?bool
= null
subsystem:?std.Target.SubSystem
= null
mingw_unicode_entry_point:bool
(Windows) When targeting the MinGW ABI, use the unicode entry point (wmain/wWinMain)
entry:Entry
How the linker must handle the entry point of the executable.
force_undefined_symbols:std.StringHashMap(void)
List of symbols forced as undefined in the symbol table
stack_size:?u64
Overrides the default stack size
want_lto:?bool
Deprecated; prefer using `lto`.
use_llvm:?bool
use_lld:?bool
allow_so_scripts:?bool
Corresponds to the `-fallow-so-scripts` / `-fno-allow-so-scripts` CLI
expect_errors:?ExpectedCompileErrors
This is an advanced setting that can change the intent of this Compile step.
emit_directory:?*GeneratedFile
generated_docs:?*GeneratedFile
generated_asm:?*GeneratedFile
generated_bin:?*GeneratedFile
generated_pdb:?*GeneratedFile
generated_implib:?*GeneratedFile
generated_llvm_bc:?*GeneratedFile
generated_llvm_ir:?*GeneratedFile
generated_h:?*GeneratedFile
error_limit:?u32
The maximum number of distinct errors within a compilation step
is_linking_libc:bool
Computed during make().
is_linking_libcpp:bool
Computed during make().
zig_process:?*Step.ZigProcess
Populated during the make phase when there is a long-lived compiler process.
sanitize_coverage_trace_pc_guard:?bool
Enables coverage instrumentation that is only useful if you are using third

Type definitions in this namespace

Types

#

Functions in this namespace

Functions

#
installHeader
Marks the specified header for installation alongside this artifact.
installHeadersDirectory
Marks headers from the specified directory for installation alongside this artifact.
installConfigHeader
Marks the specified config header for installation alongside this artifact.
installLibraryHeaders
Forwards all headers marked for installation from `lib` to this artifact.
dependsOnSystemLibrary
Returns whether the library, executable, or object depends on a particular system library.
linkLibC
Deprecated; use `compile.root_module.link_libc = true` instead.
linkLibCpp
Deprecated; use `compile.root_module.link_libcpp = true` instead.
linkSystemLibrary
Deprecated; use `compile.root_module.linkSystemLibrary(name, .{})` instead.
linkSystemLibrary2
Deprecated; use `compile.root_module.linkSystemLibrary(name, options)` instead.
linkFramework
Deprecated; use `c.root_module.linkFramework(name, .{})` instead.
addCSourceFiles
Deprecated; use `compile.root_module.addCSourceFiles(options)` instead.
addCSourceFile
Deprecated; use `compile.root_module.addCSourceFile(source)` instead.
addWin32ResourceFile
Deprecated; use `compile.root_module.addWin32ResourceFile(source)` instead.
getEmittedBinDirectory
Returns the path to the directory that contains the emitted binary file.
getEmittedBin
Returns the path to the generated executable, library or object file.
getEmittedImplib
Returns the path to the generated import library.
getEmittedH
Returns the path to the generated header file.
getEmittedPdb
Returns the generated PDB file.
getEmittedDocs
Returns the path to the generated documentation directory.
getEmittedAsm
Returns the path to the generated assembly code.
getEmittedLlvmIr
Returns the path to the generated LLVM IR.
getEmittedLlvmBc
Returns the path to the generated LLVM BC.
addAssemblyFile
Deprecated; use `compile.root_module.addAssemblyFile(source)` instead.
addObjectFile
Deprecated; use `compile.root_module.addObjectFile(source)` instead.
addObject
Deprecated; use `compile.root_module.addObject(object)` instead.
linkLibrary
Deprecated; use `compile.root_module.linkLibrary(library)` instead.
addAfterIncludePath
Deprecated; use `compile.root_module.addAfterIncludePath(lazy_path)` instead.
addSystemIncludePath
Deprecated; use `compile.root_module.addSystemIncludePath(lazy_path)` instead.
addIncludePath
Deprecated; use `compile.root_module.addIncludePath(lazy_path)` instead.
addConfigHeader
Deprecated; use `compile.root_module.addConfigHeader(config_header)` instead.
addEmbedPath
Deprecated; use `compile.root_module.addEmbedPath(lazy_path)` instead.
addLibraryPath
Deprecated; use `compile.root_module.addLibraryPath(directory_path)` instead.
addRPath
Deprecated; use `compile.root_module.addRPath(directory_path)` instead.
addSystemFrameworkPath
Deprecated; use `compile.root_module.addSystemFrameworkPath(directory_path)` instead.
addFrameworkPath
Deprecated; use `compile.root_module.addFrameworkPath(directory_path)` instead.
getCompileDependencies
Return the full set of `Step.Compile` which `start` depends on, recursively.

= .compile

Values

#
base_id
= .compile