[M3commit] [modula3/cm3] 4f232e: Lots of new bindings in package llvmbindings -- un...
rodney.m.bates at acm.org
Wed Jul 29 22:47:11 CEST 2015
Author: Rodney Bates <rodney.m.bates at acm.org>
Date: 2015-07-29 (Wed, 29 Jul 2015)
Lots of new bindings in package llvmbindings -- untested.
Gather bits and pieces of several existing bindings to llvm in
one Modula-3 package. Add a complete binding to DIBuilder,
updated to llvm 3.6.1.
Unless you are developing the llvm-derived backend, you should have
no need to build this package. The C/C++ parts have been built
sucessfully with gcc 4.8.1 and clang 3.4.2. As committed,
Makefile is set to call gcc.
These bindings have to be linked to a compiled llvm infrastructure
of the appropriate version. This takes *hours* to build. (If you
thought compiling the gcc-derived back end was slow compared to
compiling Modula-3 code, you ain't seen nothin'.) It is
premature to require all Modula-3 users to do this, either as
separate steps or with a copy of llvm copied into the M3
distribution. So for now, the m3makefile has some hard-coded
references to llvm things. You will surely have to edit these
to build this package, after having built llvm. See comments
Between a bug in cm3's import_obj from the build directory and
lack of support running C++ in the cm3 build system, it was
necessary to build the C/C++ components in the src directory,
despite their being target-dependent. Fix this someday.
See README for more information.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: LLVMTypes.i3
new file: M3DIBuilder.cpp
new file: M3DIBuilder.h
new file: M3DIBuilder.i3
More information about the M3commit