Commit Graph

650 Commits

Author SHA1 Message Date
Andrew Kelley
cacb962ba7 CMake: add workaround for CMAKE_AR not supporting spaces
This allows using `zig ar` for `CMAKE_AR`. Unfortunately, it requires a
patch to CMakeLists.txt and cannot be done merely with flags to the
cmake line.
2022-12-10 16:28:49 -07:00
Andrew Kelley
c9231f0547 CI: add aarch64-windows coverage 2022-12-10 16:28:49 -07:00
Andrew Kelley
83361e4a9b CI: test updating the wasm binary
Make sure that no commit regresses the ability to upgrade our wasm
binary. Otherwise, somebody in the future is going to have a Bad Day.
2022-12-08 02:01:46 -05:00
Andrew Kelley
1122d9d212 CI: windows: fix zig lib dir path
See #12685
2022-12-07 12:49:17 -07:00
Jacob Young
eb4337fe83 Revert "CI: revert windows script to master branch version"
This reverts commit 106e967893.
2022-12-07 01:34:21 -07:00
Andrew Kelley
106e967893 CI: revert windows script to master branch version
This commit chickens out and reverts
02456a32ad, leaving it for a future
enhancement.
2022-12-06 12:27:28 -07:00
Andrew Kelley
c58ebfb1e1 CI: aarch64-macos tarball patch
I messed up the spelling of '-stack_size' making it '-stack' instead.
Will need to fix on master branch. But let's test this here before
making another master branch commit.
2022-12-06 12:27:28 -07:00
Andrew Kelley
0f2a7d3b54 CI: don't pass -Denable-stage1 when building stage4 2022-12-06 12:27:28 -07:00
Andrew Kelley
f46567e6bf CI: update tarballs
In particular, these two changes are relevant:

 * zig cc: support -stack in addition to --stack for linker arg
   - Fixes stack overflow when running zig2 on aarch64-macos.
 * compiler_rt: avoid using weak aliases
   - Fixes duplicate symbol when linking zig2 on aarch64-linux.
2022-12-06 12:27:28 -07:00
Andrew Kelley
3fb1b2caef CI: use a patched tarball
In the CI system, I copied the old tarball and then applied
05c21a26cb2d5daf06191bd996d0770192704b66 to its compiler_rt
implementation.

After this is verified we can drop this commit and regenerate the
tarballs from a master branch commit.
2022-12-06 12:27:28 -07:00
Andrew Kelley
02456a32ad CI: make Windows build from source like everybody else
Now that OOM is no longer a problem, the Windows CI can do the same
process every other system does instead of building from a recent Zig
binary.
2022-12-06 12:15:04 -07:00
Andrew Kelley
bdb6fb5763 CI: use cache directories local to the CI run
Override the cache directories because they won't actually help other CI
runs which will be testing alternate versions of zig, and ultimately
would just fill up space on the hard drive for no reason.

