konimex / kiss-llvm Goto Github PK
View Code? Open in Web Editor NEWA kiss-repo structure to build standalone LLVM
License: ISC License
A kiss-repo structure to build standalone LLVM
License: ISC License
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/RecordLayoutBuilder.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/ScanfFormatString.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/SelectorLocationsKind.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/Stmt.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtCXX.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtIterator.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtObjC.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtOpenMP.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtPrinter.cpp.o
[ 90%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtProfile.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/StmtViz.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/TemplateBase.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/TemplateName.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/TextNodeDumper.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/Type.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/TypeLoc.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/TypePrinter.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/VTableBuilder.cpp.o
[ 91%] Building CXX object lib/AST/CMakeFiles/obj.clangAST.dir/VTTBuilder.cpp.o
In file included from /usr/include/c++/v1/math.h:311,
from /usr/include/c++/v1/cmath:304,
from /usr/include/llvm-c/DataTypes.h:28,
from /usr/include/llvm/Support/DataTypes.h:16,
from /usr/include/llvm/ADT/Hashing.h:47,
from /usr/include/llvm/ADT/ArrayRef.h:12,
from /usr/include/llvm/ADT/DenseMapInfo.h:16,
from /home/dilyn/.cache/kiss/build-27579/@clang-pass2/include/clang/AST/CharUnits.h:16,
from /home/dilyn/.cache/kiss/build-27579/@clang-pass2/include/clang/AST/BaseSubobject.h:16,
from /home/dilyn/.cache/kiss/build-27579/@clang-pass2/include/clang/AST/VTableBuilder.h:16,
from /home/dilyn/.cache/kiss/build-27579/@clang-pass2/lib/AST/VTableBuilder.cpp:13:
/usr/include/c++/v1/type_traits: In instantiation of 'struct std::__1::__decay<{anonymous}::FinalOverriders::OverriderInfo&, true>':
/usr/include/c++/v1/type_traits:1367:94: required from 'struct std::__1::decay<{anonymous}::FinalOverriders::OverriderInfo&&>'
/usr/include/c++/v1/utility:392:16: required by substitution of 'template<class _Tuple, typename std::__1::enable_if<typename std::__1::conditional<(std::__1::__tuple_like_with_size<_Tuple, 2, typename std::__1::__uncvref<_Tp>::type>::value && (! std::__1::is_same<typename std::__1::decay<_Tp>::type, std::__1::pair<const clang::CXXMethodDecl*, clang::OverridingMethods> >::value)), std::__1::pair<const clang::CXXMethodDecl*, clang::OverridingMethods>::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), bool>::type <anonymous> > constexpr std::__1::pair<const clang::CXXMethodDecl*, clang::OverridingMethods>::pair(_Tuple&&) [with _Tuple = {anonymous}::FinalOverriders::OverriderInfo&&; typename std::__1::enable_if<typename std::__1::conditional<(std::__1::__tuple_like_with_size<_Tuple, 2, typename std::__1::__uncvref<_Tp>::type>::value && (! std::__1::is_same<typename std::__1::decay<_Tp>::type, std::__1::pair<const clang::CXXMethodDecl*, clang::OverridingMethods> >::value)), std::__1::pair<const clang::CXXMethodDecl*, clang::OverridingMethods>::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), bool>::type <anonymous> = <missing>]'
/home/dilyn/.cache/kiss/build-27579/@clang-pass2/lib/AST/VTableBuilder.cpp:203:22: required from here
/usr/include/c++/v1/type_traits:1358:30: error: forming pointer to reference type 'std::__1::remove_extent<{anonymous}::FinalOverriders::OverriderInfo&>::type' {aka '{anonymous}::FinalOverriders::OverriderInfo&'}
1358 | >::type type;
| ^~~~
make[2]: *** [lib/AST/CMakeFiles/obj.clangAST.dir/build.make:1305: lib/AST/CMakeFiles/obj.clangAST.dir/VTableBuilder.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:4446: lib/AST/CMakeFiles/obj.clangAST.dir/all] Error 2
make: *** [Makefile:150: all] Error 2
I can reproduce this. Will find a fix (and possibly reduce the passes)
This is the error I got when trying to build @libc++abi
.
CMake Error at CMakeLists.txt:4 (message):
libc++abi now requires being built in a monorepo layout with libcxx
available
With #4 in mind, I decided to check out ways we will need to diverge from KISS mainline to make sure our packages works 100% with mainline repos (and mainline repos only). Since KISS officially only supports GCC, any changes that will be upstreamed will need to be non-intrusive (i.e. if the changes require patches that won't work with GCC, it won't be included) with xf86-video-intel and elfutils-libelf as precedent. Since kiss-llvm, in theory, is equivalent to KISS with only a toolchain difference, and very similar to Wyverkiss (with the difference being Wyverkiss tries to purge GNU from toolchain), maintenance should be minimal, save for a few packages (and even then it should be a copy-paste job most of the time).
However, this also means unlike Wyverkiss, kiss-llvm should not be shipping its own mainline repo as submodule as the intended way of kiss-llvm is to be an overlay to the mainline repo.
core:
CFLAGS="$CFLAGS -fPIC"
extra:
-latomic
, but requirement removed in Wyverkiss, we won't be upstreaming this.-lunwind
, we're not upstreaming thisxorg
This looks very interesting. Is there any chance we could get a guide for a LLVM based kiss install? I appreciate that there is already a bit of instruction, but I was hoping for more of a step-by-step, like a slightly modified version of this
Best wishes,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.