--
All posts must follow the Fuchsia Code of Conduct https://fuchsia.dev/fuchsia-src/CODE_OF_CONDUCT or may be removed.
---
You received this message because you are subscribed to the Google Groups "sdk-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/fuchsia.dev/d/msgid/sdk-dev/CAAr6sCcTHYr66-ktm-cxXB%3DB2Pwf4RO2iM95t8H56_GfgnjXvw%40mail.gmail.com.
Some related observations:
- Unlike static and shared libraries, there is not a GN template (e.g., //build/cpp/sdk_shared_library.gni) for loadable modules.
- Instead, //src/lib/vulkan/BUILD.gn does lower level work than possibly any other SDK component.
- Even though there is currently only one instance, it may be better to have everything in one place.
- Even with those templates, the IDK build is currently fragile with respect to naming and the checks are insufficient (https://fxbug.dev/323441662), so checking the resulting IDK and LSC will be important if changing anything other than metadata.
- Chromium's GN SDK may also need to be updated if the schema is changed.
Would it make more sense for us to add a new IDK type for an artifact that is basically a type erased resource that can be put into a package? IIRC, the vulkan layers contain both json files and shared objects but all the end user needs to care about is where to install them. If we create this new type we don't need to worry about breaking down stream users and we get the benefit of being able to distribute these modules in a way that doesn't make assumptions about how they should be used.
On Wed, Mar 6, 2024 at 4:05 PM David Dorwin <[email protected]> wrote:Some related observations:
- Unlike static and shared libraries, there is not a GN template (e.g., //build/cpp/sdk_shared_library.gni) for loadable modules.
- Instead, //src/lib/vulkan/BUILD.gn does lower level work than possibly any other SDK component.
- Even though there is currently only one instance, it may be better to have everything in one place.
- Even with those templates, the IDK build is currently fragile with respect to naming and the checks are insufficient (https://fxbug.dev/323441662), so checking the resulting IDK and LSC will be important if changing anything other than metadata.
- Chromium's GN SDK may also need to be updated if the schema is changed.
Does Chromium use the GN SDK generated by scripts/sdk/gn/generate.py in the Fuchsia tree, or does it have its own generator?
Replied on the CL, but I think I'd prefer something more specific. "loadable_modules" was very difficult to understand because it was so generic, when actually there was only one use of it, which was quite specific, and SDKs made use of that knowledge.Can we just call it `vulkan_layer` or something?