In practice we did see one of the CI servers fill up too many files
inside ~/.cache/zig, which caused certain file system operations to
start returning ENOSPC, despite the hard drive having plenty of space
left.
2022-12-04 15:45:15 -07:00
Andrew Kelley
af4361f57a CI: update tarballs to 0.11.0-dev.448+e6e459e9e
Notably this contains a fix to zig cc that enables the syntax
`-Wl,-z,stack-size=0x10000`.
2022-12-02 17:31:33 -05:00
Andrew Kelley
9f9f1aadc7 CI: add aarch64-linux-debug job and flatten dirs 2022-12-01 00:37:47 -07:00
Andrew Kelley
deda6b5146 LLVM: fix canElideLoad behavior with loops
closes #13546
2022-11-30 00:20:49 -05:00
Loris Cro
52e1be9c68 Revert "ci: add markers for collapsing log sections in GH web UI"
This reverts commit 6028adda4b.
2022-11-29 22:55:04 +01:00
Loris Cro
6028adda4b ci: add markers for collapsing log sections in GH web UI 2022-11-29 22:03:30 +01:00
Jakub Konka
1829b6eab8
Merge pull request #13625 from kcbanner/windows_disable_symlink_tests
Skip linker tests requiring symlinks on Windows
2022-11-29 02:57:37 +01:00
Andrew Kelley
2df47df390 CI: move some stuff to the website repo 2022-11-26 15:34:35 -07:00
kcbanner
57bc61ab26 test-link: add -Denable-symlinks-windows to opt-in to using symlinks
Adds a way for standalone tests to declare they need symlinks, and these
tests won't be run on windows unless -Denable-symlinks-windows is set
2022-11-26 14:26:26 -05:00
Loris Cro
7fd34f18c5 ci: windows: add missing check to last test 2022-11-25 19:41:37 +01:00
Andrew Kelley
984acae12d CI: use consistent relative/absolute paths for zig test commands
Standard library tests require the root source file to be the
corresponding file inside the Zig lib directory. In other words, there
may not be two copies of the standard library. After the changes in this
branch, Zig no longer notices that `../lib/std.zig` and
`$(pwd)/../lib/std.zig` are the same file because one is relative and
one is absolute.
2022-11-22 21:08:09 -07:00
Andrew Kelley
32ce2f91a9 CI: fix wrong path name in x86_64-linux release script
I verified that the script will pass with this change.
2022-11-22 20:54:30 -07:00
Andrew Kelley
c24c6fe210 CI: disable building docs on x86_64-linux debug
See tracking issue #13546
2022-11-22 15:15:04 -07:00
Andrew Kelley
b3b507ad8f CI: disable building tarballs; x86 self-hosted 2022-11-22 14:13:58 -07:00
Loris Cro
671fb4ac47 ci: move tarball creation and publishing to github-hosted runners 2022-11-22 13:40:31 -07:00
Andrew Kelley
283c92e362 CI: add missing backslash 2022-11-22 01:28:08 -08:00
Andrew Kelley
936b44e50a CI: fix wrong directory paths 2022-11-22 01:20:22 -08:00
Andrew Kelley
ab680250e1 CI: fix wrong lib dir path 2022-11-22 01:05:59 -07:00
Andrew Kelley
e18d310afd CI: build from old zig on x86_64-linux debug
This is to work around OOM on the CI server. Once #13560 is complete,
we can avoid having to replace the tarballs so often.
2022-11-22 00:56:44 -07:00
Andrew Kelley
0912f1d1f9 CI: fix wrong tarball name for aarch64-linux 2022-11-21 20:19:44 -07:00
Andrew Kelley
e21b6a712d CI: switch to GitHub Actions 2022-11-21 20:16:08 -07:00
Andrew Kelley
f3d987dc87 CI: start moving tarball generation to github actions 2022-11-21 20:16:08 -07:00
Andrew Kelley
c822da7121 CI: aarch64-linux: support older cmake 2022-11-21 20:16:08 -07:00
Andrew Kelley
5d7efa6d82 CI: aarch64-linux: init 2022-11-14 16:04:01 -07:00
Andrew Kelley
e14d135881 macos: x86_64: fix wrong path to cmake 2022-11-14 15:17:41 -07:00
Andrew Kelley
27e63bb59f CI: aarch64-macos: set PATH env var for cmake 2022-11-14 15:15:12 -07:00
Andrew Kelley
37402e4d17 CI: separate aarch64 and x86_64 macos scripts 2022-11-14 15:10:05 -07:00
Loris Cro
bbd0775d77 ci: init github actions support 2022-11-14 22:41:36 +01:00
Andrew Kelley
a65ba6c85a CI: stop using cloud.drone.io
This service stopped working two days ago for unknown reasons. Until it
is determined how to get it working again, or we switch to a different
CI provider for aarch64, this CI test coverage is disabled so that
we can continue to use the CI for other targets.
2022-11-08 11:04:33 -07:00
Andrew Kelley
e9a12491f6 CI: add stage3/stage4 determinism check
Makes sure that #12183 will not regress.
2022-11-04 20:33:37 -07:00
Veikka Tuominen
8c4faa5f3f
Merge pull request #13338 from Vexu/stage2-compile-errors
Improve some error messages
2022-11-04 16:04:31 +02:00
Veikka Tuominen
577daab08c CI: windows: update tarball 2022-11-03 22:11:25 +02:00
Andrew Kelley
0bbb000359 ci: add 0.10.0 release data 2022-10-31 14:21:52 -07:00
Andrew Kelley
17df35025b CI: disable failing C backend test
See #13357
2022-10-30 03:21:18 -07:00
Andrew Kelley
fbd1390f80 CI: drone: shuffle some tests around
We have to balance the timings to end up below the two hour mark.
2022-10-29 23:10:49 -07:00
Andrew Kelley
c8f1ea46b5 ci: enable aarch64-linux test coverage
closes #12689
2022-10-29 23:07:16 -07:00
Andrew Kelley
3e926d868e CI: update freebsd tarball 2022-10-29 12:15:47 -07:00
Andrew Kelley
23878aec4a CI: azure: fix upload script
Partial revert of changes made in
398a3aae40, fixes regression.
2022-10-27 20:57:21 -07:00
Eric Joldasov
398a3aae40 CI: make directory structure in releases consistent 2022-10-27 20:53:11 -04:00
Andrew Kelley
e490d9e517 CI: update drone and zinc tarballs 2022-10-25 19:22:34 -07:00
Andrew Kelley
0010288dae CI: update macos and windows tarballs 2022-10-25 17:16:36 -07:00
Andrew Kelley
f82a82f889 Revert "fix CI failures with commit "ci: make directory structure in releases consistent""
This reverts commit 54c8861bc4.

