switch to cmake for llvm