Commit Graph
50 Commits
Author SHA1 Message Date
Martin Storsjö 0dba17c5bf Clean up some commented out parts 2017-09-08 11:24:26 +03:00
Martin Storsjö 4ec04722ef Update llvm/clang/lld/mingw-w64/libcxx to newer versions
These versions contain fixes relevant to mingw/clang.

Do the svn rebase (only necessary for getting sensible llvm/clang
version numbers in clang --version) before checking out the specific
version, otherwise we always end up at the latest master version.
2017-09-06 14:22:58 +03:00
Martin Storsjö 2d5bf52883 Add || exit 1 for exiting loops immediately on failures 2017-08-31 13:37:15 +03:00
Martin Storsjö 961868b9f2 Update llvm/clang/lld/libcxx to the latest upstream versions
llvm and clang have got new patches that are relevant for mingw
and arm64/win.

compiler-rt has changed things, so we can't ask it to build builtins
for i686 any longer, but need to request it for i386 instead - and
clang will expect it to be named i386 even though we're invoking it
with an i686 target.
2017-08-31 13:37:15 +03:00
Martin Storsjö 1feb7a262c Remove some unnecessarily set build parameters 2017-08-30 23:08:37 +03:00
Martin Storsjö 7194894b4a Build C++ things for arm64 as well
This requires updating to the latest version of mingw-w64.
2017-08-28 23:02:36 +03:00
Martin Storsjö 3fc98d9d8a Remove a leftover --depth=1
That obviously doesn't work when wanting to check out a specific,
possibly older, revision.
2017-08-28 13:50:52 +03:00
Martin Storsjö f3c9eabe72 Build libcxx and hello-cpp for x86_64 and i686 as well 2017-08-26 23:23:25 +03:00
Martin Storsjö 2a6f7a0715 Remove setting of an unnecessary cmake flag 2017-08-26 23:13:04 +03:00
Martin Storsjö 6417a74596 Factorize code for building mingw-w64-crt and compiler-rt for multiple archs 2017-08-26 23:10:58 +03:00
Martin Storsjö 9dcdca1563 Update to the latest version of mingw-w64 with the local patches merged 2017-08-25 23:59:18 +03:00
Martin Storsjö ed96326423 Build libcxx and libcxxabi statically for armv7 and test building a C++ hello world 2017-08-25 14:21:45 +03:00
Martin Storsjö 43906e77d6 Stop autoreconfiguring mingw-w64-crt
We don't patch the makefiles at the moment.
2017-08-25 14:16:53 +03:00
Martin Storsjö f672db193b Adjust cmake invocations for building compiler-rt
This fixes cross-building for i686.
2017-08-25 14:01:16 +03:00
Martin Storsjö 3e1dfb2e79 Initialize the llvm/clang checkouts with git-svn
This produces more sensible version numbers in the clang --version
output.
2017-08-23 12:54:08 +03:00
Martin Storsjö 72ec9880c8 Update to the latest version of mingw-w64 where the clang ctors patch is merged 2017-08-22 23:19:17 +03:00
Martin Storsjö bf656d77e7 Update to a LLVM 5.0-ish version from trunk
Using the 5.0 release branch should work equally well except for
aarch64/win support.
2017-08-22 14:10:08 +03:00
Martin Storsjö 9fe9a5e2e4 Comment out c++ related parts of the build, the libcxx parts aren't rebased for 4.0 yet 2017-04-03 16:18:52 +03:00
Martin Storsjö 2504fdbd88 Update to the LLVM 4.0 release branch 2017-04-03 14:42:55 +03:00
Martin Storsjö 423f5a656a Make the git clone commands consistent 2017-04-03 13:10:37 +03:00
Martin Storsjö 1957272cd5 Remove the compiler-rt mingw/arm patch
This has now been committed upstream in the master branch (we
check out the master branch of compiler-rt, not the 3.9 branch),
in SVN rev 287465 (git mirror commit 8134888c4d01).
2016-11-19 23:34:12 +02:00
Martin Storsjö f3b034f10a Clang/LLVM 3.9 is now 3.9.1 2016-10-04 10:41:54 +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ö 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ö 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ö 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ö 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ö 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 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 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