This caused CI failure.
2022-10-22 20:29:24 -07:00
Eric Joldasov
54c8861bc4 fix CI failures with commit "ci: make directory structure in releases consistent" 2022-10-22 16:43:35 -07:00
Andrew Kelley
10b8c4d8f0 CI: drone: skip some ReleaseFast and ReleaseSmall std lib tests
Follow-up commit to b9103bd514.
2022-10-22 09:19:05 -07:00
Andrew Kelley
b9103bd514 CI: drone: skip ReleaseSafe std lib tests that link libc
To save a little bit of time and keep under the 2 hour mark.
2022-10-21 19:28:46 -07:00
Andrew Kelley
3b2f0c3eee Revert "ci: make directory structure in releases consistent"
This reverts commit 28054d96f0.

This caused CI failures.
2022-10-21 13:18:37 -07:00
Eric Joldasov
28054d96f0 ci: make directory structure in releases consistent 2022-10-21 12:51:04 -04:00
Andrew Kelley
14c173b200 ci: windows: update tarball
This has the `@max`/`@maximum`, `@min`/`@minimum` update.
2022-10-18 15:30:44 -07:00
Andrew Kelley
b47e54ed3f CI: windows: update tarball
Needed due to the --strip/-fstrip breaking changes.
2022-10-12 02:34:26 -07:00
Andrew Kelley
3108b8010e CI: windows: update tarball 2022-10-11 01:51:49 -07:00
Jakub Konka
36d2a55037 ci: update windows tarball 2022-09-29 18:43:16 +02:00
Andrew Kelley
0e4b04672c CI: remove --fail-with-body option
I observed this error:

```
curl: option --fail-with-body: is unknown
```
2022-09-21 22:22:41 -07:00
Andrew Kelley
5dce9368d6 CI: update sourcehut oauth token
it expired after one year
2022-09-21 20:34:17 -07:00
Andrew Kelley
d7d21672b8 CI: update windows tarball 2022-09-20 19:05:00 -07:00
Jakub Konka
0f1fbbfdfb ci: azure: macos: use updated release tarball 2022-09-17 23:11:58 +02:00
Andrew Kelley
2be72c719e ci: azure: macos: use an unstripped debug zig tarball
Hopefully will give us some insight into the spurious failures.

