When a toolchain is selected along with its builder, the builder gets
matched to a “real builder” (ManagedBuildManager.getRealBuilder). If the
builder is abstract, the builder is not in the possible list of matches,
as implemented in Builder.getMatchKey. This causes
getCurrentBuilderCompatibilityInfo to return null which is not handled.
This patch changes the base LLVM builder to a non-abstract one, which
solves this specific NPE.
Also, in order to be more helpful to the user in case it happens to
another toolchain, a null check was added with an error message that the
builder is incompatible. Then at least, it is more clear that something
is wrong and the user can pick a different builder.
Change-Id: I4d26c568dfe6307b496719c10908a36933fd3ab8
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Prevents LLVM page being top level and makes LLVM threated more like
XLC.
Change-Id: I189f9fb00f256c9721d95b7a163284db4e31d370
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
Reviewed-on: https://git.eclipse.org/r/30296
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
Also fixed binary parser on Mac.
llvm-ld doesn't exist in newer llvm implementations. From what I can
tell, clang now just calls the real linker after running and massaging
the bc files.
Changed to call clang and clang++ drivers at link time. Had to fix
some of the options to make it work. Just a stop gap since there are
more issues to resolve but at least it's enough to get working.
Change-Id: I54b78e85b16a77549a5be9d282bc6f47f723947d
Reviewed-on: https://git.eclipse.org/r/13515
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
Tested-by: Doug Schaefer <dschaefer@qnx.com>