João Matos
bf03942a92
Auto-detect .NET target framework to use in `build.sh` ( #1864 )
...
* Auto-detect .NET target framework to use in `build.sh`.
* Remove some unused build code and files.
10 months ago
Conrad Kreyling
a81abd5614
LLVM crosscompile x64 for ARM64 ( #1826 )
...
* LLVM crosscompile x64 for ARM64
* Fix MacOS host platform test
* Ensure options is persistent in cross compile paths
1 year ago
josetr
8de5e1a2ae
Move all LLVM files to /build/llvm
5 years ago
josetr
1fec063bb3
Remove secondary Zstandard compression from LLVM packages
5 years ago
josetr
b455772f40
Show a message explaining how to build LLVM when a pre-built package is unavailable.
5 years ago
josetr
53073ca2f8
Fix wrong LLVM package name when GCC version is >= 10
5 years ago
josetr
dbbcb6dbdf
Upgrade to .NET Core 3.1 and improve build system
5 years ago
josetr
e22b8cb8a6
Generate correct LLVM package name regardless of the current operating system
5 years ago
Joao Matos
2b1095c844
Compress LLVM archives using zstd.
5 years ago
Joao Matos
0c2c554cf4
Call MSBuild in x86 build with Win32 platform.
5 years ago
Joao Matos
8aad7accd4
Do not use LLD when building LLVM under macOS.
5 years ago
Joao Matos
78716eecf9
Fix Lua cmake() so it works when CMake is in PATH on macOS.
5 years ago
josetr
db249e05f0
Speed up CI build by avoiding vcvarsalls.bat ( #1484 )
5 years ago
josetr
73f334c90e
Reduce number of "download progress" messages. ( #1482 )
5 years ago
Dimitar Dobrev
2049d52f9c
Fix passing of CMake options to LLVM on Windows
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
5ef13ac6e5
Pack the lld headers as well
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
João Matos
bd783b1cd0
Add debug option and flags to the Premake build and compile scripts.
5 years ago
Dimitar Dobrev
8b3eadf6de
Simplify the structure of the LLVM package
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
36f754116f
Fix a syntax error in CMake listing Clang modules
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
fe8d0d70f8
Enable building lld as part of LLVM
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
067827cf29
Restore modules needed for compiling with Clang
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
454a46ed1c
Support Visual Studio 2019 for building Clang
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Joao Matos
eab2620c18
Update LLVM to the latest version.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
Signed-off-by: Joao Matos <joao@tritao.eu>
6 years ago
Dimitar Dobrev
d24ef35949
Make the default build for Windows 64-bit
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
fe4d247713
Sped the LLVM build on Windows up by parallelizing
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Joao Matos
5c4f3be5fb
Use MSBuild when building LLVM on Windows due to PDB issues with Ninja.
6 years ago
Joao Matos
751edf7488
Keep Clang libTooling libs when packaging LLVM.
7 years ago
Joao Matos
c6f3501f05
Sort LLVM CMake options.
7 years ago
Joao Matos
4fcfe4e4eb
Build changes.
...
- Added support for building with Clang and LLD
- Switched to use csc.exe Roslyn compiler under Mono
- Disable most of the support for explicit pre-C++11 ABI since we do not
need it anymore
7 years ago
Joao Matos
e88b1a8080
Fixed LLVM/Clang tar.gz archive extraction using 7-Zip on Windows.
7 years ago
Dimitar Dobrev
f254951b03
Excluded many unused modules when building LLVM and Clang.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
7 years ago
João Matos
5c70b418f3
Update VS check when downloading pre-compiled LLVM packages.
...
Fixes https://github.com/mono/CppSharp/issues/1032 .
8 years ago
Rokas Kupstys
efc77924cc
Add compiler/abi information to LLVM package names on linux.
...
Compiler kind (always gcc for now) and version (4.8/4.9/5/6/7) is now always included in llvm package name. Additionally if `--no-cxx11-abi` flag is passed to premake then package name will end wiht "-no-cxx11".
Prebuilt LLVM binaries package for CI needs renaming to `llvm-9bde5f-linux-x64-gcc-4.8-Release.tar.xz`.
8 years ago
Rokas Kupstys
e8e727d681
Fix linking to LLVM libs on linux, when system has llvm/clang installed. ( #1020 )
...
This change prevents premake from inserting /usr/lib64 search path on linux. GCC does not need this path specified compiler automatically knows where to look for system libs. Insertion of this path causes issues system has clang/llvm libs installed. Build would link to system libraries instead of custom required by CppSharp.
Also this patch revealed that linking to `pthread`, `z` and `tinfo` libraries on linux is not necessary and disabling them in LLVM build config works. Linking to these libs was removed. As you probably have guessed in the past CppSharp would throw `DllNotFoundException` due to missing symbols because it linked to system LLVM libs, not custom in-tree LLVM build.
8 years ago
Rokas Kupstys
1cac2e0d78
Enable cxx11 abi for GCC 4.9+ on linux.
...
GCC version is checked, if version is 4.8 or lower then cxx11 ABI is disabled. Added new `--no-cxx11-abi` option. It explicitly disables cxx11 ABI even on new compilers. This option is also taken into account when building LLVM.
8 years ago
Joao Matos
082349654e
Do not try to get Git revision in `git.rev_parse` if the directory is not a repo.
8 years ago
Joao Matos
9e5b9ab539
Remove extra whitespace.
8 years ago
Rokas Kupstys
02ae1f83fe
Explicitly disable use of libedit, zlib, terminfo and libxml2 in LLVM builds.
...
These libs are not used by current official CppSharp binary distributions of LLVM, however building LLVM locally will pick these libs up and link to them if they are installed on local system. Since premake does not link to any of those libs linking to local LLVM build will cause `DllNotFoundException` due to missing symbols.
8 years ago
Rokas Kupstys
1d4c243522
Cloning llvm from git replaced with downloading archives of exacty commits from github. This is much faster.
8 years ago
Dimitar Dobrev
481bbc0351
Updated to LLVM/Clang revisions 318543/318538 respectively.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
8 years ago
Dimitar Dobrev
6e55913c5a
Fixed the script for LLVM to handle paths with spaces.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
8 years ago
Joao Matos
460e98bd93
[build] Update to a Vagrant box that actually works.
8 years ago
Joao Matos
6443e811c3
[build] Update provision scripts deprecated Premake code.
8 years ago
Dimitar Dobrev
4d177b317d
Switched the Windows CI to Visual Studio 2017.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
8 years ago
Joao Matos
653d0efb2c
Updated deprecated os.is() checks in Premake build scripts.
8 years ago
Joao Matos
b52ad8b43f
Update Premake build files to latest syntax.
8 years ago
Joao Matos
e72661ba24
Fixed the check for Vagrant environment on build scripts.
8 years ago
Joao Matos
4fff5854c2
Update CMake version and do provisioning on Linux.
8 years ago
Joao Matos
bd2b22c580
Update build process utilities to work with Lua 5.2 in up-to-date Premake.
8 years ago
Joao Matos
709f431f9e
Upgrade the Vagrant and provisioning script to Ubuntu 16.06.
8 years ago