use CMAKE_CURRENT_BINARY_DIR to better support subproject builds