ros-industrial / ros_industrial_cmake_boilerplate

Other
16 stars 14 forks source link

gtest package aliases standard rosdep #70

Closed mikepurvis closed 1 year ago

mikepurvis commented 1 year ago

Mentioned briefly in https://github.com/ros-industrial/ros_industrial_cmake_boilerplate/issues/26#issuecomment-755199625, but IMHO it's a bug that this repo includes a package called gtest. When building large workspaces from source checkouts (rather than GBP sources), this repo's version of gtest aliases the standard rosdep and makes itself a dependency of catkin:

https://github.com/ros/catkin/blob/ff31d451ce1c68d47bc058a4693aad6c0fb63a43/package.xml#L37-L38

The "real" gtest is of course here:

https://github.com/ros/rosdistro/blob/6a0459d84fba6e83f99a74e7959ce26ce829d26d/rosdep/base.yaml#L1696-L1709

This caused me to have to add a manual exclusion for an in-distro gtest to the nix-ros demo from ROSCon 2022:

https://github.com/clearpathrobotics/nix-ros-base/blob/fc02ac30d8ee20198c48b381501c7902e9c7a6f5/nix_generator/defaults.py#L15-L17

Some possible resolutions could be:

Levi-Armstrong commented 1 year ago

While I see your point, but this is not specifically a ros package. While it does include ros package.xml it is provided to make it compatible with ros build tools. This is used with and without ros which is where the need for gtest is included because on older distribution of linux binaries are not provided for gtest. I believe this can now be removed because I believe the driving factor for this was Ubuntu 16.04 which is now EOL. I will double check 18.04 and if it provides binaries, I will remove it form the repository.

simonschmeisser commented 1 year ago

friendly ping @Levi-Armstrong :)