zed icon indicating copy to clipboard operation
zed copied to clipboard

Use winresource instead of embed-manifest

Open ognevny opened this issue 10 months ago • 6 comments

use winresource for crates/zed and crates/storybook. tested on x86_64-pc-windows-gnu. on x86_64-pc-windows-msvc I receive a error message, that looks like a problem with my machine   Release Notes:

  • N/A

ognevny avatar Apr 20 '24 17:04 ognevny

Just my opinion but I think that the Windows manifest should be moved into GPUI. Since GPUI requires it, this would eliminate the need for GPUI applications to manage the manifest separately themselves. This would also allow the GPUI examples to be able to run on windows since they don't bundle the manifest.

MatinAniss avatar Apr 21 '24 03:04 MatinAniss

@ognevny Can this be moved into GPUI's build.rs? If so, let's try doing that :)

mikayla-maki avatar Apr 22 '24 19:04 mikayla-maki

@ognevny Can this be moved into GPUI's build.rs? If so, let's try doing that :)

ok, I'll try to do this tomorrow

ognevny avatar Apr 22 '24 19:04 ognevny

only one question: should be both manifest and icon migrated or manifest only?

ognevny avatar Apr 22 '24 20:04 ognevny

Manifest only, icon should be done by the bundling application I think.

mikayla-maki avatar Apr 22 '24 20:04 mikayla-maki

it's impossible:

ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_module_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_globaltype_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.13.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_store_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_engine_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.13.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_store_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_store_context (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_func_new_unchecked (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_functype_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.12.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_module_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_error_message (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.10.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_module_imports (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_importtype_name (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_importtype_type (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_externtype_as_memorytype_const (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_memorytype_minimum (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_memorytype_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_memory_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_memorytype_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_valtype_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.12.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_tabletype_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_table_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_tabletype_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_globaltype_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.13.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_global_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.13.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_instance_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_trap_message (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_importtype_vec_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_module_exports (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_exporttype_name (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_instance_export_nth (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_exporttype_vec_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_table_grow (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_table_set (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_memory_grow (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_memory_data (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_trap_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_error_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.10.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_byte_vec_delete (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_caller_context (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_valtype_vec_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_valtype_vec_new_empty (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasm_functype_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.12.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_trap_new (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_func_call (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_memory_data_size (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.09.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_table_get (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: warning: libtree_sitter-950c250d752db8a1.rlib(e468e032d09b6be8-lib.o): locally defined symbol imported: wasmtime_func_call_unchecked (defined in libwasmtime_c_api-1a3493bb0bc57767.rlib(wasmtime_c_api-1a3493bb0bc57767.wasmtime_c_api.4f4c0d7ee572b402-cgu.04.rcgu.o)) [LNK4217]
          ld.lld: error: duplicate resource: type VERSIONINFO (ID 16)/name ID 1/language 1033, in resource.o and in resource.o
          x86_64-w64-mingw32-clang: error: linker command failed with exit code 1 (use -v to see invocation)

the problem is duplicated info, as WindowsResource struct creates a new one with some predefined values (name, version, etc...). also I found lots of LNK4217 while linking with lld (but it's not related to this PR). so, let's keep the first change as is

ognevny avatar Apr 23 '24 13:04 ognevny

Sounds good, thanks for checking!

mikayla-maki avatar Apr 24 '24 19:04 mikayla-maki