struct Directory [src]
Fields
source: LazyPath
dest_rel_path: []const u8
options: Directory.Options
Members
Source
pub const Directory = struct {
source: LazyPath,
dest_rel_path: []const u8,
options: Directory.Options,
pub const Options = struct {
/// File paths that end in any of these suffixes will be excluded from installation.
exclude_extensions: []const []const u8 = &.{},
/// Only file paths that end in any of these suffixes will be included in installation.
/// `null` means that all suffixes will be included.
/// `exclude_extensions` takes precedence over `include_extensions`.
include_extensions: ?[]const []const u8 = &.{".h"},
pub fn dupe(opts: Directory.Options, b: *std.Build) Directory.Options {
return .{
.exclude_extensions = b.dupeStrings(opts.exclude_extensions),
.include_extensions = if (opts.include_extensions) |incs| b.dupeStrings(incs) else null,
};
}
};
pub fn dupe(dir: Directory, b: *std.Build) Directory {
return .{
.source = dir.source.dupe(b),
.dest_rel_path = b.dupePath(dir.dest_rel_path),
.options = dir.options.dupe(b),
};
}
}