Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

system_sdk: Vulkan and OpenGL cross compilation #59

Closed
slimsag opened this issue Oct 31, 2021 · 1 comment
Closed

system_sdk: Vulkan and OpenGL cross compilation #59

slimsag opened this issue Oct 31, 2021 · 1 comment

Comments

@slimsag
Copy link
Member

slimsag commented Oct 31, 2021

The Mach system SDKs should include what is necessary for mach-glfw to cross-compile when using Vulkan and OpenGL. This likely just requires including the right libraries etc. in the system SDKs. Currently included is:

  • MacOS: Everything for GLFW, OpenGL and Metal development. Missing Vulkan development.
  • Linux: Everything for GLFW. Missing OpenGL and Vulkan development.
  • Windows: Zig includes OpenGL support I believe. Missing Vulkan.

This work will be easy to reuse for anybody wishing to cross-compile / build their own OpenGL/Vulkan code in Zig as well. See https://github.com/hexops/mach/blob/main/glfw/system_sdk.zig

Other things that I've heard from the incredible @Snektron regarding Vulkan cross compilation:

By the way, i can let you on in on a secret, and that is if you wish to impress andrew you can make a completely static linux binary by integrating the amdvlk stack directly

I also have GenerateStep.initFromSdk [in vulkan-zig] which can help you fetch vk.xml, "which might also be interesting to know for your system sdk setup

@slimsag slimsag added the glfw label Oct 31, 2021
slimsag added a commit that referenced this issue Mar 4, 2022
This effectively provides all you need to develop & cross compile DirectX 11/12
applications with `mach/glfw` (or just Zig in general, by copying `system_sdk.zig`
into your own project.)

Helps #86
Helps #59

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
slimsag added a commit to slimsag/mach-glfw that referenced this issue Mar 4, 2022
This effectively provides all you need to develop & cross compile DirectX 11/12
applications with `mach/glfw` (or just Zig in general, by copying `system_sdk.zig`
into your own project.)

Helps hexops/mach#86
Helps hexops/mach#59

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
slimsag added a commit to slimsag/mach-glfw that referenced this issue Aug 26, 2022
This effectively provides all you need to develop & cross compile DirectX 11/12
applications with `mach/glfw` (or just Zig in general, by copying `system_sdk.zig`
into your own project.)

Helps hexops/mach#86
Helps hexops/mach#59

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
slimsag added a commit to slimsag/mach-glfw that referenced this issue Aug 26, 2022
This effectively provides all you need to develop & cross compile DirectX 11/12
applications with `mach/glfw` (or just Zig in general, by copying `system_sdk.zig`
into your own project.)

Helps hexops/mach#86
Helps hexops/mach#59

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
@slimsag slimsag added this to the /dev/null milestone Sep 1, 2022
@slimsag slimsag changed the title Vulkan and OpenGL cross compilation system_sdk: Vulkan and OpenGL cross compilation Sep 1, 2022
@slimsag
Copy link
Member Author

slimsag commented Sep 25, 2023

system_sdk is no longer a monolithic concept, and this issue is largely addressed by our C packages and header libraries today: https://machengine.org/pkg/c/

@slimsag slimsag closed this as completed Sep 25, 2023
@slimsag slimsag modified the milestones: /dev/null, Mach 0.3 Sep 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant