A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/ziglang/zig/issues/20875 below:

`zig cc`, `zig c++`, `zig translate-c` and other subcommands without a clang/llvm dependency in the compiler binary · Issue #20875 · ziglang/zig · GitHub

This solves the last remaining blocker for #16270, which was proving tricky to find a satisfactory solution to.

What users experience right now is these subcommands being provided via a single binary distribution available from ziglang.org/dowload, as a zip or tarball.

Without a compiled version of LLVM and Clang inside the same executable as Zig, the equation shifts. Some proposed solutions are:

We can imagine combinations of these approaches as well, such as supporting prefetched packages in the zig installation directory and providing downloads that contain clang already prefetched in it.

The fundamental conflict comes down to:

Having typed this out, I think the solution is clear: both!

A separately maintained project should depend on Zig, Clang, and LLVM, and implement the extra utility on top of those dependencies. ziglang.org will continue to post only zig binaries; those binaries will no longer link against Clang and LLVM. This separate project which may or may not have its own website will post binaries whose invocations will look like zig-extras cc, zig-extras c++, zig-extras translate-c. The project could provide a strict superset of subcommands, making it a drop-in replacement for zig that supports those extra commands. I'm sure at least two dozen geniuses will suggest to name this project "zag".

Meanwhile, serious people will be 100% fine with the zig binary that does not depend on LLVM and Clang because they will have full access to these features via the all-powerful build system, and they already know that zig cc is a silly gimmick that is completely unnecessary for real world projects. Even so, those subcommands will work with this LLVM-less build of zig, because they will use the build system to fetch and cache the package that provides the necessary functionality.

RetroDev256, xdBronch, aliaiab, PauloCampana, alichraghi and 22 moreserby2000, jethrodaniel and Simon-Peleskaemidoots, ibara and lishaduck


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4