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