def __init__(self, **args): CMakePackageBase.__init__(self) self.supportsClang = False self.subinfo.options.configure.args = "-DLLVM_TARGETS_TO_BUILD='X86'" # BEGIN: sub-package handling self.subPackages = [] def maybeAddSubPackage(pkg, cmakeDefine): if not pkg.isIgnored(): self.subinfo.options.configure.args += " -D%s=\"%s\"" % ( cmakeDefine, pkg.instance.sourceDir().replace("\\", "/")) self.subPackages.append(pkg.instance) maybeAddSubPackage(CraftPackageObject.get('win32libs/llvm-meta/clang'), "LLVM_EXTERNAL_CLANG_SOURCE_DIR") maybeAddSubPackage( CraftPackageObject.get('win32libs/llvm-meta/clang-tools-extra'), "LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('win32libs/llvm-meta/lld'), "LLVM_EXTERNAL_LLD_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('win32libs/llvm-meta/lldb'), "LLVM_EXTERNAL_LLDB_SOURCE_DIR") # END: sub-package handling if CraftCore.compiler.isMSVC(): self.subinfo.options.configure.args += " -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON" else: self.subinfo.options.configure.args += " -DBUILD_SHARED_LIBS=ON"
def __init__(self, **args): CMakePackageBase.__init__(self) self.supportsClang = False self.subinfo.options.configure.args += " -DLLVM_BUILD_TESTS=OFF -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_GO_TESTS=OFF" self.subinfo.options.configure.args += " -DLLVM_TARGETS_TO_BUILD='host'" self.subinfo.options.configure.args += " -DLLVM_ENABLE_RTTI=ON -DLLVM_ENABLE_EH=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_INSTALL_UTILS=ON -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=all" # allow gcc < 5 self.subinfo.options.configure.args += " -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON" # BEGIN: sub-package handling self.subPackages = [] def maybeAddSubPackage(pkg, cmakeDefine): if not pkg.isIgnored(): self.subinfo.options.configure.args += f" -D{cmakeDefine}=\"{OsUtils.toUnixPath(pkg.instance.sourceDir())}\"" self.subPackages.append(pkg.instance) maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/clang'), "LLVM_EXTERNAL_CLANG_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/clang-tools-extra'), "LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/lld'), "LLVM_EXTERNAL_LLD_SOURCE_DIR") # END: sub-package handling if CraftCore.compiler.isMSVC(): self.subinfo.options.configure.args += " -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON" elif CraftCore.compiler.isMacOS: self.subinfo.options.configure.args += " -DLLVM_BUILD_LLVM_DYLIB=ON" else: self.subinfo.options.configure.args += " -DBUILD_SHARED_LIBS=ON" # lldb by default needs SWIG for the Python integration # disable this support until we have a swig package in Craft self.subinfo.options.configure.args += " -DLLDB_DISABLE_PYTHON=ON"
def __init__(self, **args): CMakePackageBase.__init__(self) self.supportsClang = False self.subinfo.options.configure.args = "-DLLVM_TARGETS_TO_BUILD='X86'" # BEGIN: sub-package handling self.subPackages = [] def maybeAddSubPackage(pkg, cmakeDefine): if not pkg.isIgnored(): self.subinfo.options.configure.args += f" -D{cmakeDefine}=\"{OsUtils.toUnixPath(pkg.instance.sourceDir())}\"" self.subPackages.append(pkg.instance) maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/clang'), "LLVM_EXTERNAL_CLANG_SOURCE_DIR") maybeAddSubPackage( CraftPackageObject.get('libs/llvm-meta/clang-tools-extra'), "LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/lld'), "LLVM_EXTERNAL_LLD_SOURCE_DIR") # END: sub-package handling if CraftCore.compiler.isMSVC(): self.subinfo.options.configure.args += " -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON" else: self.subinfo.options.configure.args += " -DBUILD_SHARED_LIBS=ON" # lldb by default needs SWIG for the Python integration # disable this support until we have a swig package in Craft self.subinfo.options.configure.args += " -DLLDB_DISABLE_PYTHON=ON"
def __init__( self, **args ): CMakePackageBase.__init__(self) self.clang = portage.getPackageInstance('dev-util', 'clang') self.lld = portage.getPackageInstance('dev-util', 'lld') self.subPackages = [self.clang, self.lld] self.subinfo.options.configure.defines = '-DLLVM_TARGETS_TO_BUILD="X86"' self.subinfo.options.configure.defines += " -DLLVM_EXTERNAL_LLD_SOURCE_DIR=\"%s\"" % self.lld.sourceDir().replace("\\", "/") self.subinfo.options.configure.defines += " -DLLVM_EXTERNAL_CLANG_SOURCE_DIR=\"%s\"" % self.clang.sourceDir().replace("\\", "/") if compiler.isMinGW(): self.subinfo.options.configure.defines += " -DBUILD_SHARED_LIBS=ON"
def __init__(self, **args): CMakePackageBase.__init__(self) self.clang = portage.getPackageInstance('dev-util', 'clang') self.lld = portage.getPackageInstance('dev-util', 'lld') self.subPackages = [self.clang, self.lld] self.subinfo.options.configure.defines = '-DLLVM_TARGETS_TO_BUILD="X86"' self.subinfo.options.configure.defines += " -DLLVM_EXTERNAL_LLD_SOURCE_DIR=\"%s\"" % self.lld.sourceDir( ).replace("\\", "/") self.subinfo.options.configure.defines += " -DLLVM_EXTERNAL_CLANG_SOURCE_DIR=\"%s\"" % self.clang.sourceDir( ).replace("\\", "/") if compiler.isMinGW(): self.subinfo.options.configure.defines += " -DBUILD_SHARED_LIBS=ON"
def __init__(self, **args): CMakePackageBase.__init__(self) self.supportsClang = False self.subinfo.options.configure.args = "-DLLVM_TARGETS_TO_BUILD='X86'" # BEGIN: sub-package handling self.subPackages = [] def maybeAddSubPackage(pkg, cmakeDefine): if not pkg.isIgnored(): self.subinfo.options.configure.args += f" -D{cmakeDefine}=\"{OsUtils.toUnixPath(pkg.instance.sourceDir())}\"" self.subPackages.append(pkg.instance) maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/clang'), "LLVM_EXTERNAL_CLANG_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/clang-tools-extra'), "LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR") maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/lld'), "LLVM_EXTERNAL_LLD_SOURCE_DIR") # never build lldb under macOS, currently fails to compile with: # Undefined symbols for architecture x86_64: # "_DNBLogEnabled", referenced from: # DNBArchImplI386::StartTransForHWP() in DNBArchImplI386.cpp.o # # ming: # lldb is pretty broken and needs heavy patching, we can give it a try as soon as # https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-clang # supports it # if not CraftCore.compiler.isMacOS and not CraftCore.compiler.isMinGW(): maybeAddSubPackage(CraftPackageObject.get('libs/llvm-meta/lldb'), "LLVM_EXTERNAL_LLDB_SOURCE_DIR") # END: sub-package handling if CraftCore.compiler.isMSVC(): self.subinfo.options.configure.args += " -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON" else: self.subinfo.options.configure.args += " -DBUILD_SHARED_LIBS=ON" # lldb by default needs SWIG for the Python integration # disable this support until we have a swig package in Craft self.subinfo.options.configure.args += " -DLLDB_DISABLE_PYTHON=ON"
def __init__(self, **args): CMakePackageBase.__init__(self) self.supportsClang = False self.clang = CraftPackageObject.get( 'win32libs/llvm-meta/clang').instance self.clangToolsExtra = CraftPackageObject.get( 'win32libs/llvm-meta/clang-tools-extra').instance self.lld = CraftPackageObject.get('win32libs/llvm-meta/lld').instance self.lldb = CraftPackageObject.get('win32libs/llvm-meta/lldb').instance self.subPackages = [self.clang, self.lld, self.lldb] self.subinfo.options.configure.args = "-DLLVM_TARGETS_TO_BUILD='X86'" self.subinfo.options.configure.args += " -DLLVM_EXTERNAL_LLD_SOURCE_DIR=\"%s\"" % self.lld.sourceDir( ).replace("\\", "/") self.subinfo.options.configure.args += " -DLLVM_EXTERNAL_CLANG_SOURCE_DIR=\"%s\"" % self.clang.sourceDir( ).replace("\\", "/") self.subinfo.options.configure.args += " -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=\"%s\"" % self.clangToolsExtra.sourceDir( ).replace("\\", "/") self.subinfo.options.configure.args += " -DLLVM_EXTERNAL_LLDB_SOURCE_DIR=\"%s\"" % self.lldb.sourceDir( ).replace("\\", "/") if craftCompiler.isMSVC(): self.subinfo.options.configure.args += " -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON" else: self.subinfo.options.configure.args += " -DBUILD_SHARED_LIBS=ON"