fix libjack names
use x-macros to simplify weak-jack implementation