Skip to content

Conversation

@choyy
Copy link
Contributor

@choyy choyy commented Oct 12, 2025

No description provided.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @choyy, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request primarily focuses on upgrading the PCL package to its latest stable version, 1.15.1. This update not only brings the benefits of the newer PCL release but also significantly enhances the flexibility of the build process by exposing a wider array of configuration options for various PCL modules and external libraries. The changes streamline dependency handling and ensure compatibility with modern C++ standards.

Highlights

  • PCL Version Update: The Point Cloud Library (PCL) package has been updated to version 1.15.1, introducing the latest features and fixes from this release.
  • Expanded Build Configuration Options: Numerous new configuration options have been added to control the building of various PCL components and dependencies, including glew, libpng, libusb, opengl, openmp, libpcap, qhull, visualization, apps, tools, and qt.
  • Refined Dependency Management: The package's dependency management has been refactored to dynamically add dependencies based on the newly introduced configuration flags. cjson and nanoflann have also been added as new core dependencies.
  • C++ Standard Update: The required C++ standard for building PCL is now conditionally set to C++17 for versions greater than 1.15, while older versions continue to use C++14.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the PCL package, adding a new version and significantly refactoring the build configuration to support more options. This is a great improvement in flexibility. However, I've identified a couple of issues in the implementation that could lead to build failures. Specifically, the handling of the cuda, pcap, and qt configurations has some problems. I've provided detailed comments and suggestions to address these.

Comment on lines +42 to 47
local confs = {"cuda", "glew", "libpng", "libusb", "opengl", "openmp", "libpcap", "qhull", "vtk"}
for _, conf in ipairs(confs) do
if package:config(conf) then
package:add("deps", conf)
end
end
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The cuda dependency is now added without the {system = true} option, which was present in the previous version. This will prevent xmake from finding a system-installed CUDA toolkit, as the cuda package's on_fetch logic relies on this option. This is a regression.

Please handle the cuda dependency separately to include {system = true}.

        local confs = {"glew", "libpng", "libusb", "opengl", "openmp", "libpcap", "qhull", "vtk"}
        for _, conf in ipairs(confs) do
            if package:config(conf) then
                package:add("deps", conf)
            end
        end
        if package:config("cuda") then
            package:add("deps", "cuda", {system = true})
        end

@luadebug luadebug changed the title pcl: update [pcl] update to 1.15.1 Oct 12, 2025
@choyy
Copy link
Contributor Author

choyy commented Oct 13, 2025

why ssl cannot be found?

@waruqi waruqi merged commit 3b0809e into xmake-io:dev Oct 16, 2025
61 checks passed
@choyy choyy deleted the pcl branch October 16, 2025 05:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants