update for external compilation