gpu-dawn: strip debug info for release builds

This commit is contained in:
Ali Chraghi 2022-10-20 19:31:23 +03:30 committed by Stephen Gutekanst
parent af357c0a8a
commit 06ff56b36e

View file

@ -134,10 +134,11 @@ pub fn Sdk(comptime deps: anytype) type {
return; return;
} }
const main_abs = sdkPath("/src/dawn/dummy.zig"); const lib_dawn = b.addStaticLibrary("dawn", null);
const lib_dawn = b.addStaticLibrary("dawn", main_abs);
lib_dawn.setBuildMode(if (options.debug) .Debug else .ReleaseFast); lib_dawn.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
lib_dawn.setTarget(step.target); lib_dawn.setTarget(step.target);
if (!options.debug)
lib_dawn.strip = true;
lib_dawn.linkLibCpp(); lib_dawn.linkLibCpp();
if (options.install_libs) if (options.install_libs)
lib_dawn.install(); lib_dawn.install();
@ -567,10 +568,11 @@ pub fn Sdk(comptime deps: anytype) type {
fn buildLibMachDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibMachDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-native-mach", null);
const separate_lib = b.addStaticLibrary("dawn-native-mach", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -603,10 +605,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Builds common sources; derived from src/common/BUILD.gn // Builds common sources; derived from src/common/BUILD.gn
fn buildLibDawnCommon(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDawnCommon(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-common", null);
const separate_lib = b.addStaticLibrary("dawn-common", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -656,10 +659,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Build dawn platform sources; derived from src/dawn/platform/BUILD.gn // Build dawn platform sources; derived from src/dawn/platform/BUILD.gn
fn buildLibDawnPlatform(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDawnPlatform(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-platform", null);
const separate_lib = b.addStaticLibrary("dawn-platform", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -728,10 +732,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Builds dawn native sources; derived from src/dawn/native/BUILD.gn // Builds dawn native sources; derived from src/dawn/native/BUILD.gn
fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-native", null);
const separate_lib = b.addStaticLibrary("dawn-native", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1000,10 +1005,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Builds tint sources; derived from src/tint/BUILD.gn // Builds tint sources; derived from src/tint/BUILD.gn
fn buildLibTint(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibTint(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("tint", null);
const separate_lib = b.addStaticLibrary("tint", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1148,10 +1154,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Builds third_party/vulkan-deps/spirv-tools sources; derived from third_party/vulkan-deps/spirv-tools/src/BUILD.gn // Builds third_party/vulkan-deps/spirv-tools sources; derived from third_party/vulkan-deps/spirv-tools/src/BUILD.gn
fn buildLibSPIRVTools(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibSPIRVTools(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("spirv-tools", null);
const separate_lib = b.addStaticLibrary("spirv-tools", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1216,10 +1223,11 @@ pub fn Sdk(comptime deps: anytype) type {
// //
fn buildLibAbseilCpp(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibAbseilCpp(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("abseil-cpp-common", null);
const separate_lib = b.addStaticLibrary("abseil-cpp-common", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1278,10 +1286,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Buids dawn wire sources; derived from src/dawn/wire/BUILD.gn // Buids dawn wire sources; derived from src/dawn/wire/BUILD.gn
fn buildLibDawnWire(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDawnWire(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-wire", null);
const separate_lib = b.addStaticLibrary("dawn-wire", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1315,10 +1324,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Builds dawn utils sources; derived from src/dawn/utils/BUILD.gn // Builds dawn utils sources; derived from src/dawn/utils/BUILD.gn
fn buildLibDawnUtils(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDawnUtils(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dawn-utils", null);
const separate_lib = b.addStaticLibrary("dawn-utils", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();
@ -1390,10 +1400,11 @@ pub fn Sdk(comptime deps: anytype) type {
// Buids dxcompiler sources; derived from libs/DirectXShaderCompiler/CMakeLists.txt // Buids dxcompiler sources; derived from libs/DirectXShaderCompiler/CMakeLists.txt
fn buildLibDxcompiler(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep { fn buildLibDxcompiler(b: *Builder, step: *std.build.LibExeObjStep, options: Options) !*std.build.LibExeObjStep {
const lib = if (!options.separate_libs) step else blk: { const lib = if (!options.separate_libs) step else blk: {
const main_abs = sdkPath("/src/dawn/dummy.zig"); const separate_lib = b.addStaticLibrary("dxcompiler", null);
const separate_lib = b.addStaticLibrary("dxcompiler", main_abs);
separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast); separate_lib.setBuildMode(if (options.debug) .Debug else .ReleaseFast);
separate_lib.setTarget(step.target); separate_lib.setTarget(step.target);
if (!options.debug)
separate_lib.strip = true;
separate_lib.linkLibCpp(); separate_lib.linkLibCpp();
if (options.install_libs) if (options.install_libs)
separate_lib.install(); separate_lib.install();