From 9db6ebca188d9cf0b808b8fe1ce3cc51e603db97 Mon Sep 17 00:00:00 2001 From: Charlotte Koch Date: Thu, 14 Apr 2022 18:48:54 -0700 Subject: [PATCH] Import the dither library 2.2.0 as wip/go-dither dither is a library for dithering images in Go. It has many dithering algorithms built-in, and allows you to specify your own. Correctness is a top priority, as well as performance. --- Makefile | 1 + go-dither/DESCR | 6 +++ go-dither/Makefile | 18 ++++++++ go-dither/PLIST | 91 +++++++++++++++++++++++++++++++++++++++++ go-dither/buildlink3.mk | 16 ++++++++ go-dither/distinfo | 6 +++ 6 files changed, 138 insertions(+) create mode 100644 go-dither/DESCR create mode 100644 go-dither/Makefile create mode 100644 go-dither/PLIST create mode 100644 go-dither/buildlink3.mk create mode 100644 go-dither/distinfo diff --git a/Makefile b/Makefile index 2b0cc7b3563..532d726d5bd 100644 --- a/Makefile +++ b/Makefile @@ -1257,6 +1257,7 @@ SUBDIR+= go-curlie SUBDIR+= go-current SUBDIR+= go-cyclo SUBDIR+= go-discord-irc +SUBDIR+= go-dither SUBDIR+= go-dotenv SUBDIR+= go-doublejump SUBDIR+= go-douceur-aymerick diff --git a/go-dither/DESCR b/go-dither/DESCR new file mode 100644 index 00000000000..6d1f2d7aead --- /dev/null +++ b/go-dither/DESCR @@ -0,0 +1,6 @@ +dither is a library for dithering images in Go. It has many dithering +algorithms built-in, and allows you to specify your own. Correctness is a +top priority, as well as performance. It is designed to work well on its +own, but also implements interfaces from the standard library, so that it +can be integrated easily in a wide variety of situtations. It supports +images that make use of the alpha channel, AKA transparency. diff --git a/go-dither/Makefile b/go-dither/Makefile new file mode 100644 index 00000000000..436ad682220 --- /dev/null +++ b/go-dither/Makefile @@ -0,0 +1,18 @@ +# $NetBSD$ + +DISTNAME= go-dither-2.2.0 +GITHUB_PROJECT= dither +CATEGORIES= graphics +MASTER_SITES= ${MASTER_SITE_GITHUB:=makeworld-the-better-one/} +GITHUB_TAG= v${PKGVERSION_NOREV} + +MAINTAINER= dressupgeekout@gmail.com +HOMEPAGE= https://github.com/makeworld-the-better-one/dither/ +COMMENT= A fast, correct image dithering library in Go +LICENSE= mpl-2.0 + +GO_DIST_BASE= ${GITHUB_PROJECT}-${PKGVERSION_NOREV} +GO_SRCPATH= github.com/makeworld-the-better-one/dither + +.include "../../lang/go/go-package.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/go-dither/PLIST b/go-dither/PLIST new file mode 100644 index 00000000000..a5526f82216 --- /dev/null +++ b/go-dither/PLIST @@ -0,0 +1,91 @@ +@comment $NetBSD$ +bin/gif_animation +bin/gif_image +gopkg/pkg/${GO_PLATFORM}/github.com/makeworld-the-better-one/dither.a +gopkg/src/github.com/makeworld-the-better-one/dither/CHANGELOG.md +gopkg/src/github.com/makeworld-the-better-one/dither/LICENSE +gopkg/src/github.com/makeworld-the-better-one/dither/README.md +gopkg/src/github.com/makeworld-the-better-one/dither/color_spaces.go +gopkg/src/github.com/makeworld-the-better-one/dither/dither.go +gopkg/src/github.com/makeworld-the-better-one/dither/dither_test.go +gopkg/src/github.com/makeworld-the-better-one/dither/draw.go +gopkg/src/github.com/makeworld-the-better-one/dither/error_diffusers.go +gopkg/src/github.com/makeworld-the-better-one/dither/examples/gif_animation/main.go +gopkg/src/github.com/makeworld-the-better-one/dither/examples/gif_image/main.go +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_001.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_002.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_003.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_004.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_005.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_006.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_007.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_008.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_009.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_010.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_011.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_012.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_013.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_014.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_015.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_016.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_017.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_018.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_019.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/input/ball_020.png +gopkg/src/github.com/makeworld-the-better-one/dither/examples/output/gif_animation.gif +gopkg/src/github.com/makeworld-the-better-one/dither/examples/output/gif_image.gif +gopkg/src/github.com/makeworld-the-better-one/dither/go.mod +gopkg/src/github.com/makeworld-the-better-one/dither/go.sum +gopkg/src/github.com/makeworld-the-better-one/dither/images/examples/david.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/examples/floyd-steinberg_david.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/examples/floyd-steinberg_peppers.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/examples/peppers_small.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/input/dice.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/input/gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/input/peppers.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDot4x4.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDot6x6.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDot6x6_2.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDot6x6_3.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDot8x8.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotDiagonal16x16_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotDiagonal6x6.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotDiagonal8x8.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotDiagonal8x8_2.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotDiagonal8x8_3.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotHorizontalLine.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotSpiral5x5.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/ClusteredDotVerticalLine.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/Horizontal3x5.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/Vertical5x3.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/alpha_bayer.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/alpha_floyd-steinberg.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_16x16_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_16x16_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_16x16_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_16x8_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_2x2_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_4x4_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/bayer_8x8_gradient.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_atkinson.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_floyd-steinberg.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_floyd-steinberg_serpentine.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_floyd-steinberg_strength_02.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_jarvis-judice-ninke.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_atkinson_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_atkinson_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_floyd-steinberg_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_floyd-steinberg_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_jarvis-judice-ninke_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_jarvis-judice-ninke_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_simpled2d_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_peppers_simpled2d_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_simple2d.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/edm_simple2d_serpentine.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/random_noise_grayscale.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/random_noise_rgb_red-green-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/images/output/random_noise_rgb_red-green-yellow-black.png +gopkg/src/github.com/makeworld-the-better-one/dither/ordered_ditherers.go +gopkg/src/github.com/makeworld-the-better-one/dither/parallel.go +gopkg/src/github.com/makeworld-the-better-one/dither/pixelmappers.go +gopkg/src/github.com/makeworld-the-better-one/dither/special.go diff --git a/go-dither/buildlink3.mk b/go-dither/buildlink3.mk new file mode 100644 index 00000000000..ef6a532ce39 --- /dev/null +++ b/go-dither/buildlink3.mk @@ -0,0 +1,16 @@ +# $NetBSD$ + +BUILDLINK_TREE+= go-dither + +.if !defined(GO_DITHER_BUILDLINK3_MK) +GO_DITHER_BUILDLINK3_MK:= + +BUILDLINK_CONTENTS_FILTER.go-dither= ${EGREP} gopkg/ +BUILDLINK_DEPMETHOD.go-dither?= build + +BUILDLINK_API_DEPENDS.go-dither+= go-dither>=2.2.0 +BUILDLINK_PKGSRCDIR.go-dither?= ../../wip/go-dither + +.endif # GO_DITHER_BUILDLINK3_MK + +BUILDLINK_TREE+= -go-dither diff --git a/go-dither/distinfo b/go-dither/distinfo new file mode 100644 index 00000000000..a1490f6e783 --- /dev/null +++ b/go-dither/distinfo @@ -0,0 +1,6 @@ +$NetBSD$ + +SHA1 (go-dither-2.2.0.tar.gz) = 4b24df0e6a56a3f82445d7f81fbebbfc82a45d7a +RMD160 (go-dither-2.2.0.tar.gz) = 3405db3fc73be59daf563f594ec1b19b7220dca5 +SHA512 (go-dither-2.2.0.tar.gz) = 679129dd2aaca0fe63706990f6ce5b47962db17aa40975e27aa8284155e1b8f5ae3664fd2b315bc662dd839d6f9c30d2eedf458aca51aa2eef95c5b54f6701ad +Size (go-dither-2.2.0.tar.gz) = 2154942 bytes