LLVM 6.0.0 and lld 6.0.1 bindings for VB6
This repo contains a stdcall port of LLVM-C API exports to be accessible from VB6 projects. This build uses /MT and /MTd (static) runtimes and Windows XP (v140_xp) platform toolset in Visual Studio 2015 for the produced DLLs to be portable and self-contained.
LLVM sources are extracted in lib/llvm-6.0.0.src and stdcall patch is applied in commits cd1946d and e1e1356. LLVM's lld sources are extracted in lib/lld-6.0.1.src with no modifications applied.
LLVM build uses cmake, python3.x and Visual Studio 2015 so make sure you have these pre-installed.
Use lib/llvm-build-release/setup.bat to compile LLVM release build in lib/llvm-install-release.
Use lib/llvm-build-debug/setup.bat to compile LLVM debug build in lib/llvm-install-debug.
Use lib/lld-build-release/setup.bat to compile LLVM's lld release build in lib/lld-install-release.
Use lib/lld-build-debug/setup.bat to compile LLVM's lld debug build in lib/lld-install-debug.
Finally use lib/llvm-install-release/lib/dump-def.bat to collect exports for src/VBLLVM.def
Use src/VBLLVM.sln to build bin/release/VBLLVM.dll and bin/debug/VBLLVM.dll from .lib files in lib/llvm-install-release;lib/lld-install-release and lib/llvm-install-debug;lib/lld-install-debug.
Finally use src/typelib/build.bat to build bin/typelib/VBLLVM.tlb from lib/llvm-6.0.0.src/include/llvm-c and src/VBLLVM.def
- LLVM's Kaleidoscope toy language VB6 port is in
test/kscope