Martin Storsjö
585c767ee4
Use llvm-ar with the flag 'L' instead of a helper MRI script for merging archives
2018-12-20 12:11:10 +02:00
Martin Storsjö
99e2fefc9d
Use nproc and sysctl -n hw.cpu for default initializing CORES
...
This avoids having to pass --build-arg CORES=n when building the
docker images.
2018-11-09 22:20:34 +02:00
Martin Storsjö
c9817eca35
Add a testcase for ubsan
2018-10-17 22:45:54 +03:00
Martin Storsjö
f5008d5380
Merge build-mingw-w64-widl.sh back into build-mingw-w64.sh
...
This allows checking out the mingw-w64 repo if it is missing, when
building widl.
2018-10-17 22:45:54 +03:00
Martin Storsjö
5390b58835
Consistently use "COPY .. ./" in Dockerfiles
...
This avoids potential issues and confusion with cases where a plain "." as
target doesn't work.
2018-10-16 20:25:39 +03:00
Martin Storsjö
fb4862b0d6
Split out building widl to a separate shell script
...
When cross compiling a llvm-mingw toolchain, we need to build widl
for the intended host environment as well.
2018-10-02 21:34:54 +03:00
Martin Storsjö
6bb0cfca58
Convert TOOLCHAIN_ARCHS from ENV to ARG
...
This allows overriding it with --build-arg.
2018-10-02 21:34:54 +03:00
Martin Storsjö
a38e52fff5
Build address sanitizer
2018-10-02 14:53:53 +03:00
Martin Storsjö
6d7cef9e9e
test: Rename ssp.c to stacksmash.c
2018-10-02 14:53:53 +03:00
Martin Storsjö
f0aa7c4c10
Revert "Use dwarf exceptions on i686 as well"
...
This reverts commit ca43ab5ccd .
It was reported in https://github.com/mstorsjo/llvm-mingw/issues/8 that
the dwarf unwinding on i686 doesn't always work.
This commit adds a testcase for the case that didn't work previously.
2018-10-01 14:28:30 +03:00
Martin Storsjö
ab1da59a48
Use a single COPY command in dockerfiles for both *.sh and *.c for wrappers
2018-09-14 09:38:44 +02:00
Martin Storsjö
aa80a9ecbc
Copy the built DLLs into the test output directories
2018-09-05 12:28:33 +03:00
Martin Storsjö
37f8ba8516
Add tests for the autoimport feature
2018-09-05 12:21:46 +03:00
Martin Storsjö
470008f09c
Factorize the building of test DLLs in the dockerfile
2018-09-05 11:53:46 +03:00
Martin Storsjö
09567cdc96
Build tlstest-lib.dll in the arch specific output subdirectory as well
...
This was missed in 0448bd61 .
2018-09-05 11:52:57 +03:00
Martin Storsjö
4a1c91c208
Add a testcase for libssp
2018-08-13 23:50:01 +03:00
Martin Storsjö
0448bd616a
Build tests in a separate subdirectory for each arch
...
This eases cases when testcases contain DLLs, whose names won't
contain the arch name.
2018-08-13 23:49:08 +03:00
Martin Storsjö
917860d0ef
Amend the comment about the size of the docker image
2018-08-03 11:58:59 +03:00
Martin Storsjö
ca8ce421cd
Strip the llvm installation after building
...
This still inflates the docker image chain since it's done in
a separate RUN command though.
This tests that one still can (re)build
compiler-rt/libunwind/libcxxabi/libcxx after stripping down the llvm
installation.
2018-08-03 10:56:49 +03:00
Martin Storsjö
26ab7a4424
Add a test app for thread local variables with destructors
2018-08-03 10:19:50 +03:00
Martin Storsjö
609fe4b81d
Use binutils objcopy and strip if available
...
For x86 architectures, binutils objcopy and strip can be used as
such.
For armv7 and aarch64, binutils doesn't recognize the architectures
and refuse to touch the files. For most/everything that objcopy/strip
do, the actual architecture doesn't really matter though. Therefore,
provide a wrapper script and a minimal tool for editing PE executables,
that change the architecture from armv7 and aarch64 to i686 and x86_64
respectively before invoking binutils, and change it back afterwards.
In case the binutils tools are missing, just return a successful result
without doing anything for stripping operations (previously, we had the
<triplet>-strip tool symlinked to /bin/true, so this isn't any worse than
before) and fail for other objcopy operations.
2018-07-25 00:56:58 +03:00
Martin Storsjö
3c1c81f321
Build the winstorecompat library from mingw-w64-libraries
2018-07-16 23:30:54 +03:00
Martin Storsjö
3b3924e4b1
test: Add a testcase for setjmp
2018-06-05 23:40:25 +03:00
Josh de Kock
69b81a6d01
Build the mingw winpthreads library
2018-05-07 09:46:10 +03:00
Josh de Kock
08224169fd
Add windres wrapper for LLVM tools
2018-05-05 00:14:45 +03:00
Martin Storsjö
c9db1e06b5
Build libssp from gcc
...
gcc/libssp's configure script runs checks for flags that clang doesn't
implement. We actually just need to set a few HAVE defines and compile
the .c sources, so just check out this subdirectory using svn and build
it using a custom makefile.
2018-04-23 00:26:05 +03:00
Martin Storsjö
e9975fabab
Squash all build steps in the dockerfile, producing a much smaller image
...
Keep the old dockerfile with a different file name, for easier
testing/debugging (where later steps can be tweaked without
rebuilding everything).
2018-04-02 16:00:27 +03:00