Dimitar Dobrev
964ea46d36
Pack PDB-s as well when building LLVM in debug
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
1c7cfaeaaf
Don't warn repeatedly about an existing LLVM dir
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
48ab973db6
Don't download LLVM if its destination exists
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years 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
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>
6 years ago
Dimitar Dobrev
fe8d0d70f8
Enable building lld as part of LLVM
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
067827cf29
Restore modules needed for compiling with Clang
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
454a46ed1c
Support Visual Studio 2019 for building Clang
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 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
Joao Matos
5c4f3be5fb
Use MSBuild when building LLVM on Windows due to PDB issues with Ninja.
7 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
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
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
1ebbcdf668
Fixed the LLVM build script CMake invocation to work with recent LLVM/Clang revisions.
...
This fixes the dreaded CMake error:
CMake Error at tools/clang/tools/clang-offload-bundler/CMakeLists.txt:18 (add_dependencies):
Cannot add target-level dependencies to non-existent target "clang".
8 years ago
Dimitar Dobrev
d7daed8273
Added support for VS 2017 by updating Clang.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
8 years ago
Joao Matos
b28f766d8d
[build] Fixed LLVM compilation script Lua syntax bug.
8 years ago
Joao Matos
b466b17c02
[build] Rework how the target architecture is looked up at build time.
...
We now check the system Mono architecture in non-Windows platforms, this is needed since Mono 5 defaults to amd64.
8 years ago
Joao Matos
9dc880dd6a
Fixed build files to run mono64 in 64-bit non-VS builds.
8 years ago
Joao Matos
d7bc6eb279
Move "arch=" build option to helpers file and provide a default value.
8 years ago
Joao Matos
d6049dc49e
Added support for specifying build target architecture when building LLVM.
...
Fixes https://github.com/mono/CppSharp/issues/694 .
8 years ago
Dimitar Dobrev
021c3d0821
Fixed the build after the suspension of public folders in DropBox.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
8 years ago