Follow-up from afba53f0f1.
2022-09-15 13:56:18 -07:00
Andrew Kelley
afba53f0f1 CI: swap out azure macos tarball for unstripped ReleaseSafe
Hopefully will give us some insight into the spurious failures.
2022-09-14 19:16:02 -07:00
Andrew Kelley
78729c4939 update CI tarballs with libcxx fix
The main reason to update the CI tarballs is
f79824f946 which fixes an issue that
caused the CI to fail on all targets.
2022-09-12 21:25:49 -07:00
Andrew Kelley
6e3bbba951 update CI tarballs for LLVM 15 2022-09-12 13:03:10 -07:00
Jakub Konka
a226aef36c test-cases: enable stage2 tests on Windows 2022-09-07 22:42:59 +02:00
Jakub Konka
11d14a23a3 win-ci: add missing ZIGPREFIXPATH variable def 2022-09-07 22:21:12 +02:00
Andrew Kelley
7c91a6fe48 CI: fix CLI usage of s3cmd regarding mime types for autodocs 2022-09-01 12:57:06 -07:00
Andrew Kelley
7a733b9385 CI: macos: skip non native
We already test cross compiling on x86_64-linux; no need to additionally
test it in the macOS script.
2022-08-31 16:07:08 -07:00
Andrew Kelley
77f31ebbbe CI: fix content type of autodocs source listings 2022-08-31 15:27:09 -07:00
Andrew Kelley
368a20a051 CI: include source listings for autodocs 2022-08-31 14:22:01 -07:00
Andrew Kelley
c5f1b3224f CI: update_download_page: change docs deployment
The original impetus for making a change here was a typo in --add-header
causing the script to fail. However, upon inspection, I was alarmed that
we were making a --recursive upload to the *root directory* of
ziglang.org. This could result in garbage files being uploaded to the
website, or important files being overwritten. As I addressed this concern,
I decided to take on file compression as well.

Removed compression prior to sending to S3. I am vetoing pre-compressing
objects for the following reasons:
 * It prevents clients from working which do not support gzip encoding.
 * It breaks a premise that objects on S3 are stored 1-to-1 with what is
   on disk.
 * It prevents Cloudflare from using a more efficient encoding, such as
   brotli, which they have started doing recently.

These systems such as Cloudflare or Fastly already do compression on
the fly, and we should interop with these systems instead of fighting them.

Cloudfront has an arbitrary limit of 9.5 MiB for auto-compression. I looked
and did not see a way to increase this limit. The data.js file is currently
16 MiB. In order to fix this problem, we need to do one of the following things:

 * Reduce the size of data.js to less than 9.5 MiB.
 * Figure out how to adjust the Cloudfront settings to increase the max size
   for auto-compressed objects.
 * Migrate to Fastly. Fastly appears to not have this limitation. Note
   that we already plan to migrate to Fastly for the website.
2022-08-31 13:15:42 -07:00
Andrew Kelley
9a0cb34c73 CI: namespace manifest json files to avoid clobbering 2022-08-31 13:15:21 -07:00
Andrew Kelley
36ad0abd7a CI: drone: avoid notify_lavahut task for PRs 2022-08-31 13:14:51 -07:00
Andrew Kelley
9f9e51eb11 CI: drone: disable failing tests
See tracking issue #12689
2022-08-30 22:55:30 -07:00
Andrew Kelley
35e0ff7c36 CI: drone: disable failing tests
See tracking issue #12689
2022-08-30 15:01:05 -07:00
Andrew Kelley
0a42602418 CI: drone: disable failing tests
See tracking issue #12689
2022-08-30 12:02:26 -07:00
Jakub Konka
b64e4c5bf2 fix aarch64-macos CI build script 2022-08-30 14:29:06 +02:00
Andrew Kelley
527055a821 CI: use absolute path for zig lib dir
Workaround for #12685
2022-08-30 00:33:21 -07:00
Andrew Kelley
75d5a4b9a2 CI: pass explicit zig lib dir in lots of places
see #12684 for motivation
2022-08-29 23:37:31 -07:00
Andrew Kelley
532cfb65e0 CI: rework to account for new cmake behavior
* CMakeLists: pass `-Dstrip` for release zig builds
 * pass -target and -mcpu to zig1. works around llvm on freebsd
   incorrectly detecting "freestanding" instead of "freebsd" for the
   native OS.
 * ci.ziglang.org is now responsible for creating aarch64-macos tarballs
   rather than Azure.
2022-08-28 17:07:21 -07:00
Andrew Kelley
56129d26eb cmake: build stage3 by default
This is a simplification of the cmake build script which introduces a
new "stage3" target that is built by default, which builds and installs
a stage3 zig.

