Miniz is a lossless, high performance data compression library in a single source file that implements the zlib (RFC 1950) and Deflate (RFC 1951) compressed data format specification standards.
Usage
Make sure to add the stable section of the cppget.org repository to your project's repositories.manifest to be able to fetch this package.
:
role: prerequisite
location: https://pkg.cppget.org/1/stable
# trust: ...
If the stable section of cppget.org is not an option then add this Git repository itself instead as a prerequisite.
:
role: prerequisite
location: https://github.com/build2-packaging/miniz.git
Add the respective dependency in your project's manifest file to make the package available for import.
depends: libminiz ^ 3.0.2
The library can be imported by the following declaration in a buildfile.
import miniz = libminiz%lib{miniz}
Configuration
There are no configuration options vailable.
Issues and Notes
- Currently, we do not use the same export header as generated by the builtin
generate_export_headerfunction that is provided by CMake. So, there could be differences in symbol visibility. - The test fuzzers are only built and not executed, as they use something like
oss-fuzz. - The C++-based
miniz_testerwas considered. But as the original build system does not provide tests for this executable and compiling it fails on Windows- and MacOS-based configurations, it was removed. - The amalgamation support was considered but deemed not to be necessary and removed. Tag
v3.0.2points to a version with a valid implementation and configuration variables. Please see Issue #1 for more information.
Contributing
Thanks in advance for your help and contribution to keep this package up-to-date. For now, please, file an issue on GitHub for everything that is not described below.
Recommend Updating Version
Please, file an issue on GitHub with the new recommended version.
Update Version by Pull Request
- Fork the repository on GitHub and clone it to your local machine.
- Run
git submodule initandgit submodule updateto get the current upstream directory. - Inside the
upstreamdirectory, checkout the new library versionX.Y.Zby callinggit checkout vX.Y.Zthat you want to be packaged. - If needed, change source files,
buildfiles, and symbolic links accordingly to create a working build2 package. Make sure not to directly depend on the upstream directory inside the build system but use symbolic links instead. - Update library version in
manifestfile if it has changed or add package update by using+nfor then-th update. - Make an appropriate commit message by using imperative mood and a capital letter at the start and push the new commit to the
masterbranch. - Run
bdep ciand test for errors. - If everything works fine, make a pull request on GitHub and write down the
bdep cilink to your CI tests. - After a successful pull request, we will run the appropriate commands to publish a new package version.
Update Version Directly if You Have Permissions
- Inside the
upstreamdirectory, checkout the new library versionX.Y.Zby callinggit checkout vX.Y.Zthat you want to be packaged. - If needed, change source files,
buildfiles, and symbolic links accordingly to create a working build2 package. Make sure not to directly depend on the upstream directory inside the build system but use symbolic links instead. - Update library version in
manifestfile if it has changed or add package update by using+nfor then-th update. - Make an appropriate commit message by using imperative mood and a capital letter at the start and push the new commit to the
masterbranch. - Run
bdep ciand test for errors and warnings. - When successful, run
bdep release --tag --pushto push new tag version to repository. - Run
bdep publishto publish the package to cppget.org.
| license | MIT |
|---|---|
| project | miniz |
| url | github.com/richgel999/miniz |
| src-url | github.com/richgel999/miniz |
| richgel99@gmail.com |
1 Version
| version | 3.0.2+2 |
|---|---|
| repository | https://pkg.cppget.org/1/stable |
| depends | 0 |
| reviews | +1 |