aboutsummaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2021-01-19SPIR-V: Spec generatorRobin Voetter
2021-01-18stage2: use %type not @type for libc stubsJulian Maingot
Missed a couple places last time so just doing the rest.
2021-01-11stage2: cleanups regarding red zone CLI flagsAndrew Kelley
* CLI: change to -mred-zone and -mno-red-zone to match gcc/clang. * build.zig: remove the double negative and make it an optional bool. This follows precedent from other flags, allowing the compiler CLI to be the decider of what is default instead of duplicating the default value into the build system code. * Compilation: make it an optional `want_red_zone` instead of a `no_red_zone` bool. The default is decided by a call to `target_util.hasRedZone`. * When creating a Clang command line, put -mred-zone on the command line if we are forcing it to be enabled. * Update update_clang_options.zig with respect to the recent {s}/{} format changes. * `zig cc` integration with red zone preference.
2021-01-07Reduce use of deprecated IO typesJay Petacat
Related: #4917
2020-12-23gdb pretty printers for slices and optionalsxackus
2020-12-23update depreciated code (#7502)g-w1
* `zig env`: * fix depreciated interface, update outStream -> writer * make code more readable by updating `anytype` -> `std.fs.File.Writer`
2020-12-13stage2: use %type not @type for libc stubsIsaac Freund
Apparently ARM uses @ for comments. Everything seems to accept % here though.
2020-12-12Merge pull request #7406 from ifreund/dyn-musl2Andrew Kelley
stage2: support dynamically linking musl libc
2020-12-13stage2: support dynamically linking musl libcIsaac Freund
2020-12-12glibc: do not provide -lcryptAndrew Kelley
glibc is dropping this functionality moving forward. This is a partial revert of commit 97c0e1cc41c24c6cbb60117751d5b82dcd9d0e43
2020-12-08glibc: additionally provide -lcryptAndrew Kelley
also remove redundant "util" string matching.
2020-11-22modernize the PIE patch for the latest master branchAndrew Kelley
This is the part of #3960 that has to be rewritten to apply to latest master branch code.
2020-11-19stage2: Make zig cc more verbose (#7166)LemonBoy
* stage2: Make zig cc more verbose Make `zig cc` print more info from Clang itself and from our own linker invocation, this is needed for CMake to properly discover all the include directories and library search paths. Closes #7110 * Update `update_clang_options` * Typo fixes Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
2020-11-18Merge pull request #7005 from jshholland/deprecate-spanVeikka Tuominen
Remove ArrayList.span
2020-11-07remove deprecated uses of ArrayList.spanJosh Holland
2020-11-06update process_headers toolAndrew Kelley
2020-10-09tools/update_clang_options: add zig run usage example. fix src-self-hosted ↵redj
path. (#6635) * tools/update_clang_options: fix src-self-hosted path now simply src. * tools/update_clang_options: add zig run usage example.
2020-10-07notice more kinds of optimization flags and debug flagsxavier
Closes #6091
2020-09-25stage2: properly handle zig cc used as a preprocessorAndrew Kelley
This cleans up how the CLI parses and handles -E, -S, and -c. Compilation explicitly acknowledges when it is being used to do C preprocessing. -S is properly translated to -fno-emit-bin -femit-asm but Compilation does not yet handle -femit-asm. There is not yet a mechanism for skipping the linking step when there is only a single object file, and so to make this work we have to do a file copy in link.flush() to copy the file from zig-cache into the output directory.
2020-08-30fix tools/process_headers.zig regressionAndrew Kelley
When upgrading to the new std lib HashMap API, the process_headers code regressed because something that was supposed to be a pointer ended up being a copy of a value. This resulted in the modification of a field not being picked up. Also switch from Sha256 to Blake3 while we're at it.
2020-08-22update update_glibc and process_headers to latest zigJan200101
2020-08-21Update tools/process_headers.zigFrank Denis
2020-08-20Breaking: sort std/crypto functions into categoriesFrank Denis
Instead of having all primitives and constructions share the same namespace, they are now organized by category and function family. Types within the same category are expected to share the exact same API.
2020-08-10Update tools/process_headers.zig to latest zigjoachimschmidt557
2020-06-12Fix a few std.sort.sort invocationsCassidy Dingenskirchen
2020-05-07stage1: add ZigList gdb pretty printingxackus
2020-04-04zig cc looks for native include directories unless -nostdincAndrew Kelley
closes #4938
2020-04-04add libutil to zig's glibc supportAndrew Kelley
2020-04-03Merge pull request #4868 from xackus/new-arraylist-apiAndrew Kelley
new ArrayList API
2020-04-03Update all remaining uses of &outStream().streamRyan Liptak
2020-04-02zig cc: fix ambiguity with -MTAndrew Kelley
In an MSVC context, `-MT` means "Use static run-time" and it is a flag with no parameter. On POSIX it means "Specify name of main file output in depfile" and it is "joined or separate". The former was interfering with the latter. Now, the MT flag is required to be specified with a `/` to disambiguate: `/MT`.
2020-04-02zig cc: support -F and -frameworkAndrew Kelley
2020-04-02zig cc: respect -MF -MV -MD optionsAndrew Kelley
Zig disables its caching and forwards these args when any are provided. see #4784
2020-04-02new ArrayList API: fix everything elsexackus
2020-04-01zig cc: detect -mcpu, -march, -mtuneAndrew Kelley
However these are all treated like zig's -mcpu parameter. See #4784
2020-04-01zig cc: add support for -L linker argumentsRejean Loyer
2020-04-01zig cc properly handles -S flag and .ll, .bc extensionsAndrew Kelley
2020-03-30revert detection of rtti and exceptionsAndrew Kelley
This caused link errors in c++ code because it was not correct to pass these flags to child codegens. And that was the only reason to detect these flags. Otherwise we can safely rely on non-explicitly-detected flag forwarding.
2020-03-30std lib API deprecations for the upcoming 0.6.0 releaseAndrew Kelley
See #3811
2020-03-28zig cc: Add support for -zRyan Liptak
This is only the first step; it makes zig cc recognize -z and append it to the linker args, but the linker arg parsing doesn't support -z yet so it will just give the warning 'unsupported linker arg: -z'
2020-03-27zig cc: Add support for -Xlinker, --for-linker, --for-linker=Ryan Liptak
2020-03-27zig c++: get it working with musl and mingw-w64Andrew Kelley
2020-03-26ability to compile c++ hello world with `zig c++`Andrew Kelley
closes #4786
2020-03-25zig cc: add detection for `-###`Andrew Kelley
it turns on --verbose-cc and --verbose-link
2020-03-25zig cc: support -T linker script optionAndrew Kelley
2020-03-21zig cc: detect optimization and debug flagsAndrew Kelley
2020-03-21zig cc: better support for the preprocessor option (-E)Andrew Kelley
2020-03-21rename "passthrough" → "driver_punt"Michael Dusan
- punt when `-E` is supplied - punt when `-S` is supplied
2020-03-21zig cc improvementsAndrew Kelley
* The generated options data file is sorted now in a way that makes sure longer prefixes are first. This prevents collisions with some parameters. * Add support for `-fPIC`, `-fno-PIC`, `-nostdlib`, `-shared`, `-rdynamic`, `-Wl,-soname`, `-Wl,-rpath` * Better support for `-o`. * Disable generating h files * Shared library support. * Better positional argument support.
2020-03-21ability to use `zig cc` as a drop-in C compilerAndrew Kelley
The basics are working