Commit Graph

235 Commits (master)

Author SHA1 Message Date
Andrew Kelley 6eba65bd7f
ci: add aarch64 to download page 2019-10-24 21:40:26 -04:00
Andrew Kelley bf5be65be6
disable not working stuff 2019-10-24 21:13:47 -04:00
Andrew Kelley f6367a0751
ci: build docs, fix PR logic 2019-10-24 20:47:50 -04:00
Andrew Kelley 695a746aa0
ci: use x86_64 namespaced docker image
I took a risk that docker had implemented namespacing with regards to
architectures correctly, but of course they didn't. So the CI docker
image for x86_64 was clobbered by an aarch64 image with the same name.

Now we're doing arch namespaces with the tag name, so here's the x86_64
one.
2019-10-24 20:46:07 -04:00
Andrew Kelley 551e70dcb2
ci: add s3 secrets to drone config 2019-10-24 19:46:11 -04:00
Andrew Kelley 43f5054a90
ci: drone tests only aarch64 with docker image 2019-10-24 19:46:11 -04:00
Andrew Kelley 0e9f32d42b
disable static build for now until the docker image is ready 2019-10-24 19:46:11 -04:00
Andrew Kelley 099532af87
add Drone Cloud CI configuration 2019-10-24 19:46:11 -04:00
Andrew Kelley 93295f3b13
remove -DZIG_FORCE_EXTERNAL_LLD=ON
Looks like the patch we need is in llvm trunk, not llvm 9.
2019-10-16 21:16:06 -04:00
Andrew Kelley c03dc6665f
update CI script for windows static builds 2019-10-16 19:08:41 -04:00
Sahnvour ae0628b30c ci: use parallel msbuild.exe processes for faster building on windows 2019-10-13 11:02:21 -04:00
Andrew Kelley 6f10e3fda6
llvm 9.0.0 => llvm 10.0.0 2019-10-02 02:11:46 -04:00
Andrew Kelley 6128bc728d
macos ci: display system info before running anything 2019-09-25 22:50:21 -04:00
Andrew Kelley 55925b6e25
windows CI: fix name collision
Previously the CMAKE_BUILD_TYPE=Release was conflicting with the
"distribution" directory `release`. I renamed this to `dist` so that
it won't conflict with any build types.
2019-09-22 19:47:07 -04:00
Andrew Kelley 65b495af58
windows CI: use MinSizeRel to work around MSVC bug
See #3024
2019-09-22 15:59:06 -04:00
Andrew Kelley 12b195f9d5
ci: update windows image to MSVC 2019 2019-09-22 15:32:52 -04:00
Andrew Kelley dc2463d9a9
windows ci: make the case of file names agree 2019-09-22 11:22:22 -04:00
Andrew Kelley ffef5d26b6
significantly increase test coverage
* add zig build option `-Dskip-libc` to skip tests that build libc
   (e.g. if you don't want to wait for musl to build)
 * add `-Denable-wine` option which uses wine to run cross compiled
   windows tests on non-windows hosts
 * add `-Denable-qemu` option which uses qemu to run cross compiled
   foreign architecture tests
 * add `-Denable-foreign-glibc=path` option which combined with
   `-Denable-qemu` enables running cross compiled tests that link
   against glibc. See
   https://github.com/ziglang/zig/wiki/Updating-libc#glibc for how to
   produce this directory.
 * the test matrix is done manually. release test builds are only
   enabled by default for the native target. this should save us some CI
   time, while still providing decent coverage of release builds.
   - add test coverage for `x86_64-linux-musl -lc` (building musl libc)
   - add test coverage for `x86_64-linux-gnu -lc` (building glibc)
   - add test coverage for `aarch64v8_5a-linux-none`
   - add test coverage for `aarch64v8_5a-linux-musl -lc` (building musl libc)
   - add test coverage for `aarch64v8_5a-linux-gnu -lc` (building glibc)
   - add test coverage for `arm-linux-none`
   - test coverage for `arm-linux-musleabihf -lc` (building musl libc) is
     disabled due to #3286
   - test coverage for `arm-linux-gnueabihf -lc` (building glibc) is disabled
     due to #3287
   - test coverage for `x86_64-windows-gnu -lc` (building mingw-w64) is
     disabled due to #3285
 * enable qemu testing on the Linux CI job. There's not really a good
   reason to enable wine, since we have a Windows CI job as well.
 * remove the no longer needed `--build-file ../build.zig` from CI
   scripts
 * fix bug in glibc compilation where it wasn't properly reading the abi
   list txt files, resulting in "key not found" error.
 * std.build.Target gains:
   - isNetBSD
   - isLinux
   - osRequiresLibC
   - getArchPtrBitWidth
   - getExternalExecutor
 * zig build system gains support for enabling wine and enabling qemu.
   `artifact.enable_wine = true;`, `artifact.enable_qemu = true;`. This
   communicates that the system has these tools installed and the build
   system will use them to run tests.
 * zig build system gains support for overriding the dynamic linker of
   an executable artifact.
 * fix std.c.lseek prototype. makes behavior tests for
   arm-linux-musleabihf pass.
 * disable std lib tests that are failing on ARM. See #3288, #3289
 * provide `std.os.off_t`.
 * disable some of the compiler_rt symbols for arm 32 bit. Fixes
   compiler_rt tests for arm 32 bit
 * add __stack_chk_guard when linking against glibc. Fixes std lib tests
   for aarch64-linux-gnu
 * workaround for "unable to inline function" using `@inlineCall`. Fixes
   compiler_rt tests for arm 32 bit.
2019-09-22 11:22:17 -04:00
Andrew Kelley b76d16c7c7
update remaining llvm 8.0.0 references to 9.0.0 2019-09-19 20:55:02 -04:00
Andrew Kelley 14d2e16b60
macos ci: RISCV is no longer experimental 2019-09-19 18:32:40 -04:00
Andrew Kelley 00cd988438
update CI scripts llvm 8 to 9 2019-09-19 17:04:27 -04:00
stratact a165cc0535 Get more of the tests passing for FreeBSD (#3197)
* Add missing <stdint.h> include for uint8_t type declaration

* Add needed FreeBSD check to link to libpthread

* Apply patch to enable more tests in the FreeBSD CI
2019-09-10 14:50:54 -04:00
Andrew Kelley 786f3cdd13
ci: let's try a new build of llvm+clang on 10.14 2019-06-07 12:07:23 -04:00
mrkishi fdddd13106 add cache-control headers to tarballs on ci 2019-06-04 23:25:24 -04:00
Marc Tiehuis 81767a658d Don't install stage2 artifacts
Fixes #2220.
2019-04-30 12:13:41 -04:00
Andrew Kelley a10a1efc83
ci: fix accidentally shipping zig0.exe 2019-04-17 20:27:13 -04:00
Andrew Kelley 1f9ebf49f8
ci: stop doing the branch redirect thing
Now that we have https://ziglang.org/download/index.json

See #1046
2019-04-05 17:33:58 -04:00
Andrew Kelley 692086f898
ci: add missing cache control headers and update download/index.json 2019-04-03 16:04:24 -04:00
Andrew Kelley b5cc92f163
ci: more quoting 2019-03-21 10:05:14 -04:00
Andrew Kelley bf4701562c
ci: add FreeBSD to download page 2019-03-20 23:19:18 -04:00
Andrew Kelley b7fb63d696
ci: apt-get update before install as a workaround 2019-03-20 19:05:47 -04:00
Andrew Kelley 1b25dcde96
freebsd ci: disable not working stuff 2019-03-19 00:53:36 -04:00
Andrew Kelley fd2993578d
ci: freebsd tests docs 2019-03-19 00:05:59 -04:00
Andrew Kelley b44ff4ca8e
freebsd ci: install wget and set -x -e 2019-03-18 23:44:29 -04:00
Andrew Kelley 0c6e687436
start producing freebsd binaries 2019-03-18 23:37:48 -04:00
Andrew Kelley db0e188f0e update macos static build for llvm8 2019-03-18 18:36:35 -04:00
Andrew Kelley c00216701c Merge remote-tracking branch 'origin/master' into llvm8 2018-12-23 17:04:26 -05:00
Andrew Kelley 5a68c60023
ci: update msys packages before installing 2018-12-16 12:32:20 -05:00
Andrew Kelley 624c74af6f
ci: install openssl on windows 2018-12-16 11:22:33 -05:00
Andrew Kelley b29769532b
ci: workaround azure quirk for windows too 2018-11-29 14:54:23 -05:00
Andrew Kelley bbdc12891b
ci: workaround azure quirk with set -x 2018-11-29 11:05:56 -05:00
Andrew Kelley c21884e1d6 Merge remote-tracking branch 'origin/master' into llvm8 2018-11-17 02:18:56 -05:00
Andrew Kelley eba90cdc41
ci: remove accidental .lib files from windows zip 2018-11-05 16:55:16 -05:00
Andrew Kelley 86e3b51565
ci: 7-zip instead of info-zip for windows
I'm guessing this is why 0.3.0 is 21.5MiB while
master is 27.6MiB
2018-11-05 13:26:46 -05:00
kristopher tate 3ec58b8e0b ci/azure: set wget to non-verbose mode to make logs easier to read;
Over 5000 lines of wget download process updates are stored to the logs: `2018-11-05T15:12:23.7724039Z 296000K .......... .......... .......... .......... .......... 99% 83.9M 0s`
2018-11-05 12:59:35 -05:00
Andrew Kelley 197ffe0092 update ci scripts for llvm 8 2018-11-05 10:58:53 -05:00
Andrew Kelley 973e0abe79
ci: full test suite 2018-11-05 10:10:27 -05:00
Andrew Kelley e64e8d62dd
ci: display environment variables 2018-11-05 09:46:31 -05:00
Andrew Kelley 9b0fb8a912
ci: fix paths 2018-11-05 01:51:28 -05:00
Andrew Kelley dc2dfef0a2
ci: upload a src tarball too 2018-11-05 01:32:21 -05:00
Andrew Kelley caf1ec9474
ci: fix shasum commands 2018-11-04 23:26:23 -05:00
Andrew Kelley eb1c769404
ci: add missing steps field 2018-11-04 22:38:23 -05:00
Andrew Kelley c2df9236c4
ci: use azure for all CI
* appveyor and travis are removed
 * add a job to update the download page when all
   targets pass. closes #1046
2018-11-04 22:32:59 -05:00
Andrew Kelley c7b79284ef
azure: build static macos 2018-11-02 00:54:34 -04:00
Andrew Kelley 96923edc53
travis: don't use newer cli args of s3cmd 2018-10-23 18:48:34 -04:00
Andrew Kelley 08c5f7d059
travis: add missing http headers for docs 2018-10-23 17:06:37 -04:00
Andrew Kelley b9a53c261a
travis: upload langref on successful test run 2018-10-17 18:10:07 -04:00
Andrew Kelley af01c6e2bf
include LICENSE in windows static builds 2018-09-23 12:29:38 -04:00
Andrew Kelley f9bf04c38b
travis: build zig with gcc to match what llvm was built with
from #llvm IRC:

<andrewrk> does llvm 7 as a .so have some kind of new initialization
requirement? I'm getting a segfault in llvm::DIBuilder::createFile
(with valid non-null parameters), when linking my frontend against
llvm-7.so but not when linking against llvm .a libraries

<d0k> we have an ABI bug in LLVM 7 when the .so is built with gcc
but your program is build with clang. I'm sorry for that.
2018-09-19 17:15:33 -04:00
Andrew Kelley 287f5cce50
build: fix finding llvm and clang 7 2018-09-19 15:38:36 -04:00
Andrew Kelley e3d8cae35a
travis: fix llvm apt package names 2018-09-19 14:54:32 -04:00
Andrew Kelley 6d23619cce
fix typo from previous commit 2018-09-19 13:53:47 -04:00
Andrew Kelley f418a943cc
travis: fix package names 2018-09-19 13:46:20 -04:00
Andrew Kelley d4cb373024
travis: update apt repo url 2018-09-19 13:25:11 -04:00
Andrew Kelley 69c876cc87
appveyor: remove old cache file 2018-09-19 12:58:58 -04:00
Andrew Kelley 0ab7cfa023
appveyor: use MSVC 2017 2018-09-18 16:36:31 -04:00
Andrew Kelley a2abdb185f
Merge remote-tracking branch 'origin/master' into llvm7 2018-09-16 10:51:58 -04:00
Andrew Kelley 77fd147b26
appveyor: skip all release tests to save time
appveyor is taking longer than 1 hour to run the tests
2018-09-13 11:26:13 -04:00
Andrew Kelley afe6316d32
appveyor: skip release-safe to save time
appveyor is taking longer than 1 hour to run the tests
2018-09-12 17:36:24 -04:00
Andrew Kelley 869475c110
ci: skip release-small tests to save time
we keep hitting the limit on how long CI tests take to run.
2018-09-12 14:50:26 -04:00
Andrew Kelley 6b7f3d01ae
ci: build zig in release mode
It makes sense to test release mode, plus we're up against the
time limits of CI, so this should make room.
2018-09-11 20:53:28 -04:00
Andrew Kelley a3d7a807b7 appveyor: remove llvm 5.0.1 from cache 2018-06-01 12:22:53 -04:00
Andrew Kelley bbfff46146 Merge remote-tracking branch 'origin/master' into llvm7 2018-04-26 10:55:29 -04:00
Andrew Kelley fa05cab01a travis: put cache-control header for ziglang.org/download 2018-04-13 12:17:07 -04:00
Andrew Kelley 588116cacc travis: update docker image tag for llvm7 2018-04-04 18:29:31 -04:00
Andrew Kelley cca93908e6 Merge remote-tracking branch 'origin/master' into llvm7 2018-04-04 17:22:26 -04:00
Andrew Kelley 6050b9d835 travis: don't skip tests
fix broken previous commit
2018-04-03 21:40:36 -04:00
Andrew Kelley 2676da61a6 travis: better s3 artifacts 2018-04-03 21:39:03 -04:00
Andrew Kelley d1f8e722b5 travis: don't upload other files as artifacts 2018-04-03 14:23:56 -04:00
Andrew Kelley 21b47b34d8 travis: don't upload build/ folder as artifacts 2018-04-03 12:59:28 -04:00
Andrew Kelley 65e4bb149e travis artifacts: don't upload extra stuff 2018-04-03 12:04:06 -04:00
Andrew Kelley aadc14fd78 upload static linux artifacts on successful travis build 2018-04-03 11:22:18 -04:00
Andrew Kelley 5d5feb11de appveyor and travis ci: stop passing unused configure args 2018-03-30 17:26:01 -04:00
Andrew Kelley 62668e3e6b update to llvm 7.0.0 2018-03-22 15:39:50 -04:00
Andrew Kelley 6288ad865c change 5 to 6 in travis osx scripts 2018-03-10 14:36:59 -05:00
Andrew Kelley 2db28ea849 travis ci: update ubuntu llvm repo and CC,CXX env vars to 6 2018-03-08 11:46:47 -05:00
Andrew Kelley 73a306e2fa fix conflict artifact accidentally in appveyor script 2018-03-03 17:44:41 -05:00
Andrew Kelley 7ee1b88042 add llvm 6.0.0 binaries to appveyor cache 2018-03-03 16:43:57 -05:00
Andrew Kelley ef6260b3a7 Merge remote-tracking branch 'origin/master' into llvm6 2018-02-11 23:49:20 -05:00
Andrew Kelley 2c697e50db appveyor: don't try to build for mingw
pacman is giving me:
:: msys2-runtime and catgets are in conflict.
Remove catgets? [y/N] error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
2018-02-09 01:15:17 -05:00
Andrew Kelley 8e554561df appveyor: answer Yes to all pacman questions 2018-02-09 00:47:13 -05:00
Andrew Kelley 47be64af5a Merge remote-tracking branch 'origin/master' into llvm6 2018-01-25 11:51:41 -05:00
Andrew Kelley b52bffcf8d appveyor: add language reference to build artifacts 2018-01-22 16:14:06 -05:00
Andrew Kelley 5d9a8cbe1a Merge remote-tracking branch 'origin/master' into llvm6 2018-01-05 13:46:21 -05:00
Andrew Kelley 79d50d9933 appveyor: enable verbose link for self hosted compiler 2018-01-04 23:43:46 -05:00
Andrew Kelley f377b1e886 Revert "appveyor ci: look for newer windows sdk version"
This reverts commit 31d632b72e.

according to
https://developer.microsoft.com/en-us/windows/downloads/sdk-archive
10240 is actually 26624 and there was some kind of versioning issue.
2018-01-04 23:37:21 -05:00
Andrew Kelley 7f0b12a481 appveyor: skip building self hosted compiler for now 2018-01-04 23:30:03 -05:00
Andrew Kelley 25ad0b47e2 appveyor: try using vcvarsall 2018-01-04 23:11:27 -05:00
Andrew Kelley d1ef17e3cd appveyor: set VCINSTALLDIR 2018-01-04 22:59:39 -05:00
Andrew Kelley 1b120d1e49 update windows build to llvm 5.0.1
llvm-config.exe does not handle diaguids.lib for us so we have to
duplicate the work.
2018-01-04 22:46:26 -05:00
Andrew Kelley 21a552682e Revert "try using appveyor's llvm copy"
This reverts commit 35dc987dc8.
2018-01-04 19:06:48 -05:00
Andrew Kelley 35dc987dc8 try using appveyor's llvm copy 2018-01-04 18:54:46 -05:00
Andrew Kelley 31d632b72e appveyor ci: look for newer windows sdk version 2018-01-04 18:34:42 -05:00
Andrew Kelley d008e209e7 self-hosted compiler works on macos 2018-01-04 15:30:22 -05:00
Andrew Kelley 91ef68f9b1 Merge remote-tracking branch 'origin/master' into llvm6 2017-11-29 16:34:50 -05:00
Andrew Kelley 5a25505668 rename "parsec" to "translate-c" 2017-11-24 14:56:05 -05:00
dimenus e9d7623e1f Merge remote-tracking branch 'origin/master' into llvm6 2017-11-10 09:49:45 -06:00
Andrew Kelley 53b18c8542 fix travis linux script 2017-11-07 09:06:29 -05:00
Andrew Kelley 94ec2190f8 update to llvm master 2017-11-02 21:54:24 -04:00
Andrew Kelley 38a947c683 appveyor: update version to match zig version 2017-10-16 13:01:34 -04:00
Andrew Kelley 1d88f9b9a6 appveyor: build with msvc and publish artifacts
See #540
2017-10-16 12:22:13 -04:00
Andrew Kelley c180ef86af fix travis 2017-10-02 10:48:20 -04:00
Andrew Kelley ec40542c44 windows: alignstack=16 on every function
See #302
2017-10-02 09:55:49 -04:00
Andrew Kelley 9636603a3b fix build when no cmake path args specified
broken by 0227becb56
2017-10-01 16:10:35 -04:00
Andrew Kelley a2e6ada1c6 travis: set -e on osx script 2017-10-01 11:59:21 -04:00
Andrew Kelley a458ec9998 travis: older wine only works with i386 builds 2017-10-01 11:50:53 -04:00
Andrew Kelley c42f7309b6 travis: fix typo in linux script 2017-10-01 11:27:42 -04:00
Andrew Kelley 6ae631d1a7 add windows 32 bit to test matrix
See #302
2017-10-01 11:11:38 -04:00
Andrew Kelley 6e5edc79ec fix build for travis osx 2017-09-17 17:47:12 -04:00
Andrew Kelley 7ee00730ac add option to run tests in LLDB and turn it on for macos travis 2017-09-17 14:43:51 -04:00
Andrew Kelley 14cda27b64 depend on embedded SoftFloat-3d instead of __float128
See #302
See #467
2017-09-14 01:46:47 -04:00
Andrew Kelley 4b6e278028 travis: use embedded LLD and perform all tests
apt.llvm.org has a new enough LLVM build for trusty
2017-09-05 22:55:56 -04:00
Andrew Kelley 2c9bdad346 rename parseh to parsec 2017-09-05 22:55:03 -04:00
Andrew Kelley eb8440441f travis: skip cross compiling osx tests
we have to skip cross compiling OSX tests because
apt.llvm.org has an old version of llvm for the
version of ubuntu that travis is running on.
2017-08-30 15:22:50 -04:00
Andrew Kelley 97013951dd tests use darwin, not macosx since that's what macbook reports as 2017-08-30 15:15:14 -04:00
Andrew Kelley 1525e2c056 travis: use external lld for linux 2017-08-28 03:56:42 -04:00
Andrew Kelley 7f9de4b945 travis: use external lld for apple
since the binary I uploaded to build against has the LLD fixes
2017-08-28 03:32:43 -04:00
Andrew Kelley ebdc6b594d all tests passing in MacOS
depends on LLD 5.0.0 with 3 patches

See #273
2017-08-27 17:16:42 -04:00
Andrew Kelley 5fd579a51c macos passing all tests except for building a shared library
see #273
2017-08-27 05:44:03 -04:00
Andrew Kelley ff2c794612 all behavior tests passing for macos
See #273
2017-08-27 05:15:24 -04:00
Andrew Kelley 91536813ec macos updates
* try some macos travis stuff
 * put c in the link libs for macos since we always link with libSystem
 * for non-native targets on macos, allow runtime symbol resolution
   - it's causing an infinite loop in LLD.
 * for macos, always build compiler_rt and turn on LinkOnce because
   compiler_rt on darwin is missing some stuff.
2017-08-27 02:51:25 -04:00
Andrew Kelley 01f88bf8c6 travis again 2017-08-27 01:28:04 -04:00
Andrew Kelley fedccf9d2d travis try again 2017-08-27 01:19:18 -04:00
Andrew Kelley 6623a11b2c travis: add macos script 2017-08-27 01:07:06 -04:00
Andrew Kelley e64f0971fc add appveyor integration testing 2017-06-03 12:47:23 -04:00