Skip to content
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

[morphologica] new port #43752

Open
wants to merge 16 commits into
base: master
Choose a base branch
from

Conversation

rremilian
Copy link
Contributor

@rremilian rremilian commented Feb 10, 2025

Fixes #43719

  • Changes comply with the maintainer guide.
  • The name of the port matches an existing name for this component on https://repology.org/ if possible, and/or is strongly associated with that component on search engines.
  • Optional dependencies are resolved in exactly one way. For example, if the component is built with CMake, all find_package calls are REQUIRED, are satisfied by vcpkg.json's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx.
  • The versioning scheme in vcpkg.json matches what upstream says.
  • The license declaration in vcpkg.json matches what upstream says.
  • The installed as the "copyright" file matches what upstream says.
  • The source code of the component installed comes from an authoritative source.
  • The generated "usage text" is accurate. See adding-usage for context.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Only one version is in the new port's versions file.
  • Only one version is added to each modified port's versions file.

@rremilian rremilian force-pushed the morphologica-v3.2 branch 2 times, most recently from ff34454 to 7be364a Compare February 10, 2025 19:50
@rremilian rremilian marked this pull request as draft February 10, 2025 19:51
@rremilian rremilian force-pushed the morphologica-v3.2 branch 3 times, most recently from c347b44 to 33f5c7d Compare February 10, 2025 20:41
@Mengna-Li Mengna-Li added the category:new-port The issue is requesting a new library to be added; consider making a PR! label Feb 11, 2025
@rremilian
Copy link
Contributor Author

rremilian commented Feb 11, 2025

@Mengna-Li I think the only issue on Linux is that libgbm.h is missing. On my local machine, I fixed that by installing libgbm-devel (libgbm-dev).
I saw that libgbm is part of mesa. I tried to add mesa to the manifest file, but I find that is a little bit overkill to install mesa with all the default features (including llvm) just for that (the default-features: false will not stop this).
Couldn't we insert a warning message in the portfile which will say that you need to install libgbm for this port ? Similar to this:

message(WARNING "${PORT} currently requires the following programs from the system package manager:
libgl libglu
On Debian and Ubuntu derivatives:
sudo apt-get install libgl-dev libglu1-mesa-dev
On CentOS and recent Red Hat derivatives:
yum install mesa-libGL-devel mesa-libGLU-devel
On Fedora derivatives:
sudo dnf install mesa-libGL-devel mesa-libGLU-devel
On Arch Linux and derivatives:
sudo pacman -S gl glu
On Alpine:
apk add gl glu\n")

Later Edit: And also these: libglu1-mesa-dev libxmu-dev libxi-dev

Later Edit 2: I see that libgbm is needed only for one example program. I think I can work around that.

@rremilian rremilian marked this pull request as ready for review February 11, 2025 20:10
@rremilian
Copy link
Contributor Author

rremilian commented Feb 11, 2025

@Mengna-Li I think the only issue on Linux is that libgbm.h is missing. On my local machine, I fixed that by installing libgbm-devel (libgbm-dev). I saw that libgbm is part of mesa. I tried to add mesa to the manifest file, but I find that is a little bit overkill to install mesa with all the default features (including llvm) just for that (the default-features: false will not stop this). Couldn't we insert a warning message in the portfile which will say that you need to install libgbm for this port ? Similar to this:

message(WARNING "${PORT} currently requires the following programs from the system package manager:
libgl libglu
On Debian and Ubuntu derivatives:
sudo apt-get install libgl-dev libglu1-mesa-dev
On CentOS and recent Red Hat derivatives:
yum install mesa-libGL-devel mesa-libGLU-devel
On Fedora derivatives:
sudo dnf install mesa-libGL-devel mesa-libGLU-devel
On Arch Linux and derivatives:
sudo pacman -S gl glu
On Alpine:
apk add gl glu\n")

Later Edit: And also these: libglu1-mesa-dev libxmu-dev libxi-dev

Later Edit 2: I see that libgbm is needed only for one example program. I think I can work around that.

I think I have solved this. I will check it tomorrow.
On osx everything seems good.
From what I saw on upstream, Windows is not actively supported. Disabling tests and examples helped to go past some errors related to C++20 standard. However, some functions are not defined on Windows (#ifndef WIN) and also doesn't seem to have an equivalent yet.

ports/morphologica/portfile.cmake Outdated Show resolved Hide resolved
ports/morphologica/portfile.cmake Outdated Show resolved Hide resolved
ports/morphologica/remove_number_type.patch Outdated Show resolved Hide resolved
@rremilian
Copy link
Contributor Author

A new release is on the way. We should wait for it, since we will no longer need the patches.

@rremilian rremilian requested a review from Mengna-Li February 13, 2025 18:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:new-port The issue is requesting a new library to be added; consider making a PR!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[New Port Request] morphologica
2 participants