created_at2024-03-24 14:31:13.682497
updated_at2024-04-02 16:53:56.0339
descriptionHelper package for compiling 'libpng' as a static library. Meant to be used as build dependency only.



# libpng-src Helper Cargo package for compiling [libpng]( into a static C library. Meant to be used as build dependency for dufferent `-sys` or `-vendored` packages. Does not provide directly usable **libpng** functionality or bindings. ## Provided version Compiles **libpng** with version `1.6.43`. Original source code with the license is provided in **libpng** folder without any modifications. ## Currenlly supported OS and targets Expected to work for: * Linux: `x86_64-unknown-linux-gnu`, `aarch64-unknown-linux-gnu` (no cross-compilation supported yet) * Windows: `x86_64-pc-windows-msvc`, `aarch644-pc-windows-msvc` (no cross-compilation supported yet) * macOS: `x86_64-apple-darwin`, `aarch64-apple-darwin` * iOS, including simulators (cross-compilation from macOS host): `x86_64-apple-ios`, `aarch64-apple-ios`, `aarch64-apple-ios-sim` Tested before upload for all the targets, except `aarch64-unknown-linux-gnu` and `aarch64-pc-windows-msvc`. ## Dependenencies for hosts Doesn't depend on any cargo packages for compilation. Uses CMake and **libpng** provided shell scripts. Depends on **zlib** library headers for compilation and dynamic library artifact for testing. ### Linux * CMake - install via or a package manager * make - * CC - a C compiler, added to system path * **zlib** - ## Windows * CMake - vendored by MS Visual Studio; * MS Visual Studio - * `**zlib** headers and tests helping DLL - vendored in the package Invoke Cargo via Developer Powershell or Developer Command Prompt for correct work. ### macOS and iOS * CMake - install via or [Homebrew](; * make - vendored by OS * Xcode - * **zlib**` - vendored by OS ### Testing One of the unit tests invokes CTest (part of CMake) under the hood for testing native code. ## TODO * Support cross-compilation for Android; ## Authors **Rust code and scripts:** Alexandr (Alex) Lambov , © 2024 **libpng** - see
Commit count: 9

cargo fmt