libcore port