Support for changing the linker/assembler

I need to change the linker because I use LLVM toolchain.