commit:     bf406e3fb1de393aad286153c04fed7643c35d39
Author:     Azamat H. Hackimov <azamat.hackimov <AT> gmail <DOT> com>
AuthorDate: Tue Jul 26 14:10:22 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 07:15:32 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bf406e3f

dev-games/aseprite: add 1.2.37

Closes: https://bugs.gentoo.org/861224
Signed-off-by: Azamat H. Hackimov <azamat.hackimov <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/26604
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 dev-games/aseprite/Manifest               |   1 +
 dev-games/aseprite/aseprite-1.2.37.ebuild | 208 ++++++++++++++++++++++++++++++
 2 files changed, 209 insertions(+)

diff --git a/dev-games/aseprite/Manifest b/dev-games/aseprite/Manifest
index 4d40e918a12d..845e01117739 100644
--- a/dev-games/aseprite/Manifest
+++ b/dev-games/aseprite/Manifest
@@ -1,3 +1,4 @@
 DIST Aseprite-v1.1.9-Source.zip 11746265 BLAKE2B 
fa16be059a7bb3b83705c56e7e93cbbb71676617a8d0798f0e481b09199ae069b85826615f8609acabb10a4e9a9da0857f2f99b03c2b913f26eee6d4dfdc0f0a
 SHA512 
44c5878c67e69d2510c862e8f6869d727aa47b3d23d41d4e7318eca54c6d72fc5f89e72c70c160ce6da78fa091e11eedefa74e0273dc4cea59b2fe16c8851d9e
 DIST Aseprite-v1.2.35-Source.zip 61972632 BLAKE2B 
f9e24d04a19756f65041cb9c96a4142fe5078a4f6d8b48f69e79501822ff8a5070f350cf9016e5500fec5aeb82d4d8eb2c8d8b42a73fd8bc73aecab185d002fe
 SHA512 
2577a683516adc9c601300da15e9099d6fa698fec32f4b62ce95c46412c1dd26b0538cc23996e0a1060ac4a4de47c2538124c4a01ade375f3b4efcbc99fbbdc8
+DIST Aseprite-v1.2.37-Source.zip 61977600 BLAKE2B 
f904e5f2a296fa5dae6dedb7b32d5249a8cda64e3b545057e9c033e3e428f050ee128b4f96098a655d871339a77b48d7be58fdad8edffd252d8bbd7b80d0db5f
 SHA512 
c846a6bd6f11bea18e49146cac735a165c6ab7ca63f76b3dfaf7c1f64ddc6719804bfbb340e05ecb75a171b12db9a6a0444b26782d31a84cc810b7266843b0e9
 DIST skia-m102-3338e90707323d2cd3a150276acb9f39933deee2.gh.tar.gz 53944562 
BLAKE2B 
9da3e8386cd7a18a6ee9362743bee4146c41038af8868a6f5e8a2dce468e4dc4669b488861d117da8d1bd8461b2ad47bfc300774a33a84153bca345d63a929a7
 SHA512 
9ae0032ee3861ce4958af6eb7047273d28b1faa3823576ef568e3c7faed7f49a9976540a72c3fa38234a4ae6319ac381324eff807938f9763781fd33ad67d075