It greatly simplifies the build instructions for Zig, making it conform
to the regular cmake routine, while still producing a stage3 artifact.
2022-08-28 17:07:21 -07:00
Loris Cro
0f27836c21 ci: fix wrong path when deploying stdlib docs 2022-08-28 01:20:38 +02:00
Andrew Kelley
9d231c4991 CI: drone: reduce duration of the bottleneck
Empirically, the ReleaseSmall std lib tsets take about 55 minutes on the
CI, and is the bottleneck causing timeouts. So this commit disables full
coverage in favor of running a smaller set of ReleaseSmall std lib tests.
2022-08-25 15:23:01 -07:00
Andrew Kelley
f4980a4800 CI: windows: update tarball
needed because of some changes to std.dwarf
2022-08-24 16:18:42 -07:00
Andrew Kelley
2a96209c40
Merge pull request #12574 from Vexu/remove-bit-op-type-param
stage2+stage1: remove type parameter from bit builtins
2022-08-24 15:57:44 -04:00
Andrew Kelley
40c9b13608 CI: x86_64-linux: update tarball
I thought this would be needed for dwarf 4 but I think it's not actually
needed. Anyway the tarball is fresher, might as well use it.
2022-08-24 12:57:31 -07:00
Loris Cro
583175dc1d ci: upload rendered source listings in stdlib docs 2022-08-23 15:59:35 +02:00
Andrew Kelley
7b14d614d9 CI: update windows tarball 2022-08-22 15:55:38 -07:00
Andrew Kelley
b75eeae595 CI: x86_64-linux: avoid cmake ZIG_EXECUTABLE hack
empirically this avoids a segfault on the CI.
2022-08-19 17:24:23 -07:00
Andrew Kelley
e78e9f33c0 CI: update x86_64-linux tarball 2022-08-19 16:45:16 -07:00
Andrew Kelley
3ce8060818 CI: update windows tarball 2022-08-19 16:45:16 -07:00
Andrew Kelley
35f62bc7ae CI: windows: don't create build directory
Simplify the script by not creating an unnecessary build directory and
then changing directories to and from it.
2022-08-19 16:45:16 -07:00
Andrew Kelley
c4466496ff build: hook up -Dskip-stage2-tests and remove test-toolchain 2022-08-19 16:45:16 -07:00
Andrew Kelley
5be2e8f941 CI: update windows tarball
This includes a few recent bug fixes which may solve the Windows CI
failure.
2022-08-19 16:45:16 -07:00
Andrew Kelley
28e95b3240 CI: drone: simplify
Instead of a switch in a bash file we just properly name
the pipeline steps.

Also use zig build to produce the release artifact.
2022-08-19 16:45:15 -07:00
Andrew Kelley
5b486b1851 CI: use zig build to produce release artifact
For both macOS and FreeBSD.
2022-08-19 16:45:15 -07:00
Andrew Kelley
a8f86291d2 CI: update freebsd tarball
This updates to a stage3 freebsd tarball.
2022-08-19 16:45:15 -07:00
Andrew Kelley
7cf6930e24 CI: macos: set release mode for zig and simplify 2022-08-19 16:45:15 -07:00
Andrew Kelley
9f43ebd6ef CI: windows: build stage3 directly from dev kit 2022-08-19 16:45:15 -07:00
Andrew Kelley
d75d40dfdf build: make docs a separate step than test 2022-08-19 16:45:15 -07:00
Andrew Kelley
7346600517 CI: avoid concurrent jobs tripping over each other 2022-08-19 16:45:15 -07:00
Andrew Kelley
e3ccea70dd CI: isolate zig-cache for parallel debug/release builds 2022-08-19 16:45:15 -07:00
Andrew Kelley
a73b3a0d70 CI: simplify x86 linux test instructions 2022-08-19 16:45:15 -07:00
Andrew Kelley
06c42a0c68 CI: test both stage3-debug and stage3-release on x86-linux 2022-08-19 16:45:15 -07:00
Andrew Kelley
507aae4a1a make self-hosted the default compiler
stage1 is available behind the -fstage1 flag.

