Commit Graph

11315 Commits (317c555a5cdc52612e998d8b4bcbaf730be1a6f1)

Author SHA1 Message Date
Jakub Konka 317c555a5c Fix linking issues on BigSur
This commit fixes linking issue on macOS 11 BigSur by appending
a prefix path to all lib and framework search paths known as
`-syslibroot`.

The reason this is needed is that in macOS 11, the system libraries
and frameworks are no longer readily available in the filesystem.
Instead, the new macOS ships with a built-in dynamic linker cache
of all system-provided libraries, and hence, when linking with either
`lld.ld64` or `ld64`, it is required to pass in `-syslibroot [dir]`.
The latter can usually be obtained by invoking `xcrun --show-sdk-path`.
With this commit, Zig will do this automatically when compiling natively
on macOS. However, it also provides a flag `-syslibroot` which can be
used to overwrite the automtically populated value.

To summarise, with this change, the user of Zig is not required to
generate and append their own syslibroot path. Standard invocations
such as `zig build-exe hello.zig` or `zig build` for projects will
work out of the box. The only missing bit is `zig cc` and `zig c++`
since the addition of the `-syslibroot` option would be a mismatch
between the values provided by `clang` itself and Zig's wrapper.
2020-11-02 17:06:09 +01:00
Andrew Kelley 909aae8153
Merge pull request #6792 from koachan/sparc64-linux
Initial sparc64-linux bringup
2020-11-01 22:14:56 -05:00
Andrew Kelley af60931a48
Merge pull request #6888 from jcmoyer/issues/6874
Update std.fmt docs and add test for null terminated slices with embedded null bytes
2020-11-01 18:30:09 -05:00
LemonBoy 445d808bae std: Fix early overflow in time calculation
Closes #6867
2020-11-01 17:06:14 -05:00
Andrew Kelley 2e1cef7508 Merge branch 'LemonBoy-morereduce' 2020-11-01 14:39:56 -07:00
Andrew Kelley f4ed5d7d48 langref tidy html fixup 2020-11-01 14:39:45 -07:00
LemonBoy 577b994507 docs: Add @reduce documentation 2020-11-01 14:30:31 -07:00
LemonBoy 0d6a7088dc stage1: Implement Add/Mul reduction operators 2020-11-01 14:30:31 -07:00
LemonBoy 6f3d6c1f45 std: Fix expectWithinEpsilon with negative values 2020-11-01 14:30:31 -07:00
LemonBoy 2957433b25 stage1: Fix comptime comparison of NaNs 2020-11-01 14:30:31 -07:00
Jakub Konka d530e7f9c7 Make std.fmt.bufPrintIntToSlice public
Deprecate `std.fmt.trim` and `std.fmt.isWhiteSpace` in favour of
`std.mem` alternatives.

Signed-off-by: Jakub Konka <kubkon@jakubkonka.com>
2020-11-01 15:48:50 -05:00
xackus 6418284680 std: add {set,get}rlimit bits and improve test 2020-11-01 15:47:46 -05:00
frmdstryr 36f1788762 Add missing arg 2020-11-01 15:40:42 -05:00
Frank Denis c387f1340f std/crypto: make Hkdf functions public 2020-11-01 18:27:11 +02:00
Veikka Tuominen 9ca9819488
Merge pull request #6883 from Vexu/translate-c
translate-c: correctly handle pointers to opaque demoted structs
2020-10-31 15:25:14 +02:00
Vexu 28a0583b84
run zig fmt on src/ and test/ 2020-10-31 12:21:49 +02:00
Veikka Tuominen 7c8d9cfa40
Merge pull request #6660 from Vexu/stage2
Stage2 switch and package imports
2020-10-31 09:39:28 +02:00
Vexu 3ff381385a
translate-c: correctly handle pointers to opaque demoted structs 2020-10-31 09:30:13 +02:00
J.C. Moyer 788900c35c Add test for null terminated slices with embedded null bytes 2020-10-30 23:58:23 -04:00
J.C. Moyer b38dea37c7 Update doc comments to reflect current behavior 2020-10-30 23:58:23 -04:00
Travis bb6e39e274 remove extra space in .** error message 2020-10-30 21:26:05 +02:00
Andrew Kelley e59f44712d
Merge pull request #6875 from jorangreef/mips_syscalls
Add more mips syscall numbers
2020-10-30 13:31:12 -04:00
Veikka Tuominen 80dd432137
Merge pull request #6858 from travv0/no-star-after-dot-star
don't allow a token starting with an asterisk directly following .*
2020-10-30 16:08:04 +02:00
Vexu 22ec5e0859
stage2: fix typo in liveness; add comptime switch test 2020-10-30 15:58:13 +02:00
Vexu 4ed2c52fb7
stage2: switch put swap condbr and block
condbr is noreturn so having the other way around caused
subsequent cases to be eliminated as dead
2020-10-30 15:58:13 +02:00
Vexu e2e0b6272b
stage2: return same hash for different representations of same value 2020-10-30 15:58:13 +02:00
Vexu 3cc68bd913
stage2: switch liveness analysis 2020-10-30 15:58:13 +02:00
Vexu 769d5a9c43
stage2: switch comptime execution 2020-10-30 15:58:13 +02:00
Vexu 12e4c648cc
stage2: implement switch validation for integers 2020-10-30 15:58:13 +02:00
Vexu 4155d2ae24
stage2: switch ranges and multi item prongs 2020-10-30 15:58:13 +02:00
Vexu 3c96d79953
stage2: disallow switching on floats 2020-10-30 15:58:13 +02:00
Vexu 7db17a2d89
stage2: redesign switchbr
Switchbr now only  handles single item prongs.
Ranges and multi item prongs are checked with
condbrs after the switchbr.
2020-10-30 15:58:12 +02:00
Vexu 95467f3249
stage2: dump generated zir with --verbose-ir 2020-10-30 15:58:12 +02:00
Vexu 570f610341
stage2: fix test harness tmp path handling 2020-10-30 15:58:12 +02:00
Vexu 2020ca640e
stage2: switch emit zir 2020-10-30 15:58:12 +02:00
Vexu 11998d2972
stage2: basic switch analysis 2020-10-30 15:58:12 +02:00
Vexu 2c12f4a993
stage2: implement Value.eql for void, null and types 2020-10-30 15:58:12 +02:00
Vexu 7e2774367e
stage2: implement Value.hash 2020-10-30 15:58:12 +02:00
Vexu 27d233cef7
stage2: basic switch validation 2020-10-30 15:58:11 +02:00
Vexu ad32e46bce
stage2: switch astgen 2020-10-30 15:58:11 +02:00
Vexu a1d7f0053d
stage2: support imports inside packages 2020-10-30 15:58:11 +02:00
Vexu 8421b8a898
stage2: detect import outside file path 2020-10-30 15:58:11 +02:00
Joran Dirk Greef ab1ed93ad9 Add close_range, faccessat2 and process_madvise 2020-10-30 12:39:01 +02:00
Joran Dirk Greef 9423ed1671 Add more mips syscall numbers
As per: lib/libc/musl/arch/mips/bits/syscall.h.in

...and as promised: https://github.com/ziglang/zig/pull/6356#issuecomment-696023349

Thanks @daurnimator again for the help with #6356.
2020-10-30 11:53:45 +02:00
Koakuma 891c6ddd5f Select stat struct type based on whether we are linking with libc 2020-10-30 11:46:33 +07:00
zhaozg 72343ffd06 fix #3237: resolve undefined symbol _DllMainCRTStartup 2020-10-29 20:09:22 -04:00
LemonBoy 490cafe2c5 stage1: Error out when trying to execute `unreachable`
Closes #6802
2020-10-29 20:06:52 -04:00
Andrew Kelley f4bb8be9fc
Merge pull request #6654 from joachimschmidt557/stage2-arm
stage2 ARM: more stuff
2020-10-29 18:29:24 -04:00
Andrew Kelley aaff66b8ed
Merge pull request #6866 from LemonBoy/fix-zlib
Fix zlib EOB condition
2020-10-29 18:23:36 -04:00
Andrew Kelley a41c0b63bb
Merge pull request #6356 from jorangreef/io_uring
std: add io_uring library
2020-10-29 18:20:38 -04:00