add portable library