closes #89
2022-08-19 16:45:15 -07:00
Andrew Kelley
73bbd1069a build: remove the option to omit stage2 2022-08-19 16:45:15 -07:00
Jakub Konka
b6ce0cce69 windows-ci: pass -Domit-stage2 to test-toolchain 2022-08-17 23:13:58 +02:00
Loris Cro
95573dbeeb ci: add gzip compression to stdlib docs & langref 2022-08-15 20:44:30 +02:00
Andrew Kelley
64307c2821 CI: update windows tarball 2022-08-11 12:48:11 -07:00
Hadrien Dorio
bcc6cdc4fb ci: azure: stop when exe exits with an error 2022-08-11 12:48:11 -07:00
Loris Cro
94662591d6 ci: upload langref and stdlib docs directly to s3
previously we were delegating that job to the website CI but it caused
the website repo to bloat, so now we only commit releases.json
2022-08-06 18:12:21 +02:00
Andrew Kelley
932d1f785e CI: -Denable-llvm for test-cases
This requires using -Dstatic-llvm and setting the search prefix and the
target, just like it is required for building stage2 and stage3. This
prevents Zig from trying to integrate with the system, which would
trigger an error due to the `cc` command not being installed.

closes #12144
2022-07-29 11:03:12 -07:00
Andrew Kelley
3ccb6a0cd4 CI: run test-run-translated-c tests with stage3 2022-07-27 17:56:59 -07:00
Andrew Kelley
ffac6a1b9f CI: run test-link with stage3 2022-07-26 20:23:33 -07:00
Andrew Kelley
3de9ffa84d CI: run test-cases with stage3
See #12144 for why I did not `-Denable-llvm` yet.
2022-07-26 20:15:57 -07:00
Andrew Kelley
0d120fcb89
Merge pull request #12225 from ziglang/ci-stage3-standalone
CI stage3 test coverage for test-standalone and test-cli
2022-07-25 00:46:56 -07:00
Andrew Kelley
93ae386f56 stage2: don't skip liveness or codegen if -femit-asm is supplied
Fixes Godbolt's CLI usage of Zig.
2022-07-24 15:02:05 -07:00
Andrew Kelley
be294e3744 CI stage3 test coverage for test-standalone 2022-07-24 15:02:05 -07:00
Luuk de Gram
34b786fb0f
enable link-test on linux CI 2022-07-23 10:08:51 +02:00
Andrew Kelley
7502e490cb
Merge pull request #12173 from ziglang/autodocs-rebased
New Autodocs!
2022-07-22 20:56:59 -07:00
Andrew Kelley
5cd1ccf4b9 CI: stage3 coverage for test-translate-c 2022-07-21 22:52:08 -07:00
zc
460211431f complete the drone pipeline runner type and platform os 2022-07-21 11:17:35 -07:00
Andrew Kelley
e054877466 CI: stage3 covers test-universal-libc and builds stage1 2022-07-20 23:28:30 -07:00
Andrew Kelley
1ec50613bf CI: increase stage3 test coverage
* Use a debug build of stage3 instead of a debug build of stage2 for
   our self-hosted compiler test coverage.
 * Move coverage from stage1 to stage3 for:
   - building self-hosted without LLVM
   - building self-hosted for 32-bit arm
   - test-compiler-rt
   - test-behavior
   - test-std
   - test-compare-output
   - test-asm-link
   - test-fmt
2022-07-20 12:27:03 -07:00
Andrew Kelley
08f3c7960a build.zig: remove deleted .cpp file 2022-07-20 11:10:46 -07:00
Jakub Konka
e3c8ba2dc5 ci: bump macOS image on Github Actions to macos-11
The currently used image is getting deprecated and every user is advised
to switch to either macos-11 or macos-12. The link to upstream
issue/notification:

