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

Add Mangohud and its dependencies #503

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

philmmanjaro
Copy link
Contributor

@philmmanjaro philmmanjaro requested a review from a team as a code owner January 1, 2025 06:25
Copy link
Contributor

@ReillyBrogan ReillyBrogan left a comment

Choose a reason for hiding this comment

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

Please review the CI warnings/errors as well. All of these need monitoring.yaml files

summary : The OpenGL Extension Wrangler Library
description : |
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file.
license :
Copy link
Contributor

Choose a reason for hiding this comment

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

Licenses need to be in SPDX identifier format. Please check against the following website: https://spdx.org/licenses/

- pkgconfig(glu)
- pkgconfig(x11)
setup : |
%patch %(pkgdir)/glew-install.patch
Copy link
Contributor

Choose a reason for hiding this comment

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

What are these patches for? There's no comment in the header of the patches or before the patch lines indicating what exactly they are for. Are they even applicable to serpent or did you just copy them from elsewhere?

%patch %(pkgdir)/glew-install.patch
%patch %(pkgdir)/egl+glx.patch
sed -i 's|lib64|lib|' config/Makefile.linux
Copy link
Contributor

Choose a reason for hiding this comment

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

These seds should be a patch

- BSD
- GPL
builddeps :
- binary(cc)
Copy link
Contributor

Choose a reason for hiding this comment

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

You probably don't need an explicit binary(cc) dependency

mv bin/glewinfo bin/eglewinfo
install : |
%make GLEW_DEST="%(installroot)/usr" STRIP= SYSTEM=linux-egl install
install -D -m755 -t "%(installroot)/usr/bin" bin/eglewinfo bin/glxewinfo bin/visualinfo
Copy link
Contributor

Choose a reason for hiding this comment

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

- pkgconfig(xcursor)
- pkgconfig(xi)
setup : |
%cmake
Copy link
Contributor

Choose a reason for hiding this comment

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

I notice this is building the static library (the .a file) and not the shared library. You're probably missing this cmake arg: -DBUILD_SHARED_LIBS=ON

description : |
A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more.
license : MIT
toolchain : gnu
Copy link
Contributor

Choose a reason for hiding this comment

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

Why? Is there a build failure? What is it? Such information should be in the recipe as a comment.

release : 1
homepage : https://github.com/nlohmann/json
upstreams :
- git|https://github.com/nlohmann/json.git : 9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03
Copy link
Contributor

Choose a reason for hiding this comment

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

On Solus we build this with a source archive, is there some reason you need a git checkout? Source archives are strongly preferred when possible

license : MIT
setup : |
mkdir -vp build-test/
mv -v %(workdir)/../v3.1.0.tar.gz/ build-test/json_test_data/
Copy link
Contributor

Choose a reason for hiding this comment

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

Take a look at the gcc recipe. It's possible to add some extra fields to the upstream section which will cause it to extract to a directory of your choice.

%cmake
build : |
%cmake_build
ctest --test-dir %(workdir) --output-on-failure
Copy link
Contributor

Choose a reason for hiding this comment

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

Tests should be in a specific check phase. Look at the gzip recipe for an example.

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