summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-gfx/tuxpaint/Manifest1
-rw-r--r--media-gfx/tuxpaint/files/tuxpaint-0.9.31-Makefile.patch159
-rw-r--r--media-gfx/tuxpaint/tuxpaint-0.9.31.ebuild65
3 files changed, 225 insertions, 0 deletions
diff --git a/media-gfx/tuxpaint/Manifest b/media-gfx/tuxpaint/Manifest
index eb4fb24e1775..50d41b326b2a 100644
--- a/media-gfx/tuxpaint/Manifest
+++ b/media-gfx/tuxpaint/Manifest
@@ -1,2 +1,3 @@
DIST tuxpaint-0.9.28.tar.gz 14802638 BLAKE2B 7f7a8f3d61faf052d9872b5af775a6becdefae7cee1207ebcbb5db108fc381b0fa5ba8b7a8facd55ba6dcfca59886125cba7837d2de432fd5c75d2c40b509c41 SHA512 038f92f8d7ee8d85b1c9b18f7781e814ee55067e090fbfa597028e2d13218911157d00f312de2be9db29754a07c5706fc3c3e0e6ea3c71a15f80c37bb2eceb34
DIST tuxpaint-0.9.29.tar.gz 17144658 BLAKE2B db00b14862ca139b0ee2851b7f57bda0df12d09ae516649dab25eb260bfc65fef35c968ab39593a71c173f196dc24426c5d4be79eee230c7139a7832d5508171 SHA512 9642c7145d32848e663b69428d7ff046e6109b292f3c3104dc40f8fcbf4152ab39815cf7dd3a217b0a6bd26ea50c57e0b14b186a23157fbac091ee10436646b3
+DIST tuxpaint-0.9.31.tar.gz 21733142 BLAKE2B 00041eacd062ac4e535451d4b4a6ac6d92fb7a0b6328dad4c7424b1bf0b95f0d3d2915e5ed7392cbf2f36174e56ceff5fadcf795c3368b3f2a958d794ce0b66a SHA512 7a3df8dce3e354cc22af34d55546de6e033e8ed4f44530b89986c3e1a07961e5e1a132f12f2d3fc5b699c500e7b9e7ab3503d2bafc5041d9fb2dbc8d1479b79f
diff --git a/media-gfx/tuxpaint/files/tuxpaint-0.9.31-Makefile.patch b/media-gfx/tuxpaint/files/tuxpaint-0.9.31-Makefile.patch
new file mode 100644
index 000000000000..fc35fb9b0212
--- /dev/null
+++ b/media-gfx/tuxpaint/files/tuxpaint-0.9.31-Makefile.patch
@@ -0,0 +1,159 @@
+# Replace "lib" with GENTOO_LIBDIR, remove .gz suffixes and
+# replace ImageMagick calls by GraphicsMagick calls.
+--- a/Makefile
++++ b/Makefile
+@@ -111,7 +111,7 @@ ifdef HOST
+ # We set PKG_CONFIG_LIBDIR instead of PKG_CONFIG_PATH because we want to
+ # *change* where pkg-config looks for .pc files instead of adding to the
+ # default path which may have libraries that aren't for HOST.
+- export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/lib/pkgconfig
++ export PKG_CONFIG_LIBDIR:=$(HOSTROOT)/$(GENTOO_LIBDIR)/pkgconfig
+ endif
+ endif
+
+@@ -177,14 +177,14 @@ windows_ARCH_CFLAGS:=
+ macos_ARCH_CFLAGS:=-isysroot $(SDKROOT) -I$(SDKROOT)/usr/include -I$(HOSTROOT)/include -mmacosx-version-min=$(MINVER) -arch $(subst $() $(), -arch ,$(ARCHS)) -w -headerpad_max_install_names -DHAVE_STRCASESTR
+ ios_ARCH_CFLAGS:=-isysroot $(SDKROOT) -I$(SDKROOT)/usr/include -I$(HOSTROOT)/include $(MINVEROPT) -arch $(subst $() $(), -arch ,$(ARCHS)) -w -fPIC -DHAVE_STRCASESTR -DUNLINK_ONLY
+ beos_ARCH_CFLAGS:=
+-linux_ARCH_CFLAGS:=
++linux_ARCH_CFLAGS:=${CFLAGS}
+ ARCH_CFLAGS:=$($(OS)_ARCH_CFLAGS)
+
+ windows_ARCH_LDFLAGS:=
+ macos_ARCH_LDFLAGS:=-isysroot $(SDKROOT) -L$(HOSTROOT)/lib -mmacosx-version-min=$(MINVER) -arch $(subst $() $(), -arch ,$(ARCHS))
+ ios_ARCH_LDFLAGS:=-isysroot $(SDKROOT) -L$(HOSTROOT)/lib $(MINVEROPT) -arch $(subst $() $(), -arch ,$(ARCHS))
+ beos_ARCH_LDFLAGS:=
+-linux_ARCH_LDFLAGS:=
++linux_ARCH_LDFLAGS:=${LDFLAGS}
+ ARCH_LDFLAGS:=$($(OS)_ARCH_LDFLAGS)
+ LDFLAGS:=$(ARCH_LDFLAGS)
+
+@@ -213,7 +213,7 @@ ARCH_HEADERS:=$($(OS)_ARCH_HEADERS)
+ windows_PREFIX:=/usr/local
+ macos_PREFIX:=Resources
+ ios_PREFIX:=.
+-linux_PREFIX:=/usr/local
++linux_PREFIX:=${EPREFIX}/usr
+ PREFIX:=$($(OS)_PREFIX)
+
+ # Root directory to place files when creating packages.
+@@ -247,10 +247,10 @@ LIBDIR=$(PREFIX)
+
+ # Magic Tool plug-ins
+ INCLUDE_PREFIX:=$(DESTDIR)$(PREFIX)/include
+-MAGIC_PREFIX:=$(DESTDIR)$(LIBDIR)/lib$(LIBDIRSUFFIX)/tuxpaint/plugins
++MAGIC_PREFIX:=$(DESTDIR)$(LIBDIR)/$(GENTOO_LIBDIR)/tuxpaint/plugins
+
+ # Docs and man page:
+-DOC_PREFIX:=$(DESTDIR)$(PREFIX)/share/doc/tuxpaint-$(VER_VERSION)
++DOC_PREFIX:=$(DESTDIR)$(PREFIX)/share/doc/${PF}
+ MAN_PREFIX:=$(DESTDIR)$(PREFIX)/share/man
+ DEVMAN_PREFIX:=$(DESTDIR)$(PREFIX)/share/man
+
+@@ -381,7 +381,7 @@ MOUSE_CFLAGS:=-Isrc/$(MOUSEDIR) -D$(CURSOR_SHAPES)_CURSOR_SHAPES
+ # are 132x80. On larger screens, they will be bigger (since the New dialog
+ # is always 4x4 thumbnails); therefore, generating larger thumbs, which can
+ # be still be scaled down fairly quickly (esp. complicated SVG ones).
+-CONVERT_OPTS:=-alpha Background -alpha Off +depth -resize "!264x160" -background white -interlace none
++CONVERT_OPTS:=-resize 264x160 -background white -extent 0x0 -interlace none
+
+ .SUFFIXES:
+
+@@ -575,11 +575,7 @@ endif
+ windows_ARCH_INSTALL:=
+ macos_ARCH_INSTALL:=install-macbundle
+ ios_ARCH_INSTALL:=install-iosbundle
+-ifeq ($(PACKAGE_ONLY),yes)
+- linux_ARCH_INSTALL:=install-pkgxdg install-man install-importscript install-bash-completion
+-else
+- linux_ARCH_INSTALL:=install-xdg install-man install-importscript install-bash-completion
+-endif
++linux_ARCH_INSTALL:=install-man install-importscript install-bash-completion
+ ARCH_INSTALL:=$($(OS)_ARCH_INSTALL)
+
+ # "make install" installs all of the various parts
+@@ -763,12 +759,12 @@ uninstall: uninstall-i18n
+ -rm $(BIN_PREFIX)/tuxpaint-import
+ -rm -r $(DATA_PREFIX)
+ -rm -r $(DOC_PREFIX)
+- -rm $(MAN_PREFIX)/man1/tuxpaint.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tuxpaint.1.gz
+- -rm $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tuxpaint-import.1.gz
+- -rm $(MAN_PREFIX)/man1/tp-magic-config.1.gz
+- -rm $(MAN_PREFIX)/*/man1/tp-magic-config.1.gz
++ -rm $(MAN_PREFIX)/man1/tuxpaint.1
++ -rm $(MAN_PREFIX)/*/man1/tuxpaint.1
++ -rm $(MAN_PREFIX)/man1/tuxpaint-import.1
++ -rm $(MAN_PREFIX)/*/man1/tuxpaint-import.1
++ -rm $(MAN_PREFIX)/man1/tp-magic-config.1
++ -rm $(MAN_PREFIX)/*/man1/tp-magic-config.1
+ -rm -f -r $(CONFDIR)
+ -rm $(COMPLETIONDIR)/tuxpaint-completion.bash
+ -rm -r $(MAGIC_PREFIX)
+@@ -869,11 +865,11 @@ $(THUMB_STARTERS):
+ @mkdir -p starters/.thumbs
+ @if [ "x" != "x"$(STARTER_BACK_NAME) ] ; \
+ then \
+- composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png ; \
+- $(CONVERT) $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ 2> /dev/null ; \
++ gm composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png 2> /dev/null ; \
++ gm convert $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ || echo "($@ failed)" ; \
+ rm obj/tmp_$(notdir $(STARTER_NAME)).png ; \
+ else \
+- $(CONVERT) $(CONVERT_OPTS) $(STARTER_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm -f $@ ) ; \
++ gm convert $(CONVERT_OPTS) $(STARTER_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
+ fi
+
+ $(INSTALLED_THUMB_STARTERS): $(DATA_PREFIX)/%: % install-example-starters-dirs
+@@ -928,7 +924,7 @@ TEMPLATE_NAME=$(or $(wildcard $(subst templates/.thumbs,templates,$(@:-t.png=.sv
+ $(THUMB_TEMPLATES):
+ @printf "."
+ @mkdir -p templates/.thumbs
+- @$(CONVERT) $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm -f $@ ) ; \
++ @gm convert $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
+
+ $(INSTALLED_THUMB_TEMPLATES): $(DATA_PREFIX)/%: %
+ @install -D -m 644 $< $@ || ( echo "NO THUMB $<" )
+@@ -1072,9 +1068,9 @@ install-dlls:
+ @cp -R win32/etc/ $(BIN_PREFIX)
+ @echo
+ @echo "...Installing Library Modules..."
+- @mkdir -p $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
+- @cp $(MINGW_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
+- @strip -s $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll
++ @mkdir -p $(BIN_PREFIX)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders
++ @cp $(MINGW_DIR)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders
++ @strip -s $(BIN_PREFIX)/$(GENTOO_LIBDIR)/gdk-pixbuf-2.0/2.10.0/loaders/*.dll
+
+ # Install symlink:
+ .PHONY: install-haiku
+@@ -1149,24 +1145,20 @@ install-man:
+ @install -d $(MAN_PREFIX)/man1
+ @# tuxpaint.1
+ @cp man/en/tuxpaint.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tuxpaint.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint.1
+ @# tuxpaint-import.1
+ @cp man/en/tuxpaint-import.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tuxpaint-import.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint-import.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tuxpaint-import.1
+ @# tp-magic-config.1
+ @cp man/en/tp-magic-config.1 $(MAN_PREFIX)/man1/
+- @gzip -f $(MAN_PREFIX)/man1/tp-magic-config.1
+- @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tp-magic-config.1.gz
++ @chmod a+rx,g-w,o-w $(MAN_PREFIX)/man1/tp-magic-config.1
+ @echo
+ for l in `ls -d man/*.UTF-8 | cut -d '/' -f 2`; do \
+ DEST=$(MAN_PREFIX)/$$l/man1 ; \
+ echo "...Installing $$l man pages into $$DEST..." ; \
+ install -d $$DEST ; \
+ cp man/$$l/tuxpaint.1 $$DEST ; \
+- gzip -f $$DEST/tuxpaint.1 ; \
+- chmod a+rx,g-w,o-w $$DEST/tuxpaint.1.gz ; \
++ chmod a+rx,g-w,o-w $$DEST/tuxpaint.1 ; \
+ done
+ @# FIXME: The other man pages aren't localizable yet -bjk 2021.08.14
+
diff --git a/media-gfx/tuxpaint/tuxpaint-0.9.31.ebuild b/media-gfx/tuxpaint/tuxpaint-0.9.31.ebuild
new file mode 100644
index 000000000000..24afdcf2e995
--- /dev/null
+++ b/media-gfx/tuxpaint/tuxpaint-0.9.31.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature toolchain-funcs xdg
+
+DESCRIPTION="Drawing program designed for young children"
+HOMEPAGE="https://www.tuxpaint.org/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+S="${WORKDIR}"/${P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="
+ app-text/libpaper:=
+ dev-libs/fribidi
+ gnome-base/librsvg:2
+ media-gfx/libimagequant
+ >=media-libs/freetype-2:2
+ >=media-libs/libpng-1.2:0=
+ media-libs/libsdl2[X,joystick]
+ media-libs/sdl2-gfx
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-mixer
+ media-libs/sdl2-pango
+ media-libs/sdl2-ttf
+ sys-libs/zlib
+ x11-libs/cairo
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/gperf
+ media-gfx/graphicsmagick[jpeg,png,svg]
+ sys-devel/gettext
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-Makefile.patch
+)
+
+src_compile() {
+ emake CC="$(tc-getCC)" GENTOO_LIBDIR="$(get_libdir)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" GENTOO_LIBDIR="$(get_libdir)" install
+ local file size
+ for file in data/images/icon[0-9]*x[0-9]*.png; do
+ size=${file##*/icon}
+ size=${size%%x*}
+ newicon -s "${size}" "${file}" tux4kids-tuxpaint.png
+ done
+ newmenu src/tuxpaint.desktop tux4kids-tuxpaint.desktop
+ docinto /usr/share/doc/${PF}
+ dodoc docs/*.txt
+ dodoc docs/en/*.txt
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "additional graphic stamps" media-gfx/tuxpaint-stamps
+}