Fix the toolchain package to build mlir as well

This commit is contained in:
Sameer Rahmani 2023-04-23 10:36:03 +01:00
parent ad7b728890
commit 8e76308baf
Signed by: lxsameer
GPG Key ID: B0A4AF28AB9FD90B
5 changed files with 29 additions and 8 deletions

View File

@ -60,7 +60,7 @@ CMAKE_OPTIONS = {
"LLVM_ENABLE_LTO": "THIN", "LLVM_ENABLE_LTO": "THIN",
"CMAKE_POSITION_INDEPENDENT_CODE": "ON", "CMAKE_POSITION_INDEPENDENT_CODE": "ON",
"LLVM_ENABLE_LIBCXX": "ON", "LLVM_ENABLE_LIBCXX": "ON",
"LLVM_THINLTO_CACHE_PATH": "/tmp/llvm-build-lto", "LLVM_THINLTO_CACHE_PATH": "/tmp/llvm-build-lto-libcxx",
"LLVM_ENABLE_PROJECTS": ";".join(PROJECTS), "LLVM_ENABLE_PROJECTS": ";".join(PROJECTS),
"LIBCXX_HAS_MUSL_LIBC": "ON", "LIBCXX_HAS_MUSL_LIBC": "ON",
"LLVM_DEFAULT_TARGET_TRIPLE": os.environ["TARGET"], "LLVM_DEFAULT_TARGET_TRIPLE": os.environ["TARGET"],

View File

@ -17,12 +17,12 @@
from conan import ConanFile from conan import ConanFile
from conan.tools.files import get from conan.tools.files import get
from conf.versions import * from conf.utils import *
class LLVM(ConanFile): class LLVM(ConanFile):
name = "llvm-source" name = "llvm-source"
version = LLVM_VERSION version = get_version("llvm")
settings = "os", "arch" settings = "os", "arch"
def build(self): def build(self):

View File

@ -67,12 +67,20 @@ TOOLCHAIN_TARGETS = [
"LTO", "LTO",
"builtins", "builtins",
"llvm-libraries", "llvm-libraries",
"mlir-libraries",
"mlir-tblgen",
"mlir-opt",
"mlir-lsp-server",
"mlir-reduce",
# "lldb-server",
# "lldb",
"llvm-jitlink",
# lldb, # lldb,
"compiler-rt", "compiler-rt",
"runtimes", "runtimes",
] ]
PROJECTS = ["clang-tools-extra", "clang", "lld", "llvm"] PROJECTS = ["clang-tools-extra", "clang", "lld", "llvm", "mlir"]
RUNTIME_TARGETS = [ RUNTIME_TARGETS = [
"compiler-rt", "compiler-rt",
"libcxx", "libcxx",
@ -158,10 +166,14 @@ class LLVM(ConanFile):
opts["CMAKE_CXX_COMPILER_TARGET"] = target opts["CMAKE_CXX_COMPILER_TARGET"] = target
opts["CMAKE_SYSROOT"] = str(tc_dir) opts["CMAKE_SYSROOT"] = str(tc_dir)
opts["CMAKE_EXE_LINKER_FLAGS"] = f"-Wl,-rpath,{str(tc_dir)}/lib/{target}" opts[
opts["CMAKE_SHARED_LINKER_FLAGS"] = f"-Wl,-rpath,{str(tc_dir)}/lib/{target}" "CMAKE_EXE_LINKER_FLAGS"
opts["CMAKE_C_FLAGS"] = "-static" ] = f"-Wl,-rpath,{str(tc_dir)}/lib/{target} -static -Wl,-static"
opts["CMAKE_CXX_FLAGS"] = "-static" opts[
"CMAKE_SHARED_LINKER_FLAGS"
] = f"-Wl,-rpath,$ORIGIN/../lib/{target} -Wl,-rpath,$ORIGIN/../lib/"
# opts["CMAKE_C_FLAGS"] = "-static" -Wl,-rpath,{str(tc_dir)}/lib/{target}
# opts["CMAKE_CXX_FLAGS"] = "-static"
def add_runtimes_and_builtins(self, opts): def add_runtimes_and_builtins(self, opts):
builtin_targets = [] builtin_targets = []

View File

@ -12,5 +12,9 @@ compiler.libcxx=libstdc++
[buildenv] [buildenv]
LD=lld LD=lld
[options]
cmake/*:libc=glibc
ninja/*:libc=glibc
[conf] [conf]
tools.cmake.cmaketoolchain:generator=Ninja tools.cmake.cmaketoolchain:generator=Ninja

View File

@ -18,5 +18,10 @@ CC=clang
CXX=clang++ CXX=clang++
LD=lld LD=lld
[options]
*/*:stage=1
cmake/*:libc=glibc
ninja/*:libc=glibc
[conf] [conf]
tools.cmake.cmaketoolchain:generator=Ninja tools.cmake.cmaketoolchain:generator=Ninja