In my experience, I’ve found my life becomes easier the less ament macros I use.
The only ones that I feel are necessary are things like ament_package() and some of the testing macros, which allow for discoverability with things like rosdep , ament_package_index, and/or colcon build / test.
In ros2 kilted Kaiju version, ament_target_dependencies is deprecated, I’m not sure if more ament_* will be deprecated, what’s the longtime plan form ament_cmake.