add compilation support