Commit Graph
39 Commits
Author SHA1 Message Date
Martin Storsjö 26be2e70cc Remove mingw patches that now have been merged upstream (in a different form) 2016-10-04 10:41:31 +03:00
Martin Storsjö b6fcf6e89d Test building a C++ hello world 2016-08-31 12:25:08 +03:00
Martin Storsjö a4359b6e2d Try building libav with the newly built toolchain 2016-08-31 12:25:08 +03:00
Martin Storsjö 82ce4550d4 Try building a hello world example 2016-08-31 12:25:08 +03:00
Martin Storsjö c1e32c9587 Updated libunwind, libcxx and libcxx patches and build commands
Build libcxx and libcxxabi (succeeding) and libunwind (patch rebased
but build not working).
2016-08-31 12:25:08 +03:00
Martin Storsjö 0e847128ef Add mingw patches for fixing math functions 2016-08-27 22:48:15 +03:00
Martin Storsjö d71fab8802 Add a patch for adding open/read/write/close/setmode aliases to the arm msvcrt
This requires using llvm-dlltool, since genlib currently doesn't
support aliases.
2016-08-27 22:48:15 +03:00
Martin Storsjö e22accd247 Build compiler-rt using cmake, add arm division and float/int64 conversion routines
Build using the master branch instead of 3.9.

By building using cmake, we don't need to build the files that
require an upper case Windows.h.
2016-08-27 22:48:15 +03:00
Martin Storsjö 8afb6e784f Clone and patch mingw after building llvm
This avoids having to rebuild llvm when adjusting mingw patches.
2016-08-27 22:48:15 +03:00
Martin Storsjö 9dd4e7318c Use llvm-dlltool instead of genlib 2016-08-27 22:48:15 +03:00
Martin Storsjö b3fdc5c4e9 Update clang patches for mingw target defaults 2016-08-27 22:48:11 +03:00
Martin Storsjö ffff621129 Add patches for llvm-dlltool 2016-08-24 23:36:44 +03:00
Martin Storsjö 4de5f192a6 Add a clang patch for adding support for __declspec(selectany) 2016-08-24 23:36:44 +03:00
Martin Storsjö 77e76bea00 Force using llvm-ranlib and llvm-ar when building the builtins
This avoids having to manually call ranlib later.
2016-08-24 23:26:32 +03:00
Martin Storsjö 8b36ede40d Update the mingw patch for ctors 2016-08-24 23:25:01 +03:00
Martin Storsjö 7638232b38 Only copy the patches right before they will be applied
This avoids having to rebuild things, whose patches haven't
changed.
2016-08-11 21:06:47 +03:00
Martin Storsjö 00b9d91251 Build the full llvm/clang
The target CppBackend doesn't seem to exist in 3.9
2016-08-11 21:06:47 +03:00
Martin Storsjö 0010386360 Fix an issue with lld and llvm-ar 3.9 vs genlib 2016-08-11 21:06:47 +03:00
Martin Storsjö 362538a9a4 Explain more why the Windows.h symlink is needed 2016-08-10 14:52:16 +03:00
Martin Storsjö 4449d80c05 Patch compiler-rt to fix "make clang_mingw" with the 3.9 branch 2016-08-10 14:52:16 +03:00
Martin Storsjö 9e44ca1b07 Switch from the 3.8 branch to 3.9
The 3.8 branch produces broken code for divisions on arm/windows.
The brokenness can appear as incorrect behaviour or crashes.

The 3.9 branch isn't released yet, but is probably a better target
to base any work on at the moment.
2016-08-10 14:52:16 +03:00
Martin Storsjö 93a77a441a Update patches for lld 3.9
The previously existing patch needed some modifications to fit
on top of lld 3.9.

Patch 2 makes sure that one still can use the lld built in this
way for linking in MSVC mode.

Patch 3 fixes linking binaries larger than 4 MB or so (previously
the binaries linked fine but didn't work).

Patch 4 makes sure to error out if the relocations are too far
away (instead of producing a broken binary), which happens after
16 MB.

Patch 5 fixes relocations that have an offset, which probably
happens in hand-written assembly (in libav).
2016-08-10 14:52:16 +03:00
Martin Storsjö 3eb63bea3d Apply patches for LLVM 3.9
Patches 1 and 2 fix a bug (that has been present in 3.7 and 3.8)
where it can use the wrong instruction in some cases (libav
with inline assembly disabled), causing rounding errors in
integer audio dct's there.

Patch 3 allows building inline assembly with clang/llvm in MSVC mode.
2016-08-10 14:52:16 +03:00
Martin Storsjö feac2f56ba Update patches for clang 3.9
Patches 1-2 are just rebased from the earlier version for clang
3.8, no changes in surrounding code there.

Patch 3 is necessary to fix a regression in assembling standalone
assembly files in 3.9.

Patch 4 makes clang work in MSVC mode with the MSVC SDK for ARM
(to simplify testing of the toolchain in that mode).
2016-08-10 00:02:09 +03:00
Martin Storsjö 5e1fbce075 Disable fetching/building of C++ specific things 2016-08-10 00:02:07 +03:00
Martin Storsjö aa65ed4547 Fetch a non-ancient version of gas-preprocessor.pl 2016-08-09 23:56:31 +03:00
Martin Storsjö 9dc7babfc1 Comment out building libunwind
This failed building for me, so skip it for now.
2016-08-09 23:56:31 +03:00
Martin Storsjö 40563566f8 Base the build on Ubuntu 16.04, to ease using the built binaries outside of docker 2016-08-09 23:56:31 +03:00
Hugo Beauzée-Luyssen af78b21025 Remove unnecessary copy 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 0355fd9f4b Update mingw-w64 patchset 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 486058c465 Fetch gaspp & add it to PATH 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen f38490c272 --target is not required for genlib 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 3837b18e40 Update msvcr120_app patch 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 6ab9b52592 Provide an appropriate NM program 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen d52220c121 Update patchset 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 62be46d9c6 Add libunwind build script
Not functionnal yet
2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen d70ed92ed0 Add a mingw-w64 patch 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 1e0a216c46 libcxx now compiles 2016-08-04 16:20:17 +02:00
Hugo Beauzée-Luyssen 4808f05671 Add an early arm toolchain
This isn't fully functionnal yet
2016-08-04 16:20:17 +02:00