build: new build for LLVM related stuff

Use llvm-config to find out preprocessor flags, needed libs, etc.
Separate LLVM builds can be used for release and debug.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: remove unused StaticLinksOpt()

The function is not used anymore, so remove it.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: add LLVM include dir explicitly to make build bot happy

For some reason build bot's llvm-config --cppflags does not return the
LLVM's main include dir. Add it explicitly for now.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: be even more explicit with the include dir...

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: add debug print
build: remove explicit platforms

Selecting the platform when building feels a bit useless.

On Windows, the LLVM build is (afaik) always 32-bit. That means that all
the C++ libs need to be 32-bit, and in turn all the C# libs/exes using
those native libraries need to be 32-bit.

On Linux, the LLVM is in the system's native bitness. So if your system
is 64-bit, there's no reason for you to try to compile 32-bit CppSharp.

All in all, things seem cleaner with this patch: remove the platforms,
use 32-bit architecture on windows, and the native architecture on
others.

This patch also changes the configurations order so that Release is
first. That makes Release the default target, making it easier for the
user to compile CppSharp.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
Merge branches '64bit', 'llvm-build' and 'platforms-removal' into linux-support
build: add linux premake5 binary

Add linux premake binary for 32 and 64 bit Linuxes. premake5-linux
script does a naive 32/64 bit test, and runs the appropriate binary.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
ParserGen: Linux binding generation

Add code to generate Linux bindings.

This is experimental for now.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
CppParser: add generated linux bindings

Add C# Bindings for CppParser for 64 bit Linux.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: use linux bindings

Use CppParser C# bindings for linux when compiling on Linux.

Note: this always uses 64 bit version for now.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
update linux bindings