entrypoint code and cmake files