1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 03:28:20 +02:00

llvm: only build "needed" parts, extracted currently needed parts to llvm_targets.txt

This commit is contained in:
Green Sky 2020-11-28 23:23:27 +01:00
parent 7d33ef3d5d
commit 71a0f70d86
2 changed files with 16 additions and 14 deletions

29
extern/llvm_build.sh vendored
View file

@ -2,39 +2,40 @@
set -e
if [ ! -d llvm-project_11_0_0 ]; then
if [ -f llvm-11.0.0.src.tar.xz ]; then # if user downloaded llvm-11.0.0.src.tar.xz then use it instead
tar -xf llvm-11.0.0.src.tar.xz
mkdir llvm-project_11_0_0
mv llvm-11.0.0.src llvm-project_11_0_0/llvm
else # shallow git clone llvm repo if llvm-11.0.0.src.tar.xz does not exists
git clone --depth 1 --branch llvmorg-11.0.0 https://github.com/llvm/llvm-project.git llvm-project_11_0_0
fi
if [ -f llvm-11.0.0.src.tar.xz ]; then # if user downloaded llvm-11.0.0.src.tar.xz then use it instead
tar -xf llvm-11.0.0.src.tar.xz
mkdir llvm-project_11_0_0
mv llvm-11.0.0.src llvm-project_11_0_0/llvm
else # shallow git clone llvm repo if llvm-11.0.0.src.tar.xz does not exists
git clone --depth 1 --branch llvmorg-11.0.0 https://github.com/llvm/llvm-project.git llvm-project_11_0_0
fi
fi #end if llvm-project_11_0_0 exists
if [ ! -d llvm_linux_11_0_0 ]; then
mkdir llvm_linux_11_0_0
mkdir llvm_linux_11_0_0
fi
if [ ! -d llvm_linux_11_0_0/bin ]; then
cd llvm_linux_11_0_0
cmake ../llvm-project_11_0_0/llvm
cmake --build .
cmake ../llvm-project_11_0_0/llvm -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;X86;WebAssembly" -DCMAKE_BUILD_TYPE:String="Debug"
cmake --build . -t $(cat ../llvm_targets.txt)
cd ..
fi
if [ ! -d llvm_linux_rel_11_0_0 ]; then
mkdir llvm_linux_rel_11_0_0
mkdir llvm_linux_rel_11_0_0
fi
if [ ! -d llvm_linux_rel_11_0_0/bin ]; then
cd llvm_linux_rel_11_0_0
cmake ../llvm-project_11_0_0/llvm -DCMAKE_BUILD_TYPE:String=Release
cmake --build .
cmake ../llvm-project_11_0_0/llvm -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;X86;WebAssembly" -DCMAKE_BUILD_TYPE:String="Release"
cmake --build . -t $(cat ../llvm_targets.txt)
cd ..
fi
if [ ! -d ../IDE/dist/llvm/bin ]; then
mkdir ../IDE/dist/llvm
mkdir ../IDE/dist/llvm/bin
fi
cp llvm_linux_rel_11_0_0/bin/llvm-ar ../IDE/dist/llvm/bin

1
extern/llvm_targets.txt vendored Normal file
View file

@ -0,0 +1 @@
llvm-ar llvm-config gtest_main LLVMX86Disassembler LLVMMCDisassembler LLVMSupport LLVMX86Info LLVMX86Desc LLVMMC LLVMObject LLVMCore LLVMBitReader LLVMAsmParser LLVMMCParser LLVMCodeGen LLVMTarget LLVMX86CodeGen LLVMScalarOpts LLVMInstCombine LLVMSelectionDAG LLVMProfileData LLVMTransformUtils LLVMAnalysis LLVMX86AsmParser LLVMAsmPrinter LLVMBitWriter LLVMVectorize LLVMipo LLVMInstrumentation LLVMDebugInfoDWARF LLVMDebugInfoPDB LLVMDebugInfoCodeView LLVMGlobalISel LLVMBinaryFormat LLVMCoverage LLVMDebugInfoGSYM LLVMDWARFLinker LLVMRuntimeDyld LLVMExecutionEngine LLVMMCJIT LLVMFuzzMutate LLVMInterpreter LLVMLineEditor LLVMExtensions LLVMObjCARCOpts LLVMCoroutines LLVMPasses LLVMLTO LLVMMCA LLVMMIRParser LLVMObjectYAML LLVMJITLink LLVMOrcError LLVMOrcJIT LLVMSymbolize LLVMTestingSupport LLVMWindowsManifest LLVMXRay LLVMARMCodeGen LLVMARMDisassembler LLVMAArch64CodeGen LLVMAArch64Disassembler LLVMWebAssemblyCodeGen LLVMWebAssemblyDisassembler