-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IgnFindOGRE2: support for the ogre-next package on Ubuntu Jammy #224
Conversation
Signed-off-by: Jose Luis Rivero <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gave it a look over and looks good, still need to test it.
Co-authored-by: Michael Carroll <[email protected]>
Are you planning to open an |
Signed-off-by: Jose Luis Rivero <[email protected]>
While working on getting out-of-the-box support for ign-rendering I ended up implementing the autodetection of OGRE2/OGRE-Next in this module 4e7f535. First it tries to locate the software under OGRE2 name and if it fails under OGRE-Next name. This in combination with gazebosim/gz-rendering#605 (which run the detection twice if failed to locate PlanarReflections) produces the following: Focal -- Looking for OGRE using the name: OGRE2
-- + component HlmsPbs: found
-- + component HlmsUnlit: found
-- + component Overlay: found
-- ! component PlanarReflections: not found!
-- ! OGRE2 not found
-- Looking for OGRE using the name: OGRE-Next
-- ! OGRE-Next not found
-- Looking for IgnOGRE2 - not found
-- IgnOGRE2 was not found with PlanarReflections. Try looking without this component:
-- Looking for OGRE using the name: OGRE2
-- + component HlmsPbs: found
-- + component HlmsUnlit: found
-- + component Overlay: found
-- Looking for IgnOGRE2 - found Jammy -- Looking for OGRE using the name: OGRE2
-- ! OGRE2 not found
-- Looking for OGRE using the name: OGRE-Next
-- + component HlmsPbs: found
-- + component HlmsUnlit: found
-- + component Overlay: found
-- + component PlanarReflections: found
-- Looking for IgnOGRE2 - found I have updated the summary of the PR for testing instructions. To review please remember to enable the GUI option to skip white-spaces as detailed in https://cloudfour.com/thinks/quick-tip-how-to-hide-whitespace-changes-in-git-diffs/ |
Provides support to find OGRE2 now known as OGRE-Next where the code comes from the work done in Debian/Ubuntu (starting from Jammy) to package it with the name of OGRE-Next.
This pull request has been mentioned on Gazebo Community. There might be relevant details there: https://community.gazebosim.org/t/new-releases-2022-04-27-fortress-citadel/1389/1 |
…bosim#224) Provides support to find OGRE2 now known as OGRE-Next where the code comes from the work done in Debian/Ubuntu (starting from Jammy) to package it with the name of OGRE-Next.
🎉 New feature
Closes #208
To review please remember to enable the GUI option to skip white-spaces as detailed in https://cloudfour.com/thinks/quick-tip-how-to-hide-whitespace-changes-in-git-diffs/
Summary
Provides support to find OGRE2 now known as OGRE-Next where the code comes from the work done in Debian/Ubuntu (starting from Jammy) to package it with the name of OGRE-Next.
Workaround was in place for ign-rendering coded in gazebosim/gz-rendering#577 (although some libraries are missing for the correct linking). This PR implements the support to find that OGRE-Next installations on UNIX systems using the same call to FindIgnOGRE2 module.
The PR adds a new CMake input parameter to FindIgnOGRE2 module namedIGN_OGRE2_PROJECT_NAME
with default to OGRE2 that should keep the same behavior. The implementation idea is to keep using the same code for both flavors (OGRE2 and OGRE-Next) by creating new variables to deal with the differenceThe output of the module are exactly the same variable names and components than before.For a future implementation, we could probably apply some simple heuristics to auto-detect the the value ofIGN_OGRE2_PROJECT_NAME
.The PR can autodetect which one of the package names is being used in the system OGRE2/OGRE-Next by iterating trying to find them one by one.
Test it
You can use the example available in this repository to check for output on the different Ubuntu distributions.
On jammy remember to use-DIGN_OGRE2_PROJECT_NAME=OGRE-Next
when calling CMake.For a full working ign-gazebo on Jammy I would recommend to use this branch with ign-rendering branch gazebosim/gz-rendering#605 (reverts previous workaround) using a colcon workspace inside a rocker run.
On jammy remember to use--cmake-args -DIGN_OGRE2_PROJECT_NAME=OGRE-Next
when calling CMake.Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.