Patch that passes PUBLIC to target_link_libraries when building shared libs

Recent changes to LLVM mean that PRIVATE is now passed to target_link_libraries(...). This in turn means that $ORIGIN is passed to the linker's -rpath flag. FreeBSD's linker (ld) doesn't seem to be able to track $ORIGIN (at least in 10.0-RELEASE-p12).

This patch from Rafael Espindola (who originally introduced the above changes) produced this patch which reverses things.