commit:     8315d328efc493b4cb5b3fcf8e917cbd70d54752
Author:     Takuya Wakazono <pastalian46 <AT> gmail <DOT> com>
AuthorDate: Thu Feb  1 10:52:00 2024 +0000
Commit:     David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Thu Feb  1 10:58:09 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8315d328

media-gfx/azpainter: add 3.0.7

Closes: https://bugs.gentoo.org/860057
Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com>

 media-gfx/azpainter/Manifest                       |  1 +
 media-gfx/azpainter/azpainter-3.0.7.ebuild         | 62 ++++++++++++++++++++++
 .../files/azpainter-3.0.7-strict-aliasing.patch    | 61 +++++++++++++++++++++
 3 files changed, 124 insertions(+)

diff --git a/media-gfx/azpainter/Manifest b/media-gfx/azpainter/Manifest
index a523d1cc6c..0e5b84ccfd 100644
--- a/media-gfx/azpainter/Manifest
+++ b/media-gfx/azpainter/Manifest
@@ -1,2 +1,3 @@
 DIST azpainter-v3.0.3.tar.gz 1260272 BLAKE2B 
b0d7e21f4a24ef27e6d4cbc639624dcc333d19f477dbf436bf72929473e07318246009d3291e56296d8f8a46d1f10d2dc1b8224f99c94dc46672f9c91827ce9f
 SHA512 
7c363127d1bb3ad9c212ec3a226b047edff0452e46d0d8de52fefaf2399d72a4e3211b2b32ea57a43a9d705ad06729543c4ab401dba672a909568b7935b67801
 DIST azpainter-v3.0.4.tar.gz 1283239 BLAKE2B 
a0632909c4b066309fd5a696b7839526f5a2a4dbf91a3c77a27ad199ea83fb09b5f711effe3c77da629e2dfffe30a0b09eda66a939affa1f52f3c73ed3ca14e1
 SHA512 
44fd259d50ef794c223e7bed9f4ccf9c5fe6b0905e521066e279b33c836d8d0090c01229b63444ea459477f2aef174d9876b1811753d0a253cef02ffe4e95af2
+DIST azpainter-v3.0.7.tar.bz2 992188 BLAKE2B 
a027ddcc424a3d3edaeae3a50e5c8bf24214f1420f1e99aaae0ddcc3ec7401a032b7aea5181e0efc7c55855deb65580d355ee2859f7603bb321b461f2cf57843
 SHA512 
bf46b4a895bb4a2abf4d88442eacee3d580ae93a07de281af4bf57397b08dcd88fa8064693e54d285e101463fc010ebec4e0d54d735e0c26a4cbdacd4ce11a0d

diff --git a/media-gfx/azpainter/azpainter-3.0.7.ebuild 
b/media-gfx/azpainter/azpainter-3.0.7.ebuild
new file mode 100644
index 0000000000..35036a1f0c
--- /dev/null
+++ b/media-gfx/azpainter/azpainter-3.0.7.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2018-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo ninja-utils toolchain-funcs xdg
+
+DESCRIPTION="Full color painting software for Linux for illustration drawing"
+HOMEPAGE="http://azsky2.html.xdomain.jp/soft/azpainter.html
+       https://gitlab.com/azelpg/azpainter";
+SRC_URI="https://gitlab.com/azelpg/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2";
+S="${WORKDIR}/${PN}-v${PV}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+       media-libs/fontconfig
+       media-libs/freetype
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng:=
+       media-libs/libwebp:=
+       media-libs/tiff:=
+       sys-libs/zlib:=
+       x11-libs/libX11
+       x11-libs/libXcursor
+       x11-libs/libXext
+       x11-libs/libXi
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       ${NINJA_DEPEND}
+       virtual/pkgconfig
+"
+
+DOCS=(
+       about_mlk_en.txt
+       about_mlk_ja.txt
+       translation/tool/about-en.txt
+       translation/tool/about-ja.txt
+)
+
+PATCHES=( "${FILESDIR}/${P}-strict-aliasing.patch" )
+
+src_prepare() {
+       sed -i "s|ar rc|$(tc-getAR) rc|" build.ninja.in || die
+       sed -i "s|doc/@PACKAGE_NAME@|doc/${PF}|" install.sh.in || die
+       default
+}
+
+src_configure() {
+       edo sh ./configure --prefix="${EPREFIX}/usr" CC="$(tc-getCC)" 
CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
+}
+
+src_compile() {
+       eninja -C build
+}
+
+src_install() {
+       DESTDIR="${D}" eninja -C build install
+}

diff --git a/media-gfx/azpainter/files/azpainter-3.0.7-strict-aliasing.patch 
b/media-gfx/azpainter/files/azpainter-3.0.7-strict-aliasing.patch
new file mode 100644
index 0000000000..44da8ac4c9
--- /dev/null
+++ b/media-gfx/azpainter/files/azpainter-3.0.7-strict-aliasing.patch
@@ -0,0 +1,61 @@
+https://bugs.gentoo.org/860057
+
+diff --git a/src/draw/draw_image.c b/src/draw/draw_image.c
+index 531101a..f225164 100644
+--- a/src/draw/draw_image.c
++++ b/src/draw/draw_image.c
+@@ -21,6 +21,8 @@ $*/
+  * AppDraw: イメージ関連
+  *****************************************/
+ 
++#include <string.h>
++
+ #include <mlk_gui.h>
+ #include <mlk_widget_def.h>
+ #include <mlk_popup_progress.h>
+@@ -798,7 +800,7 @@ mlkerr drawImage_blendImageReal_alpha(AppDraw *p,int 
dstbits,mPopupProgress *pro
+                       {
+                               //8bit は常に 8bit
+ 
+-                              *((uint32_t *)pd) = *((uint32_t *)&colres);
++                              memcpy(&pd, &colres, sizeof(uint32_t));
+ 
+                               pd += 4;
+                       }
+diff --git a/src/image/tileimage_imagefile.c b/src/image/tileimage_imagefile.c
+index e05e633..9b2d3ef 100644
+--- a/src/image/tileimage_imagefile.c
++++ b/src/image/tileimage_imagefile.c
+@@ -165,7 +165,7 @@ static void _loadimgbuf_convert_8to16(uint8_t **ppbuf,int 
width,int height,mlkbo
+                       c[2] = tbl[pd8[2]];
+                       c[3] = tbl[(ignore_alpha)? 255: pd8[3]];
+ 
+-                      *((uint64_t *)pd16) = *((uint64_t *)c);
++                      memcpy(&pd16, c, sizeof(uint64_t));
+               }
+       }
+ 
+diff --git a/src/other/colorvalue.c b/src/other/colorvalue.c
+index 74f8ebe..67a255c 100644
+--- a/src/other/colorvalue.c
++++ b/src/other/colorvalue.c
+@@ -22,6 +22,7 @@ $*/
+  *****************************************/
+ 
+ #include <stdlib.h>
++#include <string.h>
+ 
+ #include <mlk_gui.h>
+ #include <mlk_pixbuf.h>
+@@ -156,8 +157,10 @@ uint32_t RGBA16_to_32bit(const RGBA16 *p)
+ uint64_t RGB16_to_64bit_buf(const RGB16 *p)
+ {
+       uint16_t buf[4] = {p->r, p->g, p->b, 0};
++      uint64_t ret;
++      memcpy(&ret, buf, sizeof(uint64_t));
+ 
+-      return *((uint64_t *)buf);
++      return ret;
+ }
+ 
+ //-------- 32bit RGB から変換

Reply via email to