add libffi support