Use pragma once if available.

Also adds @Macaroni::Cpp::LightDef annotation.