https://github.com/actions/virtual-environments/issues/5583
2022-07-15 07:56:21 -07:00
Luuk de Gram
8033767082
wasm-linker: Implement linker tests (#12006)
* test/link: initial wasm support

This adds basic parsing and dumping of wasm section so they
can be tested using the new linker-test infrastructure.

* test/link: all wasm sections parsing and dumping

We now parse and dump all sections for the wasm binary format.
Currently, this only dumps the name of a custom section.
Later this should also dump symbol table, name, linking metadata and relocations.
All of those live within the custom sections.

* Add wasm linker test

This also fixes a parser mistake in reading the flags.

* test/link: implement linker tests wasm & fixes

Adds several test cases to test the wasm self-hosted linker.
This also introduces fixes that were caught during the implementation
of those tests.

* test-runner: obey omit_stage2 for standalone

When a standalone test requires stage2, but stage2 is omit
from the compiler, such test case will not be included as part
of the test suite that is being ran. This is to support CI's
where we omit stage2 to lower the memory usage.
2022-07-12 14:36:33 +02:00
Andrew Kelley
3e864c86da CI: azure: update build.zig for LLVM 14 2022-07-08 23:02:38 -07:00
Andrew Kelley
aade8856ee CI: update scripts to stage1 LLVM 14 tarballs
The previous tarballs were stage3 which is not quite ready for primetime
yet.
2022-07-08 21:28:06 -07:00
Andrew Kelley
bdf3fa12fa CI: update scripts to new LLVM 14 tarballs 2022-07-07 20:47:58 -07:00
Andrew Kelley
927e59d053 CI: fix wrong macos tarball 2022-07-05 15:20:12 -07:00
Andrew Kelley
bcfc4f0ceb CI: update tarballs to LLVM 14 2022-07-04 20:12:44 -07:00
Andrew Kelley
902dc8c721 CI: update freebsd pkg install command 2022-06-30 17:57:00 -07:00
Jakub Konka
ab8a670a57 link-tests: enable on macos CI host only for now 2022-06-22 23:04:47 +02:00
Jakub Konka
1d4dbf8d3c macos: run test-cases single threaded in the CI 2022-06-19 21:08:53 +02:00
Veikka Tuominen
6b36774adc std: disable failing tests, add zig2 build test-std to CI 2022-06-12 10:43:28 +03:00
Andrew Kelley
2bf532fc23 stage2: use std.debug.Trace only when explicitly enabled
Because it bumps up the stack space requirements, which is making a test
case fail on aarch64 drone CI.
2022-06-09 20:00:59 -07:00
Andrew Kelley
b095aa6986 CI: skip single-threaded tests on Drone
sure would be nice if they would just give us another hour of CI run time.
2022-06-01 14:05:58 -07:00
Andrew Kelley
69323fc143 CI: skip non native ReleaseFast and ReleaseSafe tests on drone
Because we're hitting the 2 hour time limit.
2022-06-01 11:19:19 -07:00
Jakub Konka
5b813f1a2a Set macOS/iPhoneOS/tvOS/watchOS ABI to none (unspecified) by default
Prior to this change we would assume the ABI for Apple targets to
be GNU which could result in subtle errors in LLVM emitting calls
to non-existent system libc provided functions such as `_sincosf`
which is a GNU extension and as such is not provided by macOS for example.
This would result in linker errors where the linker would not be
able to find the said symbol in `libSystem.tbd`.

With this change, we now correctly identify macOS (and other Apple
platforms) as having ABI `unknown` which translates to unspecified
in LLVM under-the-hood:

```
// main.ll
target triple = "aarch64-unknown-macos-unknown"
```

Note however that we never suffix the target OS with target version
such as `macos11` or `macos12` which means we fail to instruct LLVM
of potential optimisations provided by the OS such as the availability
of function `___sincosf_stret`. I suggest we investigate that in a
follow-up commit.
2022-05-22 17:45:02 +02:00
Andrew Kelley
66f3efb63b migrate runtime safety tests to the new test harness
* migrate runtime safety tests to the new test harness
   - this required adding compare output / execution support for stage1
     to the test harness.
 * rename `zig build test-stage2` to `zig build test-cases` since it now
   does quite a bit of stage1 testing actually. I named it this way
   since the main directory in the source tree associated with these
   tests is "test/cases/".
 * add some documentation for the test manifest format.
2022-05-13 14:03:20 -07:00
Andrew Kelley
aa05cd4809 CI: fix universal libc step name
This was a merge conflict that went undetected.
2022-05-07 17:44:37 -07:00
Andrew Kelley
e8c85450fe
Merge pull request #11592 from ziglang/stage3-macos-linker
Sema: solve a false positive "depends on itself"
2022-05-07 04:38:19 -04:00
Andrew Kelley
ec95e00e28 flatten lib/std/special and improve "pkg inside another" logic
stage2: change logic for detecting whether the main package is inside
the std package. Previously it relied on realpath() which is not portable.
This uses resolve() which is how imports already work.

 * stage2: fix cleanup bug when creating Module
 * flatten lib/std/special/* to lib/*
   - this was motivated by making main_pkg_is_inside_std false for
     compiler_rt & friends.
 * rename "mini libc" to "universal libc"
2022-05-06 22:41:00 -07:00