Snaipe / Criterion

A cross-platform C and C++ unit testing framework for the 21st century
MIT License
2.03k stars 181 forks source link

Packaging Criterion on various distros/OSes #321

Open Snaipe opened 4 years ago

Snaipe commented 4 years ago

This is a catch-all issue to track the inclusion of Criterion on various distributions, and any user-maintained alternatives in the meantime.

It's a major headache to maintain myself unofficial/user packages for criterion on various distros (see #249 #317 #267 #236), and while it was an interesting aspect of deployment to manage, it just isn't my job to do ultimately, and there are people with far more competency and experience to do that.

If you'd like to see Criterion included in your favorite distribution, please reach out to their package maintainers team. I can work with them to make sure that Criterion gets packaged to their standards.

distro upstream support? maintainer
Arch Linux No (AUR) @MrAnno
Debian Yes! :tada: sasa at debian dot org
Gentoo Yes! :tada: hydrapolic at gmail dot com
MacOS (brew) Yes! :tada: @MrAnno
NixOS Yes! :tada: @Thesola10 @Yumasi
Ubuntu Yes! :tada: sasa at debian dot org
FreeBSD Yes! :tada: @yurivict
openSUSE Yes! :tada: @paolostivanin
sukhchainn commented 4 years ago

Will it be available on Windows too?

Snaipe commented 4 years ago

To clarify: Windows support (or \<insert your currently supported platform here> for that matter) isn't going away on the side of Criterion. However, we'll slowly stop publishing binary archives on GitHub releases.

The rationale is that binary releases are a pain to maintain and distribute, and there is duplicate work in maintaining releases for package managers on various platforms. Instead, we will ask that users that care talk to distro maintainers, or step up and maintain a user package for their platform. This isn't too different to what is currently done for other open source packages.

To address Windows specifically, as I said above, we will no longer publish binary archives in the releases tab on GitHub, unless I convince myself that there are no viable way to distribute Criterion at all on the platform. This means that unless someone steps up and write a package for Criterion on NuGet/MSYS2/MinGW-w64, you will have to clone the repository and build from source, which shouldn't be too hard considering that we validate that builds pass on all platforms we care about.

nloomans commented 4 years ago

Criterion is also packed for Nixpkgs:

The maintainers appear to be @thesola10 and @Yumasi.

Packages distributed using Nixpkgs can be used on any Linux distro (and macOS) by installing the Nix package manager, but most people use the NixOS distro. See https://nixos.org/

MrAnno commented 2 years ago

Update for Debian/Ubuntu: A special 2.3.3git1 version is officially supported.

https://repology.org/project/criterion/versions

paolostivanin commented 1 year ago

@MrAnno good news! starting from 20230214 , Criterion is now available on openSUSE Tumbleweed :smile:

sudo zypper in libcriterion3 libcriterion3-devel

It will also be available in openSUSE Leap 15.5 (currently beta) via the Backports repository.

MrAnno commented 1 year ago

Amazing news! Thank you.

topazus commented 1 year ago

I would like to make Criterion into Fedora repository, but it seems that some dependencies need to be packaged first, like nanopb and BoxFort.