-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
[gz-ports, sdformat] Update gz-ports #43265
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
Signed-off-by: Tal Regev <[email protected]>
d3686fa
to
e4262db
Compare
6c68c31
to
2b2dc74
Compare
2b2dc74
to
34c92b7
Compare
Signed-off-by: Tal Regev <[email protected]>
34c92b7
to
28930c1
Compare
@WangWeiLin-MV @LilyWangLL |
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.
Take gz-cmake*
as an example.
gz-cmake
- 4 repositories, https://repology.org/projects/?search=gz-cmake
ignition-cmake0
- 1 repository, https://repology.org/project/ignition-cmake0/versions only exist in
vcpkg
- 1 repository, https://repology.org/project/ignition-cmake0/versions only exist in
ignition-cmake-2
- 1 repository, https://repology.org/project/ignition-cmake-2/versions only exist in
AUR
- 1 repository, https://repology.org/project/ignition-cmake-2/versions only exist in
ignition-cmake2
- 6 repositories, https://repology.org/project/ignition-cmake2/versions
Ubuntu 20.04
for2.1.1
,Raspbian Stable
for2.1.1
,Vcpkg
ignition-cmake
- Most repositories, https://repology.org/project/ignition-cmake/versions
Ubuntu 20.04
for0.6.1
,Ubuntu 22.04
for2.10.0
,Raspbian Stable
for2.11.0
There are 4 ports: 3 ports named ignition-cmake0
, ignition-cmake2
, gz-cmake3
in vcpkg/ports
, and 1 port gz-cmake4
in this PR. The home page of all these ports linked to https://ignitionrobotics.org/libs/cmake (Will redirect to https://gazebosim.org/libs/cmake/)
Although the exported package names do not conflict, ignition-cmake0
, ignition-cmake2
, gz-cmake3
, should we only maintain the latest version and rename it to the name without version?
@vicroms Waiting for further review.
@WangWeiLin-MV Can you put |
Waiting for further review. |
@@ -0,0 +1,200 @@ | |||
diff --git a/cmake/FindFreeImage.cmake b/cmake/FindFreeImage.cmake | |||
index 8a5836e..7f926cc 100644 | |||
--- a/cmake/FindFreeImage.cmake |
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.
Review note: This file is substantially identical to the gz-cmake3 one with the tinyxml block moved around.
No change requested.
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.
This comments were never sent... Maybe I never finished the review.
+if(FreeImage_FOUND) | ||
+ # done |
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.
Never skip.
"${OGRE2LIBNAME}${component}.${OGRE2_VERSION}" | ||
"${OGRE2LIBNAME}${component}" | ||
+ "${OGRE2LIBNAME}${component}Static" | ||
+ "${OGRE2LIBNAME}${component}Static_d" |
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.
NAMES_PER_DIR
nearby?
- list(APPEND OGRE2_PATHS "${_rootPath}/lib/${OGRE2_SEARCH_VER}/manual-link/") | ||
- list(APPEND OGRE2_INC_PATHS "${_rootPath}/include/${OGRE2_SEARCH_VER}") | ||
+ get_filename_component(debug_dir "${_rootPath}" NAME) | ||
+ if(debug_dir MATCHES "debug" AND CMAKE_BUILD_TYPE MATCHES Debug OR NOT debug_dir MATCHES "debug" AND CMAKE_BUILD_TYPE MATCHES Release) |
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.
What is the intention of this condition?
@@ -0,0 +1,3 @@ | |||
The package gz-cmake4 provides CMake integration: | |||
|
|||
find_package(gz-cmake4 CONFIG REQUIRED) |
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.
This not showing any actual use.
I agree that this is ... unusual but we have accepted it in the past, as the @talregev What do you think about dropping the version number suffixes and maintaining only one set we know work together? Or do you know of customers who specifically need many simultaneous versions necessitating so many duplicates? |
arm64-osx looks like a transient network issue |
I am in favor to dropping the version number suffixes, and only in needed cases we can add the one alongside with version number suffixes. But I cannot do it alone. We need to fix gz-common6 first, currently I didn't succeeded to compile it on osx and linux. Also we should delist port gazebo. this is a gazebo classic, that ended it life: And we can try in other PR to add the current gazebo as gz-sim port: |
@dg0yt Thank you for your comments. |
Yeah, bad examples proliferate. |
Sorry, I am not sure how to fix it. Can you suggest fixes, and I will apply them? |
None of the three review comment needs extra suggestion at the moment. |
The conflict between gz-gui7 and gz-gui9 looks like a real conflict.
Tagging other folks who have touched the ignitionrobotics stuff in the past: @traversaro What are your thoughts about this situation? |
First of all, I am a happy user of vcpkg for other projects, so I am quite sorry for creating the problem in the first place and then stopping using vcpkg for ignition/gazebo packages. If you are interested in a bit of history, the initial ports (using major version in the name) of ignition/gazebo packages were added in #7781 . The rationale for doing that was part of the original description of the PR. The possibility of installing side-by-side multiple major version of ignition/gazebo packages in the same system/project/environment (depending on weather you are using a system/project/environment package manager) was quite convenient when both Gazebo Classic and gz-sim (i.e "Modern Gazebo") were supported and used different major versions of their dependencies. However, now that Gazebo Classic reached its EOL (the repo was archived: https://github.com/gazebosim/gazebo-classic) it is not so useful anymore, and even upstream is considering dropping this possibility: gazebo-tooling/release-tools#1244 . For these reasons, my answer to:
I think it make perfect sense to drop all the version number suffixes and just package the latest major version of each gz library. |
@@ -0,0 +1,3 @@ | |||
The package gz-cmake4 provides CMake integration: | |||
|
|||
find_package(gz-cmake4 CONFIG REQUIRED) |
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.
Taking as example
Line 4 in 3de032f
list(INSERT CMAKE_MODULE_PATH 0 ${ECM_MODULE_PATH}) |
find_package(gz-cmake4 CONFIG REQUIRED) | |
find_package(gz-cmake4 CONFIG REQUIRED) | |
gz_configure_project() | |
gz_configure_build(QUIT_IF_BUILD_ERRORS) |
./vcpkg x-add-version --all
and committing the result.