Remove outdated documentation.
Minor formatting fixes.
Added support for a "dry run" option that does not write anything to disk.
Added SetupLLVMIncludes in build files.
Fixed EnumModifiers to define proper power of two values.
Ignore TypeAliasTemplate declarations to get rid of some parser warnings.
Added some better logging for macro ignored declarations.
Removed duplicate preprocessed entity add in the new parser.
Explicitly construct the parser and keep it in ParserResult.

This fixes some non-deterministic behavior in the new parser but it means we are keeping around all the memory for parsing until the end of the process. This is a bit messy right now but at least we keep the API compatible between parsers. After all the new parser bugs are squashed, this will be reworked.
Do not check for duplicates when handling preprocessed entities.

Even though they share the same original ptr to clang's PreprocessedEntity, they can still have different locations so we need to duplicate them when converting the AST.
build: fix nunit dll filename

Linux is case-sensitive with filenames, and as the NUnit library files
are lowercase, we need to use lowercase in the build files also.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: rename osx premake binary

Rename osx premake binary to premake5-osx, so that we can add
premake5-linux.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: add linux premake5 binary

Add linux premake binary.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: move windows bindings to i686-pc-win32 directory

Move windows bindings to i686-pc-win32, the same way as osx bindings are
(and linux bindings will be).

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: fix llvm linking

Use llvm-config tool to get the needed LLVM libraries.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: fix clang linking

At least on linux with gcc the linking order of the libraries is
important. Fix linking clang libraries by changing the link order.

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: use LLVM from an instal directory

Require the LLVM to be installed into deps/llvm/install, and use the
LLVM from there. This simplifies the include and library paths.

We still need some hacks to include the private clang CodeGen headers,
though.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: remove setting libdirs in premake4.lua

"libdirs { libdir }" in the main premake4.lua file causes Debug_x32
directory to be added for the libdirs for all builds. I think that's a
bug in premake, as at the same place setting, say, "targetdir" works
fine.

However, setting "libdir" to "libdirs" is not needed at all, so let's remove it.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
build: use path.join() for objdir

use path.join() to set objdir.

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