add library compilation support