From 3fe668495e3db6a8f7609fef7b3571f5cbcb5ebe Mon Sep 17 00:00:00 2001 From: sisungo Date: Mon, 17 Aug 2026 00:13:30 +0800 Subject: [PATCH] feat: add package libpng Signed-off-by: sisungo --- packages/libpng/pkgbuild.py | 56 +++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 packages/libpng/pkgbuild.py diff --git a/packages/libpng/pkgbuild.py b/packages/libpng/pkgbuild.py new file mode 100644 index 0000000..0e9719c --- /dev/null +++ b/packages/libpng/pkgbuild.py @@ -0,0 +1,56 @@ +from lib import cpp, arch +from lib.make import * + + +version("1.6.58") +description("the official PNG reference library") +maintainer("sisungo ") +source_url("https://github.com/pnggroup/libpng/archive/refs/tags/v1.6.58.tar.gz") + +builddep("shortcut/c") +builddep("shortcut/autotools") +builddep(f"libz-ng-dev @{arch.get_target()}") + + +def build(): + cpp.configure([ + f"--libdir={get_prefix('libpng')}/lib", + f"--includedir={get_prefix('libpng')}/include", + "--enable-hardware-optimizations=on", + ]) + cpp.make() + cpp.make_install() + +on_build(build) + + +def pack_tools(composer): + composer.makedir("bin") + composer.addfile("bin/png-fix-itxt", "bin/png-fix-itxt") + composer.addfile("bin/pngfix", "bin/pngfix") + +def pack_dev(composer): + composer.makedir("lib") + composer.addfile("lib/libpng.a", "lib/libpng.a") + composer.addfile("lib/libpng.la", "lib/libpng.la") + composer.addfile("lib/libpng16.a", "lib/libpng16.a") + composer.addfile("lib/libpng16.la", "lib/libpng16.la") + composer.add_dir("lib/pkgconfig", "lib/pkgconfig") + composer.makedir("bin") + composer.addfile("bin/libpng-config", "bin/libpng-config") + composer.addfile("bin/libpng16-config", "bin/libpng16-config") + composer.add_dir("include", "include") + + +package("libpng") +dep("libz @same-arch") +cpp.use_auto_pack(["lib"]) + +package("libpng-tools") +dep("libpng (same)") +on_pack(pack_tools) + +package("libpng-dev") +dep("libpng (same)") +dep("libz-dev @same-arch") +on_pack(pack_dev)