Andrew Kelley
0cd660462f
move install_files.h to not be generated code
2019-07-15 01:47:26 -04:00
Andrew Kelley
b23ace27db
fix the build on windows
2019-07-15 01:45:26 -04:00
Andrew Kelley
6096dc5f94
move some of the installation from cmake to zig build
...
This moves the installation of shipped source files from large
CMakeLists.txt lists to zig build recursive directory installation.
On my computer a cmake `make install` takes 2.4 seconds even when it has
to do nothing, and prints a lot of unnecessary lines to stdout that say
"up-to-date: [some file it is installing]".
After this commit, the default output of `make` is down to 1
second, and it does not print any junk to stdout. Further, a `make
install` is no longer required and `make` is sufficient.
This closes #2874 .
It also closes #2585 . `make` now always invokes `zig build` for
installing files and libuserland.a, and zig's own caching system makes
that go fast.
2019-07-15 01:45:26 -04:00
Andrew Kelley
9c39d5720f
ir: add an assertion in phi analysis
2019-07-13 18:38:52 -04:00
Andrew Kelley
c0489abcdb
translate-c: fix incorrectly translated double function pointer
...
closes #2887
2019-07-13 12:38:10 -04:00
Andrew Kelley
107e57484f
Merge pull request #2868 from ziglang/windows-libc
...
provide a libc for windows using mingw-w64
2019-07-12 18:12:27 -04:00
Andrew Kelley
39b850c6cf
mingw libc: delete dead linker code regarding using system libc
2019-07-12 18:10:53 -04:00
Andrew Kelley
3621d54e57
handle mingw libc defs better
...
also zig build handles --verbose and linkSystemLibrary better
2019-07-12 17:25:25 -04:00
Andrew Kelley
7b8ba871a9
mingw libc: solve the segfault having to do with destructors
...
* fixed --verbose-cc printing an extra "zig" before the rest of
the command line
* windows-gnu targets use libfoo.a, foo.o extensions to match mingw
conventions.
2019-07-12 14:44:34 -04:00
Andrew Kelley
4e58855a4a
translate-c: better detection of pointer to struct demoted to opaque
2019-07-12 12:11:26 -04:00
thomas
02b1aea291
fix typo in help text for bundle-compiler-rt
2019-07-12 10:23:39 -04:00
Andrew Kelley
d9c4c96bf2
add -Wno-pragma-pack when targeting windows-gnu
...
windows.h has files such as pshpack1.h which do #pragma packing,
triggering a clang warning. So for this target, this warning is
disabled.
this commit also improves the error message printed when no libc can be
used, printing the "zig triple" rather than the "llvm triple".
2019-07-11 23:48:13 -04:00
Andrew Kelley
b4bbfe8c05
the msvc target abi will have to be solved a different way
2019-07-11 12:56:51 -04:00
Andrew Kelley
e0670557b4
fix windows not able to build mingw
2019-07-10 20:20:53 -04:00
Andrew Kelley
3714d524c3
add some more windows defs
2019-07-10 19:40:46 -04:00
Andrew Kelley
2bb93784c6
mingw: build and link mingwex.lib
...
zig can now cross compile hello.c targeting windows
2019-07-10 17:41:34 -04:00
Andrew Kelley
67f3bc9101
mingw: building and linking msvcrt-os.lib
2019-07-10 16:19:51 -04:00
Andrew Kelley
ea90a3a9a1
mingw: building and linking mingw32.lib
2019-07-10 14:13:00 -04:00
Andrew Kelley
1c7f21852f
ship with mingw-w64 v6.0.0
...
See #514
2019-07-09 23:34:16 -04:00
Andrew Kelley
fc9e28ea37
std.os.getrandom does a libc version check
...
closes #397
2019-07-08 14:42:28 -04:00
Andrew Kelley
201033d83b
avoid dependency on linux/limits.h header
...
it was causing a problem on the CI
2019-07-08 11:38:14 -04:00
Andrew Kelley
8692c6fc0d
zero initialize target
...
Fixes glibc_version being set to garbage. I've made this mistake
before so this is an attempt to prevent future bugs. Zig doesn't
have zero-initialization, so are we being a hypocrite by using this
C feature? No, because C doesn't have the feature that forces you to
initialize all fields. That would have prevented this bug every single
time.
2019-07-08 02:10:26 -04:00
Andrew Kelley
f04782785f
fix not setting a target glibc version on non-linux
2019-07-07 19:24:44 -04:00
Andrew Kelley
56d8185650
expose glibc version in builtin
2019-07-07 17:56:43 -04:00
Andrew Kelley
3e36cad1c1
remove debug log
2019-07-07 17:56:43 -04:00
Andrew Kelley
336ddb8011
add -target-glibc to cli help and zig build
2019-07-07 17:56:43 -04:00
Andrew Kelley
7ccf7807b3
ability to target any glibc version
2019-07-07 17:56:08 -04:00
Andrew Kelley
e12eb5e7f6
Merge pull request #2835 from hryx/de-keyword-anyerror
...
Make anyerror not a keyword
2019-07-07 09:44:48 -04:00
hryx
cce11a724c
Make anyerror not a keyword
2019-07-06 15:57:32 -07:00
SamTebbs33
b118806c69
Add implicit cast for *[N]T to [*c]T
2019-07-06 17:02:17 -04:00
Andrew Kelley
21c60922e3
Merge pull request #2823 from hryx/unicode-escape
...
Unicode escapes: support u{N...}
2019-07-06 13:14:43 -04:00
hryx
6bfa8546bb
Unicode escapes: stage1 tokenizer and behavior tests
2019-07-04 22:40:19 -07:00
Andrew Kelley
72800f176e
zig build: search upwards for build.zig file
...
closes #2587
2019-07-04 17:44:33 -04:00
Michael Dusan
47addd87ac
stage1: add missing help for --override-lib-dir
2019-07-04 15:36:34 -04:00
Andrew Kelley
96fd103073
improve the error message and test coverage
2019-07-04 00:35:28 -04:00
Andrew Kelley
bfe0bf695b
Merge branch 'impl-1107' of https://github.com/emekoi/zig into emekoi-impl-1107
2019-07-03 23:40:47 -04:00
Andrew Kelley
4606baee07
add -ffunction-sections arg when building C objects
...
the other changes in this commit are minor tidying up
2019-07-03 15:46:27 -04:00
Andrew Kelley
2f4faf306d
Merge branch 'function-sections' of https://github.com/timonkruiper/zig into timonkruiper-function-sections
2019-07-03 14:43:33 -04:00
emekoi
a1b952f4b0
added tests for #1107 and a note in the reference
2019-07-03 13:12:14 -05:00
Andrew Kelley
4bae87764f
update @unionInit to integrate with result location semantics
2019-07-03 13:40:40 -04:00
Andrew Kelley
9da054095c
Merge branch 'comptime-union-init' of https://github.com/rbscott/zig into rbscott-comptime-union-init
2019-07-03 11:26:55 -04:00
Andrew Kelley
9daf0140e5
add missing compile error for comptime continue inside runtime catch
...
See #2604
2019-07-02 21:14:42 -04:00
Andrew Kelley
df11512f85
fixups
2019-07-02 16:52:55 -04:00
Andrew Kelley
140335b99f
Merge branch 'has-field' of https://github.com/shawnl/zig into shawnl-has-field
2019-07-02 16:21:40 -04:00
Andrew Kelley
b05b5649df
print dir name on failure to write to cache dir
...
closes #2429
2019-07-02 16:11:05 -04:00
Andrew Kelley
704444a6e3
improved logic on whether to include start files
2019-07-02 14:26:54 -04:00
Timon Kruiper
bbc0d440b8
Added ZigLLVMCreateTargetMachine and pass function-sections flag
...
Also added extra cache line
Added the ZigLVVMCreateTargetMachine to self hosted zig code
2019-07-02 19:54:29 +02:00
Andrew Kelley
7d4a0cfed0
enable segfault stack traces in stage1 compiler
2019-07-02 13:41:17 -04:00
Timon Kruiper
7586f613d5
Added function-section functionality
2019-07-01 17:49:08 +02:00
emekoi
2d85ff9465
added invalid switch prong error
...
added error for switch prong with different payloads and support for capturing payload on switch prongs with payloads of the same type
2019-07-01 00:27:55 -05:00