diff --git a/dev-games/aseprite/aseprite-1.2.37.ebuild 
b/dev-games/aseprite/aseprite-1.2.37.ebuild
new file mode 100644
index 000000000000..aeb7901ac8ac
--- /dev/null
+++ b/dev-games/aseprite/aseprite-1.2.37.ebuild
@@ -0,0 +1,208 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake desktop ninja-utils toolchain-funcs xdg-utils
+
+SKIA_VER="m102"
+# Last commit in ${SKIA_VER} feature branch
+# Don't use skia.googlesource.com, it produces non-reproducible tarballs
+SKIA_REV="3338e90707323d2cd3a150276acb9f39933deee2"
+
+DESCRIPTION="Animated sprite editor & pixel art tool"
+HOMEPAGE="https://www.aseprite.org";
+SRC_URI="https://github.com/aseprite/aseprite/releases/download/v${PV}/Aseprite-v${PV}-Source.zip
+       https://github.com/google/skia/archive/${SKIA_REV}.tar.gz -> 
skia-${SKIA_VER}-${SKIA_REV}.gh.tar.gz"
+
+# See https://github.com/aseprite/aseprite#license
+LICENSE="Aseprite-EULA"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="kde test webp"
+RESTRICT="bindist mirror !test? ( test )"
+
+RDEPEND="
+       app-arch/libarchive:=
+       app-text/cmark:=
+       dev-cpp/json11
+       dev-libs/tinyxml
+       media-libs/freetype
+       media-libs/giflib:=
+       media-libs/harfbuzz:=
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng:=
+       net-misc/curl
+       sys-libs/zlib:=
+       virtual/opengl
+       x11-libs/libX11
+       x11-libs/libXcursor
+       x11-libs/libXi
+       x11-libs/libxcb:=
+       kde? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               kde-frameworks/kio:5
+       )
+       webp? ( media-libs/libwebp:= )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       test? ( dev-cpp/gtest )
+       app-arch/unzip
+       dev-util/gn
+       virtual/pkgconfig"
+
+DOCS=(
+       docs/ase-file-specs.md
+       docs/gpl-palette-extension.md
+       README.md
+)
+
+S="${WORKDIR}"
+
+PATCHES=(
+       "${FILESDIR}/skia-${SKIA_VER}_remove_angle2.patch"
+       "${FILESDIR}/${PN}-1.2.35_check_colorSpace.patch"
+       "${FILESDIR}/${PN}-1.2.35_shared_libarchive.patch"
+       "${FILESDIR}/${PN}-1.2.35_shared_json11.patch"
+       "${FILESDIR}/${PN}-1.2.35_shared_webp.patch"
+       "${FILESDIR}/${PN}-1.2.35_laf_fixes.patch"
+)
+
+src_prepare() {
+       cmake_src_prepare
+       # Skia: remove custom optimizations
+       sed -i -e 's:"\/\/gn\/skia\:optimize",::g' \
+               "skia-${SKIA_REV}/gn/BUILDCONFIG.gn" || die
+       # Aseprite: don't install tga bundled library
+       sed -i -e '/install/d' src/tga/CMakeLists.txt || die
+       # Aseprite: don't use bundled gtest
+       sed -i -e '/add_subdirectory(googletest)/d' \
+               laf/third_party/CMakeLists.txt || die
+       # Fix shebang in thumbnailer
+       sed -i -e 's:#!/usr/bin/sh:#!/bin/sh:' \
+               src/desktop/linux/aseprite-thumbnailer || die
+}
+
+src_configure() {
+       einfo "Skia configuration"
+       cd "${WORKDIR}/skia-${SKIA_REV}" || die
+
+       tc-export AR CC CXX
+
+       passflags() {
+               local _f _x
+               _f=( ${1} )
+               _x="[$(printf '"%s", ' "${_f[@]}")]"
+               myconf_gn+=( ${2}="${_x}" )
+       }
+
+       local myconf_gn=(
+               ar=\"${AR}\"
+               cc=\"${CC}\"
+               cxx=\"${CXX}\"
+
+               is_official_build=true
+               is_component_build=false
+               is_debug=false
+
+               skia_use_egl=false
+               skia_use_dawn=false
+               skia_use_dng_sdk=false
+               skia_use_metal=false
+               skia_use_sfntly=false
+               skia_use_wuffs=false
+
+               skia_enable_pdf=false
+               skia_enable_svg=false
+               skia_use_expat=false
+               skia_use_ffmpeg=false
+               skia_use_fontconfig=false
+               skia_use_freetype=true
+               skia_use_gl=true
+               skia_use_harfbuzz=true
+               skia_use_icu=false
+               skia_use_libjpeg_turbo_decode=true
+               skia_use_libjpeg_turbo_encode=true
+               skia_use_libpng_decode=true
+               skia_use_libpng_encode=true
+               skia_use_libwebp_decode=$(usex webp true false)
+               skia_use_libwebp_encode=$(usex webp true false)
+               skia_use_lua=false
+               skia_use_vulkan=false
+               skia_use_x11=false
+               skia_use_xps=false
+               skia_use_zlib=true
+       )
+
+       passflags "${CFLAGS}" extra_cflags_c
+       passflags "${CXXFLAGS}" extra_cflags_cc
+       passflags "${LDFLAGS}" extra_ldflags
+       myconf_gn="${myconf_gn[@]}"
+       set -- gn gen --args="${myconf_gn% }" out/Static
+       echo "$@"
+       "$@" || die
+
+       einfo "Aseprite configuration"
+       cd "${WORKDIR}" || die
+
+       local mycmakeargs=(
+               -DENABLE_CCACHE=OFF
+               -DENABLE_DESKTOP_INTEGRATION=ON
+               -DENABLE_STEAM=OFF
+               -DENABLE_TESTS="$(usex test)"
+               -DENABLE_QT_THUMBNAILER="$(usex kde)"
+               -DENABLE_UPDATER=OFF
+               -DENABLE_UI=ON
+               -DENABLE_WEBP="$(usex webp)"
+               -DLAF_WITH_EXAMPLES=OFF
+               -DLAF_WITH_TESTS="$(usex test)"
+               -DFULLSCREEN_PLATFORM=ON
+               -DSKIA_DIR="${WORKDIR}/skia-${SKIA_REV}/"
+               -DSKIA_LIBRARY_DIR="${WORKDIR}/skia-${SKIA_REV}/out/Static/"
+               
-DSKIA_LIBRARY="${WORKDIR}/skia-${SKIA_REV}/out/Static/libskia.a"
+               
-DSKSHAPER_LIBRARY="${WORKDIR}/skia-${SKIA_REV}/out/Static/libskshaper.a"
+               -DUSE_SHARED_CMARK=ON
+               -DUSE_SHARED_CURL=ON
+               -DUSE_SHARED_FREETYPE=ON
+               -DUSE_SHARED_GIFLIB=ON
+               -DUSE_SHARED_HARFBUZZ=ON
+               -DUSE_SHARED_JPEGLIB=ON
+               -DUSE_SHARED_JSON11=ON
+               -DUSE_SHARED_LIBARCHIVE=ON
+               -DUSE_SHARED_LIBPNG=ON
+               -DUSE_SHARED_PIXMAN=ON
+               -DUSE_SHARED_TINYXML=ON
+               -DUSE_SHARED_WEBP=ON
+               -DUSE_SHARED_ZLIB=ON
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       einfo "Skia compilation"
+       cd "${WORKDIR}/skia-${SKIA_REV}" || die
+       eninja -C out/Static
+
+       einfo "Aseprite compilation"
+       cd "${WORKDIR}" || die
+       cmake_src_compile
+}
+
+src_install() {
+       newicon -s 64 "${S}/data/icons/ase64.png" "${PN}.png"
+       cmake_src_install
+}
+
+pkg_postinst() {
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+       xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+       xdg_mimeinfo_database_update
+}

Reply via email to