Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Port for vcpkg #853

Open
Nosenzor opened this issue Jun 26, 2024 · 9 comments
Open

Port for vcpkg #853

Nosenzor opened this issue Jun 26, 2024 · 9 comments
Labels
enhancement New feature or request

Comments

@Nosenzor
Copy link

Hello,
I've opened an issue in the [VCPKG repo to get this nice library integrated in the packaging system that i use most often. It would be very convenient to have Manifold supported by vcpkg.
If any one feel like he can do it that would be super nice.
If noone here can do it soon, I will try to do it myself but that would be in a month or so.
PS : i'm also using manifold through the python binding, i may later open some issues we have met so far.
Regards !

@elalish
Copy link
Owner

elalish commented Jun 26, 2024

Thank you! Yes, availability in more packaging systems would be great, especially if it can be automated in our CI. We're currently working toward a v3.0 release where we are planning to significantly reduce our dependencies (e.g. removing Thrust), so it might be easier to package once that's ready. We would certainly appreciate the help since none of us are Windows users and don't have much familiarity with vcpkg.

@elalish elalish added the enhancement New feature or request label Jun 26, 2024
@pca006132
Copy link
Collaborator

It should be much simpler to port this to vcpkg now (after #857 and maybe #810). I think we only need tbb and glm, clipper2 and quickhull are optional.

@petamas
Copy link

petamas commented Aug 6, 2024

We would certainly appreciate the help since none of us are Windows users and don't have much familiarity with vcpkg.

Just wanted to mention that vcpkg is multiplatform, not tied to Windows. It is available on Windows, Mac, Linux, QNX, etc.

@petamas
Copy link

petamas commented Aug 6, 2024

I think we only need tbb and glm, clipper2 and quickhull are optional.

I think you might be mistaken, clipper2 and glm are mandatory dependencies (if find_package() cannot find them, FetchContent is used to add them), and so is quickhull (the submodule is add_subdirectory()'d unconditionally). TBB and nanobind are optional (the project does not need them with the default options).

@elalish
Copy link
Owner

elalish commented Aug 6, 2024

quickhull is on the verge of being removed entirely - that might even land this week. clipper2 is optional as you can choose to build Manifold and not CrossSection, but I'd guess we'd rather have both for vcpkg. And yes, it's great that vcpkg is cross-platform, though I think it may have a bit more adoption on Windows...

@cjmayo
Copy link
Contributor

cjmayo commented Aug 7, 2024

Don't think there is currently the choice with cmake to build Manifold without CrossSection?:

# do not add third_party installations
add_subdirectory(third_party EXCLUDE_FROM_ALL)
add_subdirectory(utilities)
add_subdirectory(collider)
add_subdirectory(cross_section)
add_subdirectory(polygon)
add_subdirectory(manifold)

@elalish
Copy link
Owner

elalish commented Aug 7, 2024

True, I don't think we've added that as an option in our CMake script itself yet - probably not a bad idea. Any interest?

@Nosenzor
Copy link
Author

Hey guys, how is this going on? It seems you did huge progress’ do you think you are ready for vcpkg support?

@pca006132
Copy link
Collaborator